描述
<h2>1、项目功能介绍</h2>
<p>基于STM32做一个温湿度检测仪。</p>
<h2>2、项目属性</h2>
<p>立创2024暑期训练营-温湿度仪</p>
<h2>3、开源协议</h2>
<p>GPL3.0开源协议</p>
<h2>4、Keil安装注意事项</h2>
<p><a href="https://lceda001.feishu.cn/wiki/Tlp5wNmPii2oKekezjpcCeA7ndh" target="_blank">https://lceda001.feishu.cn/wiki/Tlp5wNmPii2oKekezjpcCeA7ndh</a></p>
<p>Keil社区版安装教程,但是是官方正版,然后我死活找不到PSN,放弃了,还是用注册机破解了。</p>
<p>注意注册机可能会被windows安全中心自动删除,说它是高危文件,把安全中心关了就行。</p>
<p><img src="//image.lceda.cn/oshwhub/66cb4511716a4887881d1d95a9c83bbd.png" alt="image-20240728231836761.png"></p>
<h2>5、下载失败解决办法</h2>
<p>Keil安装到了最新版,但是下载失败,编译没问题。</p>
<p><img src="//image.lceda.cn/oshwhub/97d9acd5009e4429a2fb3534eb3a2e31.png" alt="image-20240728232012420.png"></p>
<p>Error: Flash Download failed - "Cortex-M0+"</p>
<p><img src="//image.lceda.cn/oshwhub/fb242d4c2c7a40248eb259cf07e8da01.png" alt="2.png"></p>
<p><a href="https://blog.csdn.net/qq_43596637/article/details/122154357" target="_blank">解决办法</a>:<a href="https://blog.csdn.net/qq_43596637/article/details/122154357" target="_blank">https://blog.csdn.net/qq_43596637/article/details/122154357</a></p>
<p>本次训练营使用的SSTM32G030K6T6,就添加了一个STM32开头的内存最大的,然后就下载成功了。</p>
<p><img src="//image.lceda.cn/oshwhub/a3fdbf59684c4455a51dc44aa45dce6c.png" alt="3.png">
<strong>注意!!!</strong>
<strong>注意!!!</strong>
<strong>注意!!!</strong>
不要用梁山派的DAP下载器下载,因为梁山派的DAP是5V,而这款主控芯片电压是3V左右,会烧主控。所以我后面又买了一个DAP下载器。</p>
<h2>6、硬件部分</h2>
<p>该项目内容较为简单,因此自行增加了一个TypeC供电接口,电路原理图如下:</p>
<p><img src="//image.lceda.cn/oshwhub/79fd6ab6f37a41689ef25b81a14ab5ae.png" alt="TC.png">
TypeC采用2P触点,方便焊接。一般TypeC供电是5V,主控芯片供电是3V左右,因此还增加了一个LUO转换芯片降压到3V。为了放置TypeC供电过来电压过高,方便调试,在主控芯片供电处增加了一个滑动开关,先测试TypeC供电电压没问题再打开开关接通主控供电,防止烧板。
经过本人亲自测试,该TypeC供电可以使用,暂时没发现问题。
此外注意:
官方视频教程中温湿度传感器模块设计的时候PCB布局如下:</p>
<p><img src="//image.lceda.cn/oshwhub/1be81a952e1a4548a20788832505daef.png" alt="QQ图片20240730173650.png"></p>
<p>传感器模块引脚布局如下:</p>
<p><img src="//image.lceda.cn/oshwhub/7294fbce28624fe6a70bb77482e077f4.jpg" alt="SHT40传感器模块引脚图.jpg">
两者对照,就会发现在使用的时候传感器要反着插,就是传感器模块上面把有元器件的一面朝下,但这样可能会影响测量精度。所以在自己画板的时候,最好把SHT40模块接口顺序改一下。</p>
<h2>7、软件部分</h2>
<p><a href="https://www.yuque.com/wldz/jlceda/nhdssggs78punq4a" target="_blank">官方源码</a>:<a href="https://www.yuque.com/wldz/jlceda/nhdssggs78punq4a" target="_blank">https://www.yuque.com/wldz/jlceda/nhdssggs78punq4a</a></p>
<p><a href="https://www.bilibili.com/video/BV1Ay411B7MF/?spm_id_from=333.788&vd_source=ceb046527929a804a77b4bf652fad7de" target="_blank">官方视频教程</a>:<a href="https://www.bilibili.com/video/BV1Ay411B7MF/?spm_id_from=333.788&vd_source=ceb046527929a804a77b4bf652fad7de" target="_blank">https://www.bilibili.com/video/BV1Ay411B7MF/?spm_id_from=333.788&vd_source=ceb046527929a804a77b4bf652fad7de</a>
视频教程画质有点糊,不过也能看,视频教程很清晰,一步步跟着教程走就行。
但是目前这个代码只能一次性显示温湿度值,因为获取温湿度函数在while循环外面,如果把获取温湿度函数放在while循环里面,数码管显示很模糊,应该是刷新太快导致的,尝试过在while里面加延时,结果数码管显示更模糊了。
本人菜鸟,暂时还没找到合适的解决办法,只能手动上电的方式来刷新温湿度值。</p>
<h2>3D外壳</h2>
<p>根据板框自动生成了一个3D外壳。在按键、开关以及温湿度传感器模块(为了更好的接触空气,精确测量温湿度)出开窗,为了整体美观,把SW下载接口放在了PCB背面。整体3D效果如下:</p>
<p><img src="//image.lceda.cn/oshwhub/881fd825969f4f13aecbfcb7d968ac55.png" alt="1.png"></p>
<p><img src="//image.lceda.cn/oshwhub/5a485ce9096a474b8b8578e457d13737.png" alt="2.png"></p>
<p><img src="//image.lceda.cn/oshwhub/f076dd3a23724a6f93114131890262ff.png" alt="3.png"></p>
<p>成品图如下</p>
<p><img src="//image.lceda.cn/oshwhub/88ee5b9390a24f23ab936d55a7c5ed75.jpg" alt="完整展示.jpg"></p>
<p><img src="//image.lceda.cn/oshwhub/d6cc29de30d1403199edc56edfd4e8be.jpg" alt="3D打印缺陷.jpg">
缺陷很明显,外壳太薄了(用的立创3D外壳生成默认壁厚好像是1.5mm厚度),TypeC接口和按键的位置太靠里面了,按键不方便操作,TypeC接口插上后也很容易脱开。
解决办法:
<strong>在生成3D外壳的时候把壁厚改大点</strong>。
<strong>把PCB板子TypeC接口、按键等地方凸出来一点,延伸至3D外壳外面。</strong></p>
<h2>8、BOM清单</h2>
<p>工程自动生成。</p>
<h2>9、大赛LOGO验证</h2>
<p><img src="//image.lceda.cn/oshwhub/c15e8e4d54d549e8848b168da9b2ddba.png" alt="立创电子设计开源大赛logo(原色).png"></p>
评论(2)