实验6—无线温度检测实验_第1页
实验6—无线温度检测实验_第2页
实验6—无线温度检测实验_第3页
实验6—无线温度检测实验_第4页
实验6—无线温度检测实验_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 实验题目 实验 6 无线温度检测实验 实验时间 2015 12 14 一 实验目的 学习TI ZStack2007协议栈内容 掌握CC2530模块数据传输的实现过程 学习协议栈中关于串口的基本设置和操作 二 实验原理及程序分析 a a 系统流程图系统流程图 协调器分立ZigBee 无线网络 终端节点自动加入该网络中 然后终端节点周期 性的采集温度数据并将其发送给协调器 协调器接收到温度数据后 通过串口将其输 出到PC机 如图3 3 1所示 2 b b 关键代码分析关键代码分析 对于协调器而言 只需要将收集到的温度数据通过串口发送到PC 机即可 对于终端 节点而言 需要周期性地采集温度数据 采集温度数据可以通过读取温度传感器的数据 得到 3 温度数据包结构设计 该数据包结构体定义如下 typedef union h uint8 TEMP 4 struct RFRXBUF unsigned char Head unsigned char value 2 unsigned char Tail BUF TEMPRETURE 使用一个共用体来表示整个数据包 里面有两个成员变量 一个是数组TEMP 该数组有 4元素 另一个是结构体 该结构体具体实现了数据包的数据头 温度数据 数据尾 结构 体所占的存储空间也是4个字节 协调器代码 include OSAL h include AF h include ZDApp h include ZDObject h include ZDProfile h include include Coordinator h include DebugTrace h if defined WIN32 include OnBoard h endif include hal led h include hal lcd h include hal key h include hal uart h const cId t GenericApp ClusterList GENERICAPP MAX CLUSTERS GENERICAPP CLUSTERID const SimpleDescriptionFormat t GenericApp SimpleDesc 4 GENERICAPP ENDPOINT GENERICAPP PROFID GENERICAPP DEVICEID GENERICAPP DEVICE VERSION GENERICAPP FLAGS GENERICAPP MAX CLUSTERS cId t GenericApp ClusterList 0 cId t NULL endPointDesc t GenericApp epDesc byte GenericApp TaskID byte GenericApp TransID unsigned char uartbuf 128 void GenericApp MessageMSGCB afIncomingMSGPacket t pckt void GenericApp SendTheMessage void static void rxCB uint8 port uint8 event static void rxCB uint8 port uint8 event HalUARTRead 0 uartbuf 16 if osal memcmp uartbuf 16 HalUARTWrite 0 uartbuf 16 void GenericApp Init byte task id halUARTCfg t uartConfig GenericApp TaskID task id GenericApp TransID 0 GenericApp epDesc endPoint GENERICAPP ENDPOINT GenericApp epDesc task id GenericApp epDesc simpleDesc SimpleDescriptionFormat t GenericApp epDesc latencyReq noLatencyReqs afRegister uartConfig configured TRUE uartConfig baudRate HAL UART BR 115200 uartConfig flowControl FALSE uartConfig callBackFunc NULL HalUARTOpen 0 UINT16 GenericApp ProcessEvent byte tadk id UINT16 events afIncomingMSGPacket t MSGpkt if events while MSGpkt switch MSGpkt hdr event case AF INCOMING MSG CMD GenericApp MessageMSGCB MSGpkt break default break osal msg deallocate uint8 MSGpkt MSGpkt afIncomingMSGPacket t osal msg receive GenericApp TaskID return events SYS EVENT MSG return 0 void GenericApp MessageMSGCB afIncomingMSGPacket t pkt unsigned char buffer 2 0 x0A 0 x0D TEMPRETURE tempreture switch pkt clusterId case GENERICAPP CLUSTERID osal memcpy HalUARTWrite 0 uint8 HalUARTWrite 0 buffer 2 break 终端节点编程 读取温度 int8 readTemp void static uint16 reference voltage static uint8 bCalibrate TRUE uint16 value int8 temp ATEST 0 x01 TR0 0 x01 ADCIF 0 ADCCON3 HAL ADC REF 115V HAL ADC DEC 256 HAL ADC CHN TEMP while ADCIF 6 ADCIF 0 value ADCL value uint16 ADCH 4 if bCalibrate reference voltage value bCalibrate FALSE temp 22 value reference voltage 4 return 22 终端节点事件处理与无线数据发送 UINT16 GenericApp ProcessEvent byte tadk id UINT16 events afIncomingMSGPacket t MSGpkt if events while MSGpkt switch MSGpkt hdr event case ZDO STATE CHANGE GenericApp NwkState devStates t MSGpkt hdr status if GenericApp NwkState DEV END DEVICE GenericApp SendTheMessage osal set event GenericApp TaskID SEND DATA EVENT default break osal msg deallocate uint8 MSGpkt MSGpkt afIncomingMSGPacket t osal msg receive GenericApp TaskID return events SYS EVENT MSG if events osal start timerEx GenericApp TaskID SEND DATA EVENT 1000 return events SEND DATA EVENT return 0 7 void GenericApp SendTheMessage void unsigned char theMessageData 10 EndDevice int8 tvalue TEMPRETURE tempreture tempreture BUF Head tvalue readTemp tempreture BUF value 0 tvalue 10 0 tempreture BUF value 1 tvalue 10 0 tempreture BUF Tail C afAddrType t my DstAddr my DstAddr addrMode afAddrMode t Addr16Bit my DstAddr endPoint GENERICAPP ENDPOINT my DstAddr addr shortAddr 0 x0000 AF DataRequest HalLedBlink HAL LED 2 0 50 500 三 实验步骤及结果 打开ZigBee2530部分 exp zigbee 无线温度检测实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论