
#第九届立创电赛#桌面温湿度仪
简介
基于STM32G030K6T6的桌面温湿度仪
简介:基于STM32G030K6T6的桌面温湿度仪开源协议
:Public Domain
描述
描述
1、项目功能介绍
本次训练营的桌面温湿度仪项目使用STM32G030K6T6芯片作为主控芯片,这款芯片使用的是Arm Cortex-M0+内核;最大主频64Mhz。
具有32KB的Flash以及8K的SRAM,供电电压在2.0V~3.6V之间。
使用这款芯片可以通过STM32CubeMX软件进行基础代码生成与配置,图形化的方式可以快速上手使用芯片,对我这种新手小白非常友好。
此次的温湿度检测仪可以实现高精度的温湿度检测,采用低功耗的模式运行,节能省电。
2、硬件部分:
2-1整体原理图设计:
项目整体原理图
2-2主控电路:
主控MCU部分电路
主控MCU的供电通过L1的磁珠和C2的电容,达到滤波的目的,使MCU获得干净的电源,主控的外围引脚连接按照产品手册中的引脚定义进行使用,这里需要注意的是有专门功能的引脚要专门使用其功能,列如传感器的接入要使用I方C的功能,就要用带有I方C的功能引脚。这样可以方便后期的引脚使用。
2-3晶振电路:
晶振电路
使用32.768KHz的时钟晶振来给RTC提供计时,可以使温湿度检测仪有计时功能,方便后期的功能拓展。
2-4温湿度传感器电路:
温湿度传感器模块电路
本次项目的核心部件,使用SHT40温湿度传感器模块,SHT40是盛思锐生产的第四代,高精度,超低功耗的16位相对湿度和温度传感器,主要特性参数:相对湿度精度可以达到:±1.5%RH,温度精度可以达到:±0.1℃,平均的工作电流:0.4μA,空闲电流:80nA,工作范围:0-100%RH,-40-125℃,可以满足日常的温湿度测量需求。
SHT40温湿度模块
因为SHT40非常小,焊接难度很高,所以这里直接使用的本次大赛专供的SHT40模块,方便使用,这里需要特别注意的一点就是,SHT40温湿度模块的引脚和插座是要对应插上的,如果插反了的话,轻则影响温湿度模块的测量,重则烧毁模块!
2-5三态输出 8 位移位寄存器电路:
寄存器电路
为了点亮多个数码管这边选用了SN74HC595PWR寄存器来连接数码管进行显示,通过MCU的单个引脚就能实现对LED数码管的多个LED进行控制。这里需要注意的是,在后期焊接的时候如果数码管显示不全,或者显示有问题,那么大概率就是寄存器的引脚连锡或者没焊接好的问题,需要重新焊接并检查引脚焊接情况。
2-6唤醒按键电路:
唤醒按键电路
为了实现温湿度检测仪的低功耗,节能省电的长时间运行,使用专门的唤醒按键对其进行唤醒,这样可以在需要温湿度显示的时候唤醒,让其显示温湿度,在不需要的时候可以进入低功耗的待机状态。这里需要注意的是按键在布局的时候要放置在靠近板框边缘,这样方便按键的使用。
2-7测试LED电路:
测试LED电路
为了方便后期软件的调试,使用两颗LED来进行软件部分的代码调试使用测试。
2-8数码管电路:
数码管电路
数码管这边使用了两个0.28寸共阴极3位数码管,来分别显示温度和湿度,数码管LED的颜色有很多,可以根据自己的喜好选择。
2-9电池电量测量电路:
电池测量电路
通过对电池电压的采集,来测量电池的电压,可以为后期显示电量提供拓展功能,不过在电量测量的时候需要给MCU提供一个基准电压来供其比较测量电量,这边没有标准的基准来供其比较,所以电量的测量比较不准。如果需要准确的电量测量可以考虑更换自带基准电压ADC测量的MCU。
2-10电池电路:
电池电路
电池供电部分使用两节7号电池为整体系统供电,为了防止电池反接烧坏IO口,这边使用WST3401来实现防反接保护,保护芯片的IO口。
2-11调试接口:
调试下载接口
这边通过外接SWD下载调试接口实现对整体项目的软件调试部分。这里需要注意的是,为了方便后期外壳的安装,这个1X4p的排针可以不用焊接,用烧录器夹持下载烧录代码。
4、软件部分
代码直接使用的陈工的历程,只对其中的按键按键唤醒进行了修改。
代码具体修改部分:
为了使温度和湿度的数值同时显示在数码管上,我们需要调整中断服务例程中的逻辑,以便每次中断都更新温度和湿度的显示,而不是交替显示。
在这个版本中,我做了以下更改:
- 移除了updata_flag用于切换温度和湿度显示的条件判断,而是每次中断服务例程触发时都更新温度和湿度的显示。
- 保留了updata_flag和sleep_flag用于控制休眠模式的逻辑,但在显示更新部分不再使用updata_flag。
这样修改后,温度和湿度的数值将每次中断时都显示在数码管上,而不会出现交替显示的情况。
同时可以修改数码管显示的持续时间,根据自己的喜好选择多久让数码管进入休眠模式。我这边设置的时间是数码管点亮5秒后进入休眠模式。
烧录使用stlink进行烧录,接四根线进行烧录即可
至此,完成了项目所有工作
设计图

BOM


评论