首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

contiki STM32移植(4)

contiki STM32移植(4)

【1】PROCESS(blink_process,"Blink");相关于函数的声明

【2】AUTOSTART_PROCESSES(&blink_process);是指该任务自动启动,也可以调用process_start函数启动任务。

AUTOSTART_PROCESSES其实也是一个宏东定义:

[cpp] view plaincopy

  • #if ! CC_NO_VA_ARGS
  • #if AUTOSTART_ENABLE
  • #define AUTOSTART_PROCESSES(...)                       \
  • struct process * const autostart_processes[]= {__VA_ARGS__, NULL}  
  • #else //AUTOSTART_ENABLE
  • #define AUTOSTART_PROCESSES(...)                       \
  • extern
    int _dummy  
  • #endif //AUTOSTART_ENABLE
  • #else
  • #error "C compiler must support __VA_ARGS__ macro"
  • #endif

要想使用它的话,还需要添加AUTOSTART_ENABLE定义。

#define AUTOSTART_ENABLE 1

      最后请大家不要忘记LED相关IO口的初始化操作。请查看前文代码。

6.实验结果

先给出contiki的IAR 工程目录和文件目录



再来一个头文件包含路径:


$PROJ_DIR$\CMSIS

$PROJ_DIR$\StdPeriph_Driver\inc

$PROJ_DIR$\User

$PROJ_DIR$\contiki-2.5\core

$PROJ_DIR$\contiki-2.5\core\sys

$PROJ_DIR$\contiki-2.5\core\lib

$PROJ_DIR$\contiki-2.5\cpu


【小技巧】

在编译文件的时候会发生一些莫名奇妙的警告,这个警告产生的原因是 linux的文件换行和window文件换行不同!

采用以下方法可以屏蔽这个警告,如下图所示:


如果移植顺利的话,就可以看到以下实验结果。



写到这里你会发现,contiki的移植还是非常简单的
继承事业,薪火相传
返回列表