第一范文网 - 专业文章范例文档资料分享平台

实验4:基于IAR的Contiki系统在CC2530下的移植 (5)

来源:用户分享 时间:2020-04-15 本文由核能气质少年 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

www.iotdev.net -专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛

图 2.6 编译结果输出

图 2.7 屏蔽编译警告

2.7 应用程序模板建立

?

includes.h 文件修改

?

建立一个应用程序模板,测试移植结果。首先,includes.h 文件内容如程序

清单 2.6 所示。

IOTDev.net 物联网开发论坛编制

20

www.iotdev.net -专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛

程序清单 2.6 includes.h 文件内容

#ifndef __INCLUDES_H__ #define __INCLUDES_H__ #ifdef __cplusplus extern \{ #endif /***************************************************************************** Standard header files 标准头文件 *****************************************************************************/ #include #include #include #include /***************************************************************************** 操作系统头文件 *****************************************************************************/ #include \#include \ /***************************************************************************** 处理器相关头文件 *****************************************************************************/ #include \ /**************************************************************************** User's header files 用户头文件

****************************************************************************/ #include \??Main.c 测试例程?

在 Main.c 里面建立应测试例程,实现两个 LED 灯的交叉闪烁,具体实现代

码如程序清单 2.7 所示。本节不讲解 Contiki 的具体编程方法,用户可以将

其作为一个例程来运行就行了。

程序清单 2.7 测试例程代码

IOTDev.net 物联网开发论坛编制

21

www.iotdev.net -专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛

#include

/***************************************************************************** ** 全局变量定义

*****************************************************************************/

unsigned int idle_count = 0;

/***************************************************************************** ** 内部函数声明

*****************************************************************************/

//定义控制灯的端口 #define BLED P1_0 //蓝色 LED1 为 P10 #define RLED P1_1 //红色 LED2 为 P11 void led_init() { P1DIR |= 0x03; //P10、P11 定义为输出 RLED = 1; BLED = 1; } PROCESS(led_process, \PROCESS(led_process2, \AUTOSTART_PROCESSES(&led_process,&led_process2); PROCESS_THREAD(led_process, ev, data) { PROCESS_BEGIN(); while(1) { static struct etimer et; etimer_set(&et, CLOCK_SECOND); PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et)); //打开 LED RLED = !RLED; } PROCESS_END(); // LED1 灯闪一次 } PROCESS_THREAD(led_process2, ev, data) { IOTDev.net 物联网开发论坛编制

22

www.iotdev.net -专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛

PROCESS_BEGIN(); while(1)

{

static struct etimer et; etimer_set(&et, CLOCK_SECOND);

PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et)); //打开 LED BLED = !BLED; }

PROCESS_END(); // LED1 灯闪一次

} /***************************************************************************** ** Function name: main ** Descriptions:主函数的模板,一般不要随意更改 ** input parameters:无 ** output parameters: 无 ** Returned value: 0 *****************************************************************************/ int main (void) { // 该函数必须被首先调用,它决定了系统时钟以及系统的工作模式 sys_init(); //dbg_setup_uart(); led_init(); //device_init(); //printf(\ // 系统 tick 初始化 clock_init(); process_init(); process_start(&etimer_process, NULL); autostart_start(autostart_processes); //printf(\while(1) { do { } while(process_run() > 0); idle_count++; IOTDev.net 物联网开发论坛编制

23

www.iotdev.net -专业的物联网|Contiki 6Lowpan|Zigbee|RFID|M2M|无线传感器网络开发论坛

/* Idle! */ /* Stop processor clock */ /* asm(\} //return 0; } 3 网络协议栈移植

待续。

作者:www.iotdev.net 论坛任海波 编辑:www.iotdev.net 论坛文档组 日期: 2012-7-22

IOTDev.net 物联网开发论坛编制

24

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新教育文库实验4:基于IAR的Contiki系统在CC2530下的移植 (5)全文阅读和word下载服务。

实验4:基于IAR的Contiki系统在CC2530下的移植 (5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/934437.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top