- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
单片机控制的智能窗帘系统软件的设计案例
目录
TOC\o1-3\h\u18920单片机控制的智能窗帘系统软件的设计案例 1
246311.1编程语言选择 1
30611.2单片机程序开发环境 1
24081.3系统主程序 2
268721.4温湿度检测模块程序 3
298921.5远程控制模块程序 4
315801.6按键电路程序 5
115951.7OLED显示屏程序 6
151741.8语音控制模块程序 7
18401.9超声波测距模块程序 8
1.1编程语言选择
整个系统的程序更为复杂,计算更为繁琐,并且采用浮点的数量更多,因此使用C语言对本系统进行编程。在STM32系列单片机中,使用C语言具有以下优点:
不要求了解与处理器有关的命令集以及有关的寄存器结构。
拥有指定变量的组合,使程序更加简单易读。
用户可以自由设定关键字和操作函数,使程序易于识别记忆。
缩短程序调试时间,使程序更容易开发利用。
为用户提供了许多标准的例程,使程序更容易二次开发。
用户可实现模块化编程后整合到新的程序中。
1.2单片机程序开发环境
本操作系统设计使用目前较为普遍的嵌入式开发环境KeiluVision5byARM编写程序,软件为用户提供简易单完整的开发环境界面,支持C/C++语言开发且编译速度极快,为使用者缩短了软件开发时间。如下图4-1所示:
图4-1KeiluVision5开发界面图
1.3系统主程序
系统的整体软件设计主要实现对温度、电压、电流信息的采集,将采集到的物理量通过STM32单片机ADC模数转换后使用OLED显示屏显示,单片机输出控制信号实现继电器及各模块数据检测的功能。软件程序主要分为语音识别控制模块编程、键盘控制程序、OLED显示屏程序、温湿度检测程序及WIFI远程控制程序等。系统主要程序流程图如图4-2所示:
图4-2系统流程图
1.4温湿度检测模块程序
本设计通过DHT11的温湿度检测模块收集环境温湿度数据,并首先进行DHT11端口的初始化,判断是否收到主控发出的指令脉冲,接收后发出检测指令,通过AO口将模拟电压信号传输至主控制部分。主控制器部分利用ADC模数转换器,将室内温湿度模拟量转换为数字量。主控制器利用室内温湿度数字量判断计算出实时室内温湿度。温湿度检测模块程序流程图如图4-3所示。
图4-3温湿度检测程序流程图
1.5远程控制模块程序
核心模块使用ESP8266WIFI模块远程通讯模块自带阿里云MQTT协议,该模块与阿里云服务器配对将室外室内温湿度信息实时上传服务器,再通过网络显示在用户手机端,同时也可以远程控制窗帘开启或关闭,以及模式选择;在使用ESP8266WIFI模块之前,首先需要用AT指令集配置网络及地址;其次要与MQTT服务器建立TCP连接,注册阿里云物联网平台,配置好属于自己的物联网设备,记住设备的三元组,将三元组定义在头文件中;通过预先设定好的标识符,依次将温度、湿度、光强等指数信息上传各项环境数据信息至阿里云物联网平台。配置阿里云云智能APP,分别配置四个开关接口,用于控制系统的窗帘的开启与关闭,实现远程控制。本设计用到的ESP8266-12FWIFI模块进行联网数据传输,根据资料了解到ESP8266是通过串口进行通讯,程序设计流程图如图4-4所示:
图4-4远程控制流程图
本设计的采用ESP8266-12F的WIFI模块是一种大众使用的WIFI无线模块,它不但体积小功能强,而且可以直接把使用者的物理装置连接到WiFi网络上,从而达到与互联网或局域网通讯,达到物互联的功用。ESP8266WIFI模块是一种物联网的WiFi芯片,其内置电路结构非常简单,且性能比较稳定,可以使用ESP8266WIFI模块直接接入WIFI或无线,配合MQTT协议可连接阿里云服务器,实现数据上传和接收,该模块有三种工作模式,通常我们利用AT指令,对其进行控制,使用ESP8266WIFI模块连接服务器时,必要前提就是需要连接WIFI无线网络。
1.6按键电路程序
在使用按键进行操作时,当按下按钮后,按键的机械触点具有弹性作用,出现机械抖动的现象,因此注意在程序上要加上去抖动的程序,防止机械抖动引起单片机与之相连的I/O口电平发生跳变,所以该系统在程序中在按键后延抖动期间加上了10ms的软件消抖动延时处理。键盘在上电后被设定为上拉模式,同时该键所在I/O口也变成了高电平,而在按下键后按时,同时该键所在I/O口也变成低电平仍然有效,通过程序扫描边可以知道相应的键值。如图4-5为按键控制程序流程图:
图4-5按键程序流程图
1.7OLED显示屏程序
本设计所使用的显示屏为0.96寸OLED显示屏,显示屏会实时显示工作的模
您可能关注的文档
- 《2×350MW热电厂电气部分设计》6200字.docx
- 《110KV变电站的电气设备的选择计算案例》3500字.docx
- 《3000吨年产量的橙汁饮料生产工厂设计》14000字.doc
- 《H水利公司的办公楼建筑和结构设计》13000字.docx
- 《安踏体育企业财务风险及控制研究》6400字.doc
- 《鞍钢集团关键人才保留方案设计》.doc
- 《鞍钢集团绩效考核优化设计研究》5700字.doc
- 《鞍钢集团企业所得税税收筹划方案设计》论文任务书.doc
- 《变速箱体的工艺分析及生产类型分析案例》890字.doc
- 《剥豆机传动系统的设计计算案例》3700字.docx
- 《德恩精工科技股份2024年财务风险控制研究》5000字.doc
- 《地铁车站结构的内力计算过程案例》3700字.docx
- 《仿蝗虫机器人的结构整体设计案例》2300字.docx
- 《废料分拣系统的硬件和软件系统设计案例》4000字.docx
- 《关于剥豆机机械运动方案的整体设计案例》2300字.docx
- 《国内外测温技术发展与研究概况文献综述》1800字.doc
- 《机械手的主要结构设计计算案例》2200字.doc
- 《基于51单片机的停车场管理系统的软件设计案例》2900字.docx
- 《基于PLC的热水控制系统的硬件设计案例》7200字.docx
- 《基于PLC的输煤控制系统硬件设计案例》2200字.docx
文档评论(0)