参考资料:
Jelline的博客:Contiki学习目录
还有他整理的论文资料,只有一张,是对系统的还算详细的介绍,Contiki学习笔记。
一、主函数main()
int main()
{
clock_init(); //时钟初始化
process_init(); //进程初始化
process_start(&etimer_process, NULL); //启动系统进程
autostart_start(autostart_processes); //启动用户自启动进程
while(1)
{
/***函数process_run 的功能***/
if(poll_requested)
{
do_poll(); //执行完所有高优先级的进程
}
do_event(); //仅处理事件队列的一个事件
}
return 0;
}
二、PROCESS_BEGIN 函数
这里的函数大部分都有宏定义, 宏定义后面跟的是要操作的函数。
#define PROCESS_BEGIN() PT_BEGIN(process_pt)
#define PT_BEGIN(pt) { char PT_YIELD_FLAG = 1; LC_RESUME((pt)->lc)
#define LC_RESUME(s) switch(s) { case 0: //switch语言跳转到被中断的行