无线传感网技术与应用 教学素材 项目代码(铁道企想学院).docx





《无线传感网技术与应用 教学素材 项目代码(铁道企想学院).docx》由会员分享,可在线阅读,更多相关《无线传感网技术与应用 教学素材 项目代码(铁道企想学院).docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、无线传感网技术与应用教学素材项目代码1,编写项目功能代码1)在SampleAppnit函数中初始化PLO和PL1两盏LED灯,使之熄灭,主要功能代 码实现如下斜体字部分:void SampleApp_Init( uint8 task_id )SampleApp_TaskID = task_id;这里是你需要添加的SampleApp_NwkState = DEV_INIT;SampleApp_TransID = 0;滋卜力f妙;|初始化PLO灯熄灭 Fig/熄灭PLI灯熄灭2)调用 osal_set_event(SDApp_TaskID,SDApp_SEND_MSG_EVT)函数触发 SAMPL
2、EAPP_SEND_PERIODIC_MSG_EVT系统事件,主要功能代码实现如下斜体字部分:uintl6 SampleApp_ProcessEvent( uint8 task_id, uintl6 events )(aflncomingMSGPacket_t *MSGpkt;(void)taskjd; /有意未引用的参数if ( events & SYS_EVENT_MSG )(MSGpkt =(aflncomingMSGPacket_t )osal_msg_receive( SampleApp_TaskID ); while (MSGpkt)(switch (MSGpkt-hdr.even
3、t)case ZDO_STATE_CHANGE:SampleApp_NwkState 二(devStates_t)(MSGpkt-hdr.status); if (SampleAppJwkState = DE V_ZB_COORD)osal_set_event(SampleApp_TaskIDSAMPLEAPP_SEND_PERIODIC_MSG_EVT);这里是你需要添加的break;default:break;)osal_msg_deallocate( (uint8 *)MSGpkt);MSGpkt = (afIncomingMSGPacket_t )osal_msg_receive( S
4、ampleApp_TaskID );return (events A SYS_EVENT_MSG);return 0;)3)在SampleApp_ProcessEvent系统事件处理函数中,将P1.0引脚所对应的LED灯点 亮,主要功能代码实现如下斜体字部分:uintl6 SampleApp_ProcessEvent( uint8 task_id, uintl6 events )afIncomingMSGPacket_t *MSGpkt;(void)task_id; 有意未引用的参数if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT)P1SEL &=0x
5、03;这里是你需要添加的P1DIR:pi_o=o;低电平点亮plo 灯iPl=0;低电平点亮PL1灯/ return unprocessed eventsreturn (events A SAMPLEAPP_SENDPERIODIC_MSG_EVT);)2.编写项目功能代码1)在SampleApp.c中添加头文件引用和定义函数声明。#include haljcd.h#include hal_key.h前Rd;立七亦而:市* LOCAL FUNCTIONS*/void SampleApp_HandleKeys( uint8 shift, uint8 keys );void SampleApp_M
6、essageMSGCB( afIncomingMSGPacket_t *pckt);void SampleApp_SendPeriodicMessage( void);void SampleApp_SendFlashMessage( uintl6 flashTime );void initTempSensor(void);初始化温度值float getTemperature(void);获取温度值2)在SampleAppnit函数中初始化串口通信,主要功能代码主要功能代码实现如下:void SampleApp_Init( uint8 task_id )SampleApp_TaskID = ta
7、sk_id;/xSampleApp_NwkState = DEV_INIT;这里是你需要添加的SampleApp_TransID = 0;/MTRw嬴R/MT层串口初始化函数C乐egis%,7hsR)他我d);向应用任务ID登记串口事件3)打开MT_UART.h头文件,将串口波特率修改为115200,主要功能代码实现如下:#if defined MT_UART_DEFAULT_BAUDRATE#define MT UART DEFAULT BAUDRATEAL UART 3K52001 (#endif这里是你需要修改4)打开MT_UART.h头文件,将串口流控关闭,因为串口通信只用RX和T 线
8、,主要功能代码实现如下:#if !defined( MT_UART_DEFAULT_OVERFLOW)void SampleApp_Init( uint8 task_id )(SampleApp_TaskID = task_id;SampleApp_NwkState = DEV_INIT;SampleApp_TransID = 0;MT_UartInit();/MT层串口初始化函数MT_UartRegistefTaskID(task_id);向应用任务 ID 登记串 口事件/这里是你需要添加的P1SEL &=0x03;P1DIR =0x03;初始化熄灭PL0灯Fl二l可初始化熄灭PL1灯)6)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无线传感网技术与应用 教学素材 项目代码铁道企想学院 无线 传感 技术 应用 教学 素材 项目 代码 铁道 学院

限制150内