
#第九届立创电赛#基于STM32的家庭温湿度检测
简介
基于STM32G030K6T6的家庭温湿度检测,采用盛思锐SHT40传感器模块,检测速度快,效果灵敏,能实时检测温度,湿度。
简介:基于STM32G030K6T6的家庭温湿度检测,采用盛思锐SHT40传感器模块,检测速度快,效果灵敏,能实时检测温度,湿度。开源协议
:CC BY-NC 3.0
描述
注:* 为必填项
请在报名阶段填写 ↓
* 1、项目功能
测量温湿度,使用两节1.5V五号电池供电。平时处于睡眠模式下,需按下唤醒按键后退出睡眠模式,同时显示温度湿度约10秒钟,之后又进入睡眠模式...
*2、项目属性
该项目为首次公开,硬件电路部分使用了嘉立创官方示例电路,PCB布局。软件部分参考了官方示例程序,认为数码管显示温湿度时闪烁会影响观看,更改为同时显示温湿度,并将显示时间更改为10秒。
注:请说明项目是否首次公开;项目是否为原创;项目是否曾经在其他比赛中获奖,若有获奖则叙述获奖详情;项目是否在学校参加过答辩。
* 3、开源协议
请输入内容…CC BY-NC 3.0
注:利他即利己,请认真阅读下述内容。
- 拥抱开源,赋予项目无限价值。建议项目核心功能开源80%以上;
- 2、若某一部分功能不可替代且删掉之后项目无法解决对应的问题,则这一部分实现的功能就是项目的核心功能;比如设计了一台电子负载且设计了一款上位机软件监控功率变化,则电子负载为核心功能,上位机软件为辅助功能;比如电子负载中使用了一款隔离485模块与上位机通信,则此485模块实现的通讯功能为辅助功能;
- 项目应选择适合自己的开源协议,若项目引用其他开源项目,应注明来源并遵循原作者的开源协议规定;原创项目推荐使用GPL3.0开源协议;
- 直接引用开源项目的原电路或原代码实现的功能不可作为自己项目的核心功能、使用市场上通用模块直接实现的功能不可作为自己项目的核心功能。
请在竞赛阶段填写 ↓
CC BY-NC 3.0
*4、硬件部分
请输入内容…
原理图设计使用了官方给出的原理图,PCB为自己设计。我将电容电阻的封装改成了0603,而非0805,新手的话推荐0805,焊接起来会简单很多。
由于弯插元件下单时没货,在某宝上购买,结果质量不太好,现在已经断了,于是乎,被我拆了又焊,把温湿度模块焊死在板子上,封面白白净净的板子已不复存在,只留下了一块黑黝黝的板子和心拔凉拔凉的我,如下图:
反面图:
另外我发现,如果唤醒按键和温湿度模块太近的话,当你按唤醒按键时,温湿度模块可能会受到你手指的干扰让温湿度显示数据产生一定的误差,所以设计PCB时可以将两者的距离摆放远一点。
最后放效果图:
注:请前往嘉立创EDA 生成/上传设计文件,文件完成后,相关文稿将自动生成至项目详情;这里可以详细说明您的项目实现原理和机制、注意事项、调试方法、测试方法等。推荐图文并茂的形式向别人介绍您的想法。
*5、软件部分
请输入内容…
软件部分参考了官方示例程序,只对定时器其中的一点进行了修改,就是增加了显示时间到了10秒,温湿度同时显示。
值得注意的一点是,调试的时候最好将睡眠模式给注释掉,否则很容易下载不进程序,立创训练营直播时的方法,反正我试了没有用,找到解决办法的兄弟麻烦踢我一下。
/* USER CODE BEGIN 1 */
/*
函数内容:定时器更新中断回调函数
函数参数:TIM_HandleTypeDef *htim--定时器句柄
返回值: 无
*/
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
if(htim->Instance == TIM14)
{
HAL_TIM_Base_Stop_IT(&htim14);
updata_flag++;
if(updata_flag <= 10000)
{
ShowNum(1,1,(device_paramter.Temp/100));
ShowNum(1,2,(device_paramter.Temp / 10 % 10));
ShowNum(1,3,device_paramter.Temp%10);
ShowNum(2,1,(device_paramter.Humi/100));
ShowNum(2,2,(device_paramter.Humi / 10 % 10));
ShowNum(2,3,device_paramter.Humi%10);
}
else
{
updata_flag = 0;
sleep_flag++;
}
__HAL_TIM_SetCounter(&htim14,0);
if(sleep_flag >= 2)
{
sleep_flag = 0;
device_paramter.sleepStatus = 1;
SN74HC595_Send_Data(SN_DIG,0xFF);
SN74HC595_Send_Data(SN_LED1,0x00);
SN74HC595_Send_Data(SN_LED2,0x00);
}
else{
HAL_TIM_Base_Start_IT(&htim14);
}
}
}
注:若您的项目涉及软件开发,请在附件上传对应的工程源码。这里可以详细说明您的软件流程图、功能模块框图、相关算法的解释或科普、源码结构、编译环境的搭建和配置、源码编译方法、程序烧录方法等。推荐图文并茂的形式向别人介绍您的想法。
*6、BOM清单
请输入内容…
注:项目涉及的BOM清单。在嘉立创EDA 生成/上传设计文件后,BOM将自动生成至项目详情;建议包括型号、品牌、名称、封装、采购渠道、用途等内容。具体内容和形式应以表达清楚项目构成为准。
*7、大赛LOGO验证
请上传包含大赛logo的项目图片,logo以丝印形式印刷在PCB上面。
点击zip下载大赛logo标识! (大赛标识).zip
* 8、演示您的项目并录制成视频上传
视频要求:请横屏拍摄,分辨率不低于1280×720,格式Mp4/Mov,单个视频大小限100M内;
视频标题:立创电赛:{项目名称}-{视频模块名称};如立创电赛:《自动驾驶》-团队介绍。
设计图

BOM


评论