基于uC/OS-II的视频监控终端无线网络接口设计
,没有线程(thread)的概念,只有任务(Task)。它已经提供了创建新任务的系统API调用OSTaskCreate,因此只要把 OSTaskCreate封装一下,就可以实现sys_thread_new。需要注意的是LwIP中的thread并没有mC/OS-II中优先级的概念,实现时要由用户事先为LwIP中创建的线程分配好优先级。
lib_arch中库函数的实现
LwIP协议栈中用到了8个外部函数,这些函数通常与用户使用的系统或编译器有关,因此应由用户自己实现。
LwIP的设备驱动程序接口
LwIP与PPP的程序结构简要描述如下:
#define NTHREADS 3
#define STACKSIZE( CYG NUM_HAL_STACK_SIZE_TYPICAL + 4096 )
#define NTHREADS 3
#define STACKSIZE ( CYG NUM_HAL_STACK_SIZE_TYPICAL + 4096 )
err = cyg_io_lookup( "/dev/ser1", &handle1 );
if (ENOERR == err) {
middleblink();
} else {
leftblink();
};
pppInit();
pppSetAuth(PPPAUTHTYPE_ PAP," pppuser","pppassword");
pd=pppOpen(handle1,ppp LinkStatus Callback,NULL);
void pppLinkStatusCallback (void * ctx, int errCode, void * arg) {
skipblink();
}
结语
本设计有机地结合了嵌入式终端设备和无线传输,符合嵌入式和无线网络结合的发展趋势。同时,这一接口设计也对其它视频监控系统的发展起到一定的借鉴意义。
- 在uclinux下实现拨号(04-21)
- 基于uClinux嵌入式系统的汽车黑匣子的设计(07-08)
- uClinux进程调度器的实现分析(04-13)
- 嵌入式操作系统uCLinux详解(03-19)
- 多任务操作系统Nucleus简介(04-21)
- UC/OS与uClinux的比较(04-21)