版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物联网短距离无线通信技术项目十
WiFi协议栈程序分析1.项目场景2.CC3200协议代码流程分析目录CONTENTS3.传感器应用接口分析4.项目实践项目场景项目场景
夏天的空调、冬天的暖气,总是能让你生活在冰火两重天的世界。智能家居中的环境温度的感知与智能控制是非常重要的一个领域,智能家居系统通过温湿度传感器感知环境数据,通过智能处理中心记录分析并做出相关设备联动操作。16:20
/3任务目标
某公司需研制一款基于WiFi网络的智能家居产品,这款智能家居产品能自动获取温度信息,并通过WiFi
AP将数据发送至指定的网络地址,从而实现家电的智能控制。目前该产品正处于测试阶段,为了解产品的稳定性需要对设备中的程序执行流程进行监控,以此掌握程序的动态执行过程。16:20
/4CC3200协议代码流程分析
WiFi协议具体流程图WIFI的协议栈是一个用于实现WIFI网络功能的完整系统。WIFI协议栈启动代码需要完成初始化硬件平台和软件架构所需的要的各个模块,为操作系统的运行做好准备工作,主要分为板载初始化,初始化系统时钟,初始化DMA,引脚复用配置,初始化各个硬件模块,初始化串口,启动simplelink设备,AT命令初始化,传感器初始化,连接WIFI设备,定时触发等十余部分。
WiFi协议栈-main()voidmain(){longlRetVal
=-1;//BoardInitializationBoardInit();
//板载初始化SysTickInit();
//初始化systick定时器//Initialize
the
uDMAUDMAInit();
//初始化DMA控制//Configure
the
pinmux
settings
for
the
peripherals
exercisedPinMuxConfig();
//引脚复用配置LEDInit();//LED初始化//Configuring
UARTInitTerm();//配置串口DisplayBanner(APPLICATION_NAME);
//打印应用名称InitializeAppVariables();//初始化应用}
WiFi协议栈-main()voidmain(
){lRetVal
=ConfigureSimpleLinkToDefaultState();
//配置simpleLink为默认状态(station)if(lRetVal
<0){//如果配置失败if
(DEVICE_NOT_IN_STATION_MODE
==lRetVal)LOOP_FOREVER();}
//无限循环lRetVal
=
sl_Start(0,0,0);
//启动simplelink设备if
(lRetVal
<0){//如果启动失败LOOP_FOREVER();}//无线循环ucfg_read();int
mode
=1;//0
trans,
1
at
modeint
at_ret
=0;macInit();ATCommandInit();ZXBeeInfInit();//获取网络配置#ifndef
CC3200_SerialsensorInit();//传感器初始化#endif}16:20
/7
WiFi协议栈-main()voidmain(
){while
(1){if
((IS_CONNECTED(g_ulStatus))
&&
(IS_IP_ACQUIRED(g_ulStatus)))
{if
(iSockID
<0){SocketInit();}
else
if
(at_ret
<=0){int
ret
=SocketCheck();if
(ret
>0)
{SocketRecvMessage(SockBuf,
ret);}}}
else
{static
char
s
=0;static
unsignedlong
led_tm
=0,
conn_tm=0;unsigned
longt
=UTUtilsGetSysTime();if
(t
-led_tm
>200){if
(s)LEDOff(1);else
LEDOn(1);s
=!s;16:20
/8led_tm
=t;}
WiFi协议栈-main()voidmain(
){if
(conn_tm==0||
t
-
conn_tm>60*1000){InitializeAppVariables();if
(strlen(cfg.ssid)
>0){WlanConnect();
//连接到WiFi设备}conn_tm=
t;}}if
(mode
==1){at_ret
=
at_check();}#ifndef
CC3200_SerialsensorLoop();#endif_SlNonOsMainLoopTask();}传感器应用接口分析
传感器应用接口函数函数名称函数说明sensorInit()传感器硬件初始化sensorLinkOn()节点入网成功操作函数sensorUpdate()传感器数据定时上报sensorControl()传感器/执行器控制函数sensorCheck()传感器预警监测及处理函数ZXBeeInfRecv()解析接收到的传感器控制命令函数sensorLoop()启动定时器触发事件智云框架是在应用接口和API接口上搭建起来的,通过合理调用这些接口,使WIFI项目的开发形成一套系统的开发逻辑。具体应用接口在sensor.c文件中实现,包括:传感器初始化、控制设备的操作、传感器数据的采集、报警信息的实时响应、系统参数的配置更新等,
智云传感器程序执行流程智云框架下WIFI无线节点示例程序基于WIFI协议栈框架开发,
智云传感器程序执行流程智云框架下BLE无线节点示例程序基于BLE协议栈框架开发项目实践项目实践
硬件功能设计16:20
/12项目实践
软件逻辑设计16:20
/13项目实践
软件逻辑设计16:20
/14项目实践
程序通信协议数据方向协议格式说明上行(节点往应用发送数据)temperature=XX表示采集的温度值X为0表示关闭继电器,1表示开启继电器。下行(应用往节点发送指令)cmd=X16:20
/15项目实践
传感器初始化温度传感器初始化代码如下:void
sensorInit(void){DebugMsg("sensor->sensorInit():
Sensor
init!\r\n");//温度传感器初始化//初始化继电器代码relay_init();}//
继电器初始化16:20
/16项目实践
传感器主动上报传感器数据void
sensorUpdate(void){char
pData[32];char
*p
=
pData;//温度采集(0~40随机数)temperature
=(uint16)(rand()%40);//更新温度的值sprintf(p,
"temperature=%.1f",
temperature);sendMessage(p,strlen(p));DebugMsg("sensor->sensorUpdate():
temperature=%.1f\r\n",
temperature);}16:20
/17项目实践
循环定时触发void
sensorLoop(void){static
unsignedlong
ct_update
=0;if
(t4exp(ct_update))
{sensorUpdate();ct_u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026浙江舟山市嵊泗县人民医院引进紧缺医学人才1人笔试题库(典优)附答案详解
- Unit 1 Making friends PartB (课件+素材)-2025-2026学年人教PEP版(2024)英语三年级上册-中考备考真题
- 数字经济智能网联汽车
- 萍乡中考语文试题及答案
- 南京九中高三试题及答案
- 心理学选择测试题及答案
- 2026云南保山市隆阳区文学艺术界联合会公益性岗位工作人员招聘1人模拟试卷【夺冠系列】附答案详解
- 2026安徽中烟再造烟叶科技有限责任公司招聘7人备考题库含答案详解【达标题】
- 智慧城市智慧社区智慧交通基建
- 绿色能源碳中和储能技术研究
- T-DXJSXH 0003-2023 装配整体式混凝土剪力墙结构工程施工及质量验收标准
- 班主任德育工作:班主任培训ppt课件(新)
- 单句与复句区别之超详解
- 新版钢结构吊装专项方案
- 220海缆监理细则
- 英语感叹句用法及练习题
- 各校神外考博试题整理版
- 卡式16种人格因素测验试题+详细评分标准详
- 胸腔闭式引流 课件
- 专家花篮拉杆悬挑脚手架专项施工方案
- 机械原理课程设计说明书
评论
0/150
提交评论