www.pudn.com > uCOSII上实现的tcpip.rar > zarch.c
#include "include/zarch.h"
/*This is OS time function, and value is 0.01s*/
sys_time_t sys_get_time()
{
return OSTimeGet();
}
sys_sem_t sys_new_sem(u8_t value)
{
return OSSemCreate(value);
}
void sys_wait_sem(sys_sem_t sem, u16_t timeout, u8_t *err)
{
OSSemPend(sem, timeout, err);
if ( *err == OS_NO_ERR)
{
*err = 0;
}
}
u8_t sys_signal_sem(sys_sem_t sem)
{
if ( OSSemPost(sem) == OS_NO_ERR )
return 0;
else
return -1;
}
void sys_reset_sem(sys_sem_t sem, u8_t value)
{
sem->OSEventCnt = value;
return 0;
}
task_t sys_current_task(void)
{
task_t task;
sys_enter_critical();
task = OSTCBCur->OSTCBPrio;
sys_exit_critical();
return task;
}
void sys_delay(u16_t dtime)
{
OSTimeDly(dtime);
}