|
|
文件名称:blink.c测试平台:SM14Z2538DK1
源码分析:
1.头文件声明
系统api声明文件
驱动文件
2.进程
- PROCESS(blink_process, "Blink");
复制代码 3.在系统初始化的时候自动启动这个进程
- AUTOSTART_PROCESSES(&blink_process);
复制代码 4.进程实现
- PROCESS_THREAD(blink_process, ev, data)
复制代码 5.进程退出的时候执行这个进程
- PROCESS_EXITHANDLER(leds_off(LEDS_ALL););
复制代码 6.进程开始
7.定义一个事件定时器对象
8.设置事件定时器
- etimer_set(&et, CLOCK_SECOND);
复制代码 9.等待定时器事件,如果事件定时器发生,则程序往下执行
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
复制代码 10.复位定时器
11.LED全部点亮
12.等待定时器事件
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
复制代码 13.复位定时器
14.熄灭所有LED
15.整个过程使用while循环此过程,实现LED闪烁的功能
- while(1) {
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
- etimer_reset(&et);
- leds_on(LEDS_ALL);
- PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
- etimer_reset(&et);
- leds_off(LEDS_ALL);
- }
复制代码 16.进程结束
|
|