这一部分对contiki系统的core/sys目录下的部分文件进行了分析概括,涉及到回调函数计时器以及事件计时器的概述,具体分析如下:
etimer.c /etimer.h
一个事件计时器:凡设置etimer的进程会在超时的时刻向此进程抛出超时事件;具体的API函数详见头文件,很简单不在此赘述;
ctimer.c /ctimer.h
一个回调函数计时器:凡设置ctimer的进程会在超时时刻执行用户设置的超时回调函数;具体API函数详见头文件,不再此赘述;
clock.h
clock是在contiki与相应平台之间的一个对“一秒时间为多少个时钟滴答”定义的头文件,配合相应平台下的clock.c来使用;
1. CLOCK_SECOND To convert seconds into the tick resolution of the platform.
2.
compower.c / compower.h
一个用来统计节点通信能量消耗的模块。它统计本节点的两个方面的数据,
空闲监听时间
与
发送数据时间
,从而得到能量消耗情况。
1.void
compower_attrconv(struct compower_activity *e) : 将统计的数据添加到MAC层的数据帧的特征值里,可供向其他节点发送本节点的能耗情况
2.void
compower_accumulate_attrs(struct compower_activity *e) : 将接收到的含能耗特征的数据帧的能耗情况提取出来,并与本节点的能耗相加。如此可提供向最终节点反应整个网络能耗情况的能力。