版本协议

Public Domain

专业版
#第九届立创电赛#温湿时间同步桌面摆件

创建时间:4个月前

92 0

描述

<h1 style="line-height:2">1、介绍</h1> <p style="line-height:2"><span style="color:#000000">参加第九届立创电赛设计,在官网基础(2*3位数码管显示温湿度)上增加ESP01S联网获取时间,加两个数码管(一共四个)显示时间。<strong>提示:</strong>优于四个数码管+移位芯片引脚数量很大,所以这次使用的STM32芯片的引脚已经全部使用完了,一个空余的引脚都没有了。</span></p> <p style="line-height:2"> </p> <p style="line-height:2"><span style="color:#2dc26b">桌面小摆件<span style="color:#000000">:使用瑞士盛思锐SHT40作为温湿度传感器,</span></span>精准采集室内外<strong>温湿度</strong>,<strong>相对湿度精度:±1.5 %RH,温度精度: ±0.1 °C ,温度测量范围:-40~125℃</strong>;实时显示时间,<strong>一键联网同步北京时间</strong>;两节5号电池(3V左右)供电;</p> <p style="line-height:2"> </p> <p style="line-height:2"><span style="color:#e67e23">小体积<span style="color:#000000">:46mm×52mm,可使用嘉立创<strong>免费</strong>打板。</span></span></p> <p style="line-height:2"> </p> <p style="line-height:2"><span style="color:#2dc26b"><span style="color:#000000"><span style="color:#3598db">学习知识<span style="color:#000000">:  使用<strong> IIC</strong>通信获取传感器数据;一键ESP8266-01S连接<strong>WiFi</strong>获取云数据;<strong>串口</strong>通信数据处理;使用移位芯片控制显示<strong>数码管</strong>;STM32<strong>RTC</strong>时钟;</span></span></span></span></p> <p style="line-height:2"> </p> <p style="line-height:2"><span style="color:#34495e">低成本设计<span style="color:#000000">:免费打板+低成本芯片+数码管显示,成本可控制在30元左右,ESP8266-01S可重复使用。</span></span></p> <p style="line-height:2"> </p> <h1 style="line-height:2">2、硬件</h1> <h2 style="line-height:2">2.1 电源部分</h2> <p style="line-height:2">简单两节5号电池供电+防反接电路,不需要任何电压转换就能工作,</p> <p style="line-height:2"><img src="//image.lceda.cn/oshwhub/ba66c490183e431898915164ae5f49a2.png" width="278" height="193"></p> <p style="line-height:2"> </p> <h2 style="line-height:2">2.2 数码管显示</h2> <div style="line-height:2"><strong>共阴极</strong>数码管;移位芯片型号:<strong>74HC595</strong>;</div> <div style="line-height:2"><span style="color:#e67e23">引脚分配</span>:三个移位芯片控制两个三位数码管。</div> <div style="line-height:2"><img src="//image.lceda.cn/oshwhub/8e56fe69d79e4db5af416ca800eac3f8.png"></div> <div style="line-height:2"> </div> <h2 style="line-height:2">2.3 STM32电路</h2> <h3 style="line-height:2">2.3.1 晶振电路</h3> <p style="line-height:2">使用32768晶振为RTC提供更精确的时间计算。</p> <p style="line-height:2"><strong>注意:PCB布局时,晶振靠近STM32芯片,晶振电容靠近晶振!!!</strong></p> <p style="line-height:2"><img src="//image.lceda.cn/oshwhub/59dc843ab8bd4444b0da3924805686f8.png"></p> <h3 style="line-height:2">2.3.2 唤醒按键</h3> <div style="line-height:2">添加一个按键(没有加硬件防抖,使用的软件消抖),端口为PB5,具体作用如下:</div> <div style="line-height:2"> </div> <div style="line-height:2">短按:更新获取温湿度</div> <div style="line-height:2">双击:改变数码管闪烁样式(默认是横杠闪烁,可切换为8字流动或其他样式,在seg.c文件里的数组sgh_value[]中添加切换,记得要在中断程序中设置shan_i的上限),如下图所示</div> <div style="line-height:2">长按:启动ESP01S联网获取实时时间,更新RTC</div> <div style="line-height:2"> </div> <div style="line-height:2">数码管闪烁样式数组图:</div> <div style="line-height:2"><img src="//image.lceda.cn/oshwhub/3892abf230e24127ab00ea0f8fa0ee5c.png" width="750" height="75"></div> <div style="line-height:2"> </div> <h3 style="line-height:2">2.3.3 LED电路</h3> <div style="line-height:2">简单LED点亮电路,用于指示状态,使用端口为PA0,低电平点亮。作用:ESP01S联网获取时间期间-亮,正常工作下/联网结束后-灭</div> <div style="line-height:2"><img src="//image.lceda.cn/oshwhub/69229848b1be43f4ba72408aa8b80512.png" width="237" height="87"></div> <div style="line-height:2"> </div> <h3 style="line-height:2">2.3.4 SWD下载电路</h3> <p style="line-height:2">使用的市面上常见的STLink下载调试</p> <p style="line-height:2"><img src="//image.lceda.cn/oshwhub/775b8035dab8437db5ce6910c8bf02b5.png" width="154" height="212"></p> <p style="line-height:2"> </p> <h3 style="line-height:2">2.4 ESP8266-01S</h3> <div style="line-height:2">型号:ESP8266-01S</div> <div style="line-height:2">串口:uart1</div> <div style="line-height:2">波特率:115200</div> <div style="line-height:2">说明:正常情况下不工作,节省功耗。每次启动重新设置参数和联网获取时间。</div> <div style="line-height:2">引脚分配:硬件没啥难度,TXD对RXD,RXD对TXD,再加一个RST重启引脚(上拉)用于软件重启芯片。</div> <div style="line-height:2">注意事项:PCB中,ESP8266下面尽量不要走线,避免影响信号。这个PCB中走了几根电源线,但是实测没有影响运行,一键联网莫得问题。</div> <div style="line-height:2"><img src="//image.lceda.cn/oshwhub/1aaa4b1da35b4e72ab0ecacf19fc9ab6.png" width="260" height="179"></div> <div style="line-height:2"> </div> <h2 style="line-height:2">2.5 SHT40温湿度电路</h2> <div style="line-height:2">注意事项:SCL和SDA引脚使用4.7k电阻<strong>上拉</strong>,模块下尽量不要走线。</div> <div style="line-height:2"> </div> <div style="line-height:2"><img src="//"></div> <h1 style="line-height:2">3、软件</h1> <p style="line-height:2">部分软件代码参考<a href="https://www.yuque.com/wldz/jlceda/ycxrhmcyxkvomgm1" target="_blank">官方项目文档</a>,关于原理、CubeMX的配置和软件编写文档写的很详细。关于新添加的功能,CubeMX文件和keil程序开放在附件,可下载查看。</p> <h2 style="line-height:2">3.1 数码管</h2> <p style="line-height:2">把官方的数码管+移位芯片在Copy一遍,就是该设计的数码管显示引脚配置了,CubeMX配置图如下:</p> <p style="line-height:2"><img src="//image.lceda.cn/oshwhub/ee008972258541b3b13ff9aa25657f52.png" width="572" height="444"></p> <h2 style="line-height:2">3.2 ESP8266-01S</h2> <p><img src="//image.lceda.cn/oshwhub/783bd1fe5dda4cc79c7cecb4b84709d6.png" width="575" height="185"></p> <p>简介:ESP-01S是一款基于ESP8266芯片的WiFi模块,ESP8266-01S,简称ESP-01s,串口通讯。该 WIFI 模块支持 STA/AP/STA+AP 工作模式,该设计使用 station模式,测试时连接手机热点,进而联网获取实时时间。ESP入门教程参考文档: <a href="https://docs.ai-thinker.com/_media/esp8266/docs/esp8266_start_guide_1_.pdf" target="_blank">esp8266_start_guide_1_.pdf (ai-thinker.com)</a></p> <p> </p> <p>第一步:拿到WiFi模块后第一件事就是刷固件(就是把编写好的文件烧录进去,这样esp-01s 就可以以烧录的固件编写的工作方式运行了),固件烧录地址和教程网上有很多案例,不难,此处不再演示。固件参考网站:<a href="https://docs.ai-thinker.com/%E5%9B%BA%E4%BB%B6%E6%B1%87%E6%80%BB" target="_blank">AT固件汇总 | 安信可科技 (ai-thinker.com)</a></p> <p>第二部:使用AT指令(AT指令是一种物联网中常用的工作指令,就像是人类的语言一样,可以让两个设备之间进行一对一的通信)尝试配置工作状态。该设计使用到的主要AT指令如下</p> <p><img src="//image.lceda.cn/oshwhub/c7a4e92a26b24ef5892c165b0b406626.png" width="483" height="220"></p> <p>第三步:联网成功后,使用“AT+CIPSEND”向网站发送数据包,以获取时间信息。</p> <p style="padding-left:40px">IP地址为:“api.k780.com”</p> <p style="padding-left:40px">端口号为:“80”</p> <p style="padding-left:40px">发送数据包格式为:"http://api.k780.com:88/?app=life.time&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json"</p> <p>第四步:根据测试成功的AT指令尝试编写对应的单片机软件</p> <p> </p> <p style="line-height:2">软件配置:CubeMX配置UART1,波特率115200,数据位7,停止位1。</p> <p style="line-height:2"><strong>程序中已添加注释,可下载代码自行查看。</strong></p> <p style="line-height:2"> </p> <h1 style="line-height:2">4、参考</h1> <ul> <li style="line-height:2">esp01s.c 文件参考网站:https://blog.csdn.net/lwb450921/article/details/128594900    </li> <li style="line-height:2">sscanf函数参考网站:https://www.cnblogs.com/polebug/p/3502565.html</li> <li style="line-height:2">官方文档:<a href="https://www.yuque.com/wldz/jlceda/ul1wcz7n5dgt6s60" target="_blank">8-综合案例 (yuque.com)</a></li> </ul>

文档

BOM

暂无

附件

附件名 下载
SHT40 - 硬件IIC.zip
无标题视频——使用Clipchamp制作 (1).mp4

成员

评论(0)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow