|
本帖最后由 zzuzpb 于 2016-8-17 21:59 编辑
【为什么要移植IAR】
通过移植Contiki到IAR环境,可以很清晰的查看contiki操作系统的细节,同时IAR开发环境支持CC2650在线仿真,这对于WSN网络是十分有用的。
【开发环境】 window IAR for ARM 7.4
【Contiki】
【移植】
在contiki for IAR的移植分以下两步:
一,首先新建工程 CC2650,然后按照contiki的文件框架添加文件夹包含源文件以及头文件,基本框架如图所示:
二,IAR和GCC的编译方式不同,这样需要利用makefile文件进行相应的头文件包含。
设置相应的宏配置
【关于细节】
1,在contiki中并没有放入cc26xx的函数库,需要在官网上下载CC26xxWare
2,编译提示time.c文件重名,因为很不巧,CC26xxWare中time.c和contiki中的sys/time.c源文件重名,这里我把CC26xxWare中的文件改成了TI_timer.c
- ....\cpu\cc26xx-cc13xx\lib\cc26xxware\driverlib\TI_timer.c
复制代码 3,还是重名,不过比较隐蔽,提示
- Error[Pe020]: identifier "BUTTON_SENSOR_VALUE_STATE" is undefined F:\CC2650\contiki-CC2650\examples\cc26xx\cc26xx-demo.c 402
复制代码 在cc26xx-demo.c中明明包含
- #include "button-sensor.h"
复制代码 这是因为编译器比较笨,在工程中有两个button-sensor.h文件,系统自带有一个,cc26xx platforms也有一个,在头文件中偏偏又同样的设置。
可以修改一个进行区分
- #ifndef _BUTTON_SENSOR_H_
- #define _BUTTON_SENSOR_H_
复制代码 编译后占用资源
- 66 867 bytes of readonly code memory
- 2 350 bytes of readonly data memory
- 13 840 bytes of readwrite data memory
- Flash=2 350+ 66 867=68KB
- RAM=13 840=14KB
复制代码
|
|