这部分对contiki的core/dev目录下的两个文件模块进行了分析与总结,简单介绍了radio及serial-line的功能及使用要点,希望对使用contiki的人有所帮助,内容如下:
radio.h
定义了radio驱动 API的接口形式以及radio返回的状态值,具体实现还要根据相应的硬件平台去实现相应的
radio.c
serial-line.c / serial-line.h
定义了一个串口输入的进程。这个进程在系统初始化阶段进行初始化。
1. 在platform / cc2530dk / contiki-main.c 中有两种串口初始化方式:一种是作为SLIP来启动的,另一种只是作为普通的串口读写方式来初始化。
2. 其中普通串口初始化经过两步:
(1) io_arch_set_input(serial_line_input_byte);
io_arch_set_input是一个宏函数,宏函数预编译成uart0_set_input(f)(或uart1),uart0_set_input(f)定义于uart-intr.c(uart中断函数的源文件)中。它用来为中断函数指定串口输入进程的写函数,例如指定为
serial-line.h
的serial_line_input_byte(unsigned char c)函数;
(2)serial_line_init();
初始化串口输入进程,此函数对串口输入进程分配输入缓存,以及启动串口输入进程;
3. 此串口进程的输入以换行符结束,也就是说,在使用这个函数进行输入操作时,必须以回车结束。