物联网课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《物联网技术》
课程设计说明书
题目:物联网终端自制板的优化
院(系):信息科学与工程学院
专业班级:电子科学与技术
学生姓名:
学号:
指导教师:
20 14 年 11 月 24 日至20 14 年 12 月 5 日
华中科技大学武昌分校制
物联网技术课程设计任务书
目录
1 总体设计……………………………………………………………………………页码1.1 ××××××××……………………………………………………………………页码
1.2 ××××××××……………………………………………………………………页码
2 硬件设计…………………………………………………………………………………页码2.1 ××××××××……………………………………………………………………页码
2.2 ××××××××……………………………………………………………………页码
3 软件设计…………………………………………………………………………………页码3.1 ××××××××……………………………………………………………………页码
3.2 ××××××××……………………………………………………………………页码
4 系统测试…………………………………………………………………………………页码总结…………………………………………………………………………………页码
1 总体设计
1.1 总体设计思路
本系统采用网蜂Zigbee核心版为通讯手段,将各个传感器有机制地链接在一起,
实现传感器可控的数据采集,数据的采集后发送到远程终端,而后以串口通讯为手段与目标机实现系统的融合,从而在目标机上形象而直观地实现数据的显示和系统的结构形态框图,以及历史数据的存储,利于对各个节点以及整个系统所在环境的调查与
分析。
1.2
2 终端硬件设计2.1 altium线路图
2.1.1 Zigbee核心板
2.1.2 光照度传感器
2.1.3 温湿度传感器
2.1.4 烟雾传感器2.1.5 热释电传感器2.1.6 LCD12864
3 软件设计
3.1 修改后的应用END2.c
void END_SendOnceNews(uint8* data);
void END_GetNumberMessage(uint8 *num); //显示编号函数void Delayms(uint xms); //i=xms 即延时i毫秒
void GenericApp_SendTheMessage(void); //发送本节点1的网络号
void GenericApp_SendTheMessagedenity(void);
void xiachuancanshu(afIncomingMSGPacket_t *pkt);
void END_SendOnceMessage(uint8 data);
void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
{
uint8 temp;
uint8 *str,msg[8]={0};
int i,j,k;
uint16 Time=0;
uint8 backcmd=0;
//uint8 *str=pkt->cmd.Data;
//HalLedBlink( HAL_LED_1, 2,50, 500 );
switch ( pkt->clusterId )
{
case COOR_TO_ONE:
END_GetNumberMessage(pkt->cmd.Data);
temp=*(pkt->cmd.Data);
osal_nv_write(END_NV_ID,0,1,&temp);
break;
case COOR_Keys_CLUSTERID:
break;
case SAMPLEAPP_COM_CLUSTERID:
break;
case SAMPLEAPP_CLUSTERID:
break;
case HUOQUJIEDIANDATA:
END_SendPointToPointMessage();
//HalLedBlink( HAL_LED_4, 2,50, 500 );
break;
case XIACHUANCANSHU:
//HalLedBlink( HAL_LED_4, 2,50, 500 );
str=pkt->cmd.Data;
j=*str;
for(i=0;i { msg[i]=str[i+2]; HalUARTWrite(0,msg+i,1 ); } for(k=0;k { Time=Time*10; Time+=(int)(msg[k]-0x30); } TIMEOUT=Time; //HalUARTWrite(0,(uint8 *)&TIMEOUT,sizeof(TIMEOUT)); osal_nv_write(END_NV_TIME,0,4,&TIMEOUT); //xiachuancanshu(str); break; case CONTROLNODE: