描述
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">* 1、项目功能介绍</h3>
<hr>
<ul>
<li><strong>实时温湿度监控</strong>:通过集成的SHT40温湿度传感器,系统可以精确测量周围环境的温度和湿度。</li>
<li><strong>数据显示</strong>:采用共阴极数码管显示模块,能够直观地展示实时温湿度数据。</li>
<li><strong>供电管理</strong>:采用type C供电,实现供电的便捷性。</li>
<li><strong>唤醒功能</strong>:系统设有唤醒按钮,可随时激活温湿度监测功能。</li>
<li><strong>调试与测试接口</strong>:预留了调试和测试接口,方便开发人员进行调试和系统更新。</li>
<li><strong>小型化设计</strong>:采用紧凑的电路设计,适合桌面使用,方便用户随时查看环境参数。</li>
</ul>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">*2、项目设计</h3>
<hr>
<p style="line-height:1.8">该桌面温湿度仪项目采用STM32G030K6T6芯片作为主控,配备SHT40温湿度传感器,实现实时监测并通过共阴极数码管显示模块展示当前环境的温湿度数据。系统由5V输入电压供电,通过稳压电路提供3.3V电压,确保设备稳定运行。设计中预留调试接口,方便开发和测试,同时配有物理唤醒按钮,便于用户随时激活或关闭监测功能。该温湿度仪小巧便携,适用于家庭、办公和实验室环境,通过高精度传感器提供准确的数据,可改善生活和工作环境的舒适度。</p>
<p style="line-height:1.8"> </p>
<h3 style="line-height:1.8">*3、硬件部分</h3>
<hr>
<p style="line-height:1.8">供电部分采用简易的4叫Type C口,接入保险丝便于保护,采用常用的LM1117作为5V- 3.3V降压芯片,实现供电的稳定和低成本。</p>
<p style="line-height:1.8"><img src="//image.lceda.cn/oshwhub/2552de806d9d4b9f8c9bf09ec220db7b.png" width="522" height="348"></p>
<p style="line-height:1.8">主控电路采用STM32G030K6T6,主流超值系列Arm Cortex-M0+MCU,具有32 KB Flash存储器、8 KB RAM、64 MHz CPU、2x USART、定时器、ADC和通信接口,2-3.6V,按照项目需求,满足且不浪费的情况,采用该芯片更为合适。</p>
<p style="line-height:1.8"><img src="//image.lceda.cn/oshwhub/6c31f3b2aa3147c285dac904fa80f3ce.png" width="856" height="284"></p>
<p style="line-height:1.8">传感器模块采用由瑞士盛思锐(Sensirion)公司生产的SHT40,是一款高精度、高可靠性的温湿度传感器。该传感器能够提供高精度的温湿度测量,温度测量精度可达±0.2°C,湿度测量精度可达±1.8%RH,并通过I²C接口输出数字信号,方便与各种微控制器连接。SHT40设计小巧、低功耗,适合电池供电的应用场景,同时具备高耐久性和快速响应能力,能够在多种恶劣环境中稳定工作。</p>
<p style="line-height:1.8"><img src="//image.lceda.cn/oshwhub/2483c192fc774b39b84cb41b051d1a87.png"></p>
<p style="line-height:1.8">该项目额外添加了两个外设,按钮和LED,方便代码等调试。</p>
<p style="line-height:1.8"><img src="//image.lceda.cn/oshwhub/15df2338d31b410d8bab6eb93c85b493.png"></p>
<h3 style="line-height:1.8">*4、软件部分</h3>
<hr>
<div>
<div>
<div>
<div>
<div> </div>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<div>
<div>
<p>该代码实现了一个基于STM32G030K6T6微控制器的桌面温湿度仪,通过初始化GPIO、ADC、I2C和定时器外设,配置系统时钟,并设置数码管和LED初始状态来实现温湿度数据的读取和显示。主循环中检测按键状态,按键按下时读取温湿度数据,更新设备参数并启动定时器显示数据;在无操作时进入睡眠模式以节省功耗。代码还包括错误处理和断言失败报告机制。</p>
<p><img src="//image.lceda.cn/oshwhub/64cfec6503074a1eb5e7fc76abb1f18d.png" width="758" height="314"></p>
<p>传感器采用IIC通信协议,I2C1外设的配置与初始化,包括设置时序、地址模式等参数,并启用模拟和数字滤波器。MSP初始化部分配置了I2C1的GPIO引脚(PB8和PB9),使其处于开漏模式,并设置了相关时钟源和外设时钟。文件还包括一个读取SHT40温湿度传感器数据的函数,通过I2C通信读取温湿度数据并进行处理。</p>
<p><img src="//image.lceda.cn/oshwhub/30eff3b3142343819140aa1c950979ba.png" width="797" height="330"></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p style="line-height:1.8">TIM定时器配置和初始化了TIM14定时器,设置预分频器、计数模式和中断优先级,并在中断回调函数中实现温湿度数据的周期性显示和低功耗管理。当定时器中断触发时,更新显示温湿度数据,控制数码管显示,并在达到一定次数后进入休眠模式,关闭数码管显示,实现节能功能。</p>
<p style="line-height:1.8"><img src="//image.lceda.cn/oshwhub/ba1e33895275461597057257f999e399.png" width="1053" height="436"></p>
<p style="line-height:1.8"> </p>
<p style="line-height:1.8"> </p>
评论(0)