- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于IAR的Contiki系统在STM32上的移植
-专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛
基于IAR 的Contiki 系统在STM32 上的移植
摘要
本文对 Contiki 操作系统进行简介和概述,说明了移植前的准备工作,对并
Contiki 源代码移植相关代码进行分析,指出关键点。然后给出了移植的具体代
码实现,并建立IAR 工程项目,给出工程代码结构和参数配置,最后编写一个测
试程序,对移植后的代码进行测试,通过串口打印信息。
1. Contiki 操作系统简介
“Contiki 是一个小型的,开源的,极易移植的多任务操作系统。它专门设
计以适用于一系列的内存优先的网络系统,包括从8 位电脑到微型控制器的嵌入
系统。它的名字来自于托尔·海尔达尔的康提基号。Contiki 只需几kilobyte 的代
码和几百字节的内存就能提供多任务环境和内建TCP/IP 支持。”来自维基百科。
(认真读才发现维基百科说的不是人话)
从这段介绍中可以得知 contiki 操作系统的三大特点——小型、开源、极易
移植。和绝大多数开源的嵌入式操作系统不同,例如uCOS 和FreeRTOS ,contiki
非常容易移植,使用事件驱动机制(先这么理解吧),运行时占用的内存很小。
虽然国内关于contiki 的资料非常少,但是通过阅读contiki 的例子和文档,
还是可以很容易的完成移植工作。
IOTD 物联网开发论坛编制
1
-专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛
2. 移植前的准备工作
首先建立一个最简单的工程。一个最简单的任务莫过于LED 闪烁了,从学
习51 单片机开始,到AVR,到ARM,从移植uCOS 到移植contiki。LED 闪
烁无疑是最棒的任务。假设这个任务就是 LED 点亮 1 秒,然后让 LED 熄灭 1
秒。
Contiki 的采用事件驱动机制,那么如何才能够产生 “事件 “呢。答案只有
两个,第一,通过时钟定时,定时事件到就产生一个事件;第二,通过某种中断,
某个中断发生,就产生某个事件例如外部中断。那么移植contiki 到底要做哪些
工作呢。先来回顾一下 uCOS 在 STM32 移植,uCOS 的移植也就是做了两件
事情,第一,在 PendSV 这个异常中断中,保存上下文;第二,使用 systick
提供系统时钟。由于contiki 是非抢占的操作系统,所以移植时并不需要PendSV
中保存上下文。那么剩下的时钟一定是需要的,移植contiki 的移植重点就应该
在 systick 上。(我个人觉得,如果有时间有精力的话,应该多学点东西,可以
触类旁通。)
我个人的习惯,先上全部的代码,给大家一个整体的印象。
#include stm32f10x.h
#include stdint.h
#include stdio.h
#include debug-uart.h
#include clock.h
#include sys/process.h
#include sys/procinit.h
#include etimer.h
#include sys/autostart.h
unsigned int idle_count = 0;
void led_init();
IOTD 物联网开发论坛编制
2
-专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛
PROCESS(blink_process, Blink);
AUTOSTART_PROCESSES(blink_process);
PROCESS_THREAD(blink_process, ev, data)
{
PROCESS_BEGIN();
while(1)
{
您可能关注的文档
- 吸入麻醉临床操作规范——快捷指南.doc
- 粉末状药品的干燥.doc
- 高二化学选修四期末试卷.doc
- 韩国药典-10 Index.doc
- 浮点转定点方法总结.doc
- 案例:收入对需求的影响.doc
- 2000版中国药典附录(二部).doc
- 高一化学自拟卷.doc
- 内电解法处理含聚合物采油污水实验研究.pdf
- 南昌大学2013年635分析化学考研真题.pdf
- 水厂运维合同范例.docx
- 包装盒印刷厂合同模板.docx
- 2024-2025学年初中信息技术(信息科技)九年级全册(2013)浙教版(2013)教学设计合集.docx
- 2024-2025学年初中信息技术(信息科技)第4册泰山版(2018)教学设计合集.docx
- 吉林省劳动合同范例.docx
- 内蒙古赤峰林东第一中学2025年高三下学期返校第一次联考(语文试题理)试卷含解析.doc
- 2024-2025学年初中信息技术(信息科技)九年级上册沪科版教学设计合集.docx
- 租赁衣服合同模板.docx
- 河北串串香加盟合同模板.docx
- 内蒙古赤峰市、呼和浩特市2024-2025学年高三下学期3月10日周中测英语试题试卷含解析.doc
文档评论(0)