发作品签到
专业版

#第九届立创电赛#室内温湿度计

工程标签

573
0
0
0

简介

基于sht40芯片,通过stm32f103控制OLED显示温度、湿度。带有蜂鸣器、时钟、闹钟显示。

简介:基于sht40芯片,通过stm32f103控制OLED显示温度、湿度。带有蜂鸣器、时钟、闹钟显示。

开源协议

TAPR Open Hardware License

创建时间:2024-05-21 07:01:22更新时间:2024-08-02 06:10:19

描述

注:* 为必填项

请在报名阶段填写 ↓

 

* 1、项目功能介绍


设计一款带有时间功能的室内温湿度计;

支持OLED显示屏(128X32);

支持SHT40温湿度采集;

支持时钟显示及设置;

支持闹钟显示及设置;

支持蜂鸣器响应;

带有锂电池,并支持充电功能;

支持电量不足时提醒;

支持LED充电提示。

*2、项目属性


项目首次公开,是本人原创。未参加其它比赛

 

* 3、开源协议


支持硬件全部开源。

 

 

*4、硬件部分


本项目功能简单,采用立创EDA设计。整体设计如下,后文将重点介绍一下各个部分。

主控电路

主控采用stm32f103c6,选择这款芯片的原因如下:

STM32F103C6是一款主流增强型ARM Cortex-M3微控制器(MCU),以下是对其特性和参数的详细归纳:

  1. 核心参数
    • 32位RISC内核,基于ARM Cortex-M3架构。
    • 最高工作频率达72 MHz。
    • 1.25 DMIPS/MHz(Dhrystone 2.1)的性能表现,在0等待状态内存访问下。
  2. 存储器
    • 高速嵌入式存储器,包括32 KB的Flash存储器和6 KB的SRAM存储器。
  3. 外设与接口
    • 2个12位ADC(模数转换器),用于模拟信号的采集。
    • 3个16位通用定时器加上1个PWM定时器,用于精确定时和电机控制等应用。
    • 丰富的通信接口,包括多达2个I²C、SPI、3个USART、1个USB和1个CAN接口,方便与外部设备进行通信。
  4. 电源与温度
    • 供电电压范围为2.0到3.6 V。
    • 工作温度范围是-40到+85 °C,扩展温度范围为-40到+105 °C。
  5. 节能与安全性
    • 提供了一套全面的节能模式,适用于低功耗应用设计。
    • 具有硬件加密和访问控制功能,可保护系统的安全性。
  6. 封装与引脚
    • 提供从36引脚至64引脚的不同封装类型,满足不同的应用需求。
  7. 其他特性
    • 支持多通道的PWM输出,可用于LED、电机等设备的控制。
    • 中断和DMA功能,实现高效的数据传输和处理。
    • 内部集成了时钟电路和复位电路,提供稳定的时钟信号和复位功能。

STM32F103C6因其高性能、丰富的外设接口和灵活的配置选项,广泛应用于电机驱动、应用控制、医疗和手持设备、PC和游戏外设、GPS平台、工业应用等多个领域。

该主控的管脚分配和最小系统如下图所示:

为了使RTC更准确,采用了外置晶振,

为了时间掉电保存,VBAT单独引出,采用基准电压芯片转换供电。

 

充电电路

采用TP4057,选择该芯片的原因如下:

TP4057是一款针对单节锂离子电池设计的恒流/恒压线性充电器芯片。以下是关于TP4057的详细特性归纳:

  1. 封装与引脚
    • 常见的封装类型为SOT23-6或SOT23-6L。
    • 拥有较少的外围元件,使其非常适用于便携式产品。
  2. 充电特性
    • 充电电压固定在4.24V(或标注为4.2V)。
    • 充电电流可以通过一个外部电阻器进行设置,最大充电电流可以达到500mA或600mA(具体取决于版本)。
    • 采用C/10充电终止,即当充电电流降至设定值的1/10时,芯片将自动结束充电过程。
  3. 温度与功耗管理
    • 具有智能热调节功能,可以在大功率操作或高环境温度条件下自动降低充电电流,以限制芯片温度。
    • 当输入电压断开时,TP4057进入睡眠状态,电池漏电流降至1uA以下(或标注为3uA,具体取决于状态)。
    • 在待机模式下,芯片静态电流降至25uA或40uA(具体取决于版本和状态)。
  4. 保护与安全特性
    • 基于特殊的内部MOSFET架构以及防倒充电路,不需要外接检测电阻和隔离二极管。
    • 包括电池温度监测、欠压锁定和自动再充电功能。
    • 当外部环境温度过高时,热反馈可以调节充电电流以降低芯片温度。
  5. 状态指示
    • 拥有两个漏极开路输出的状态指示输出端:充电状态指示端CHRG和电池充电完成指示输出端STDBY。当充电器处于充电状态时,CHRG被拉到低电平;当电池充电结束后,STDBY被拉到低电平。
  6. 应用
    • 适用于手机、PDA、MP3/MP4、蓝牙耳机、GPS、充电座、数码相机、Mini音响等便携式设备。
  7. 其他特性
    • 可直接从USB端口给单节锂离子电池充电。
    • 精度达到±1%的预设充电电压。
    • 支持两灯模式,充电状态更加清晰。

综上所述,TP4057是一款功能强大、安全可靠的锂离子电池充电器芯片,广泛应用于各种便携式电子设备中。

通过TYPE-C接口进行充电,设计图如下:

电源转换设计

由于锂电池供电电压不稳,这里采用了LDO进行转换,系统供电需要3.3V。因此选择XC6220B331MR-G,具体介绍如下:

XC6220B331MR-G是一款由Torex Semiconductor制造的电源管理集成电路(PMIC),具体为低压差线性稳压器(LDO)。以下是关于XC6220B331MR-G的详细参数和特性:

  1. 基本参数
    • 制造商:Torex Semiconductor
    • 产品型号:XC6220B331MR-G
    • RoHS状态:符合RoHS 2011/65/EU(6种物质)
    • Lead Free:Pb-free(无铅)
    • 产品状态:在售(生命周期状态:量产中)
  2. 电气特性
    • 稳压器类型:正,固定式
    • 输出电压(固定):3.3V
    • 最大输入电压:6V
    • 最大输出电流:1A
    • 电压降(最大值):0.655V @ 1A
    • 静态电流(Iq):18 µA
    • 供电电流(最大值):108 µA
    • PSRR(电源抑制比):50dB @ 1kHz
  3. 保护和控制特性
    • 控制特性:使能
    • 保护功能:过流、超温
  4. 工作环境
    • 工作温度:-40°C ~ 85°C
    • 安装类型:表面贴装
  5. 封装与尺寸
    • 封装/外壳:SOT-25-5(SC-74A, SOT-753)
    • 供应商器件封装:SOT-25
  6. 其他
    • 符合RoHS标准,无铅环保
    • 封装方式为卷带(Tape and Reel)
    • 适用于光驱、磁盘驱动器、数码相机/摄像机、数字音频设备等应用领域

总结来说,XC6220B331MR-G是一款性能稳定、保护功能完善的3.3V固定输出电压的低压差线性稳压器,适用于各种需要稳定电源的应用场景。

LDO转换电路如下图所示:

 

蜂鸣器电路

这里采用有源蜂鸣器QMB-09B-03,其基本参数如下,这里采用PWM驱动。

QMB-09B-03是一款由江苏华能电子(HNDZ)生产的蜂鸣器。以下是关于QMB-09B-03的详细参数和特性:

  1. 基本信息
    • 器件型号:QMB-09B-03
    • 器件类别:蜂鸣器
    • 厂商:江苏华能电子(HNDZ)
  2. 技术规格
    • 驱动方式:无源(外部驱动)
    • 构造类型:电磁式
    • 额定电压:3V
    • 工作电压:2V~5V
    • 频率:2.7kHz(或标注为2700Hz)
    • 声压(SPL):85dB
  3. 物理尺寸
    • 直径(φD):9mm
    • 高度:5.7mm
    • 封装:插件,D=9mm
  4. 其他参数
  5. 价格与库存
    • 价格:根据购买数量有所变动,具体价格需咨询供应商。
    • 库存:内地仓库有一定量的存货,具体库存量需咨询供应商。
  6. 应用
    • QMB-09B-03蜂鸣器广泛应用于各种需要声音提示的电子设备中,如警报器、定时器、电子玩具等。

请注意,以上信息仅供参考,实际产品可能根据供应商和生产批次有所不同。在采购和使用时,建议查阅最新的产品手册和咨询供应商以获取准确信息。

相关设计如下:

注:D2可以不用焊接。

温湿度传感器

这里采用SHT40,

SHT40是一款高性能的温湿度传感器,由Sensirion公司推出,具有低功耗、高精度、快速响应和稳定可靠等特点。以下是关于SHT40的详细介绍:

一、主要特性

  1. 高精度:SHT40在温湿度测量方面表现出色,其温度精度可达±0.2°C(典型值),湿度精度可达±1.8%RH(典型值)。这使得SHT40能够精确监测环境变化,满足对精度要求较高的应用场景。
  2. 低功耗:SHT40在功耗方面进行了优化,更适合低功耗应用,如物联网(IoT)设备和能源敏感的系统。其平均电流在1 Hz测量速率下仅为0.4μA,有助于延长设备的电池寿命。
  3. 快速响应:SHT40在设计上优化了响应速度和灵敏度,尤其是在湿度测量方面的响应时间更快,能够更迅速地捕捉到环境变化。其相对湿度响应时间(tau63%)通常为6秒左右。
  4. 稳定可靠:SHT40具有良好的长期稳定性,并增加了更多的内部自校准功能。这些功能能够更好地补偿传感器老化和温度漂移,从而在整个产品生命周期内保持高精度。
  5. 抗干扰能力强:SHT40增强了抗干扰能力,能够更好地抵抗电磁干扰(EMI)和其他环境因素的影响,确保在复杂环境中也能提供可靠的测量结果。

二、技术规格

  • 尺寸:SHT40采用小型QFN封装,尺寸为1.5 x 1.5 x 0.5 mm³,便于集成到各种设计中。
  • 电源电压范围:SHT40的电源电压范围广泛,从1.08 V至3.6 V,适合多种供电环境。
  • 工作范围:温度测量范围为-40°C至+125°C,湿度测量范围为0%至100% RH。
  • 通信接口:SHT40具有真正的I2C接口,使用两根线(加上电源线和地线)即可轻松连接至微控制器或其他处理设备。

三、应用场景

SHT40凭借其优异的性能,广泛应用于智能楼宇、智能家居、天气站、仓库存储、动植物养殖等领域。在智能楼宇中,SHT40可用于监测室内温湿度,提供舒适的居住或工作环境;在智能家居中,SHT40可用于控制加湿器、除湿机等设备,保持室内湿度适宜;在天气站中,SHT40可用于监测大气温湿度,为气象预报提供数据支持。

四、总结

SHT40作为一款高性能的温湿度传感器,以其高精度、低功耗、快速响应和稳定可靠的特点,在物联网、智能家居、环境监测等领域具有广泛的应用前景。随着技术的不断进步和市场的不断扩大,SHT40将继续发挥其优势,为各行业提供更加精准的温湿度监测解决方案。

这里采用IIC接口,和显示屏共用一个接口,设计如下:

 

 

显示屏

这里采用0.91C的单色LCD屏幕,性能如下:

HS91L02W2C01是一款来自HS(汉昇)品牌的0.91寸OLED显示屏。以下是关于HS91L02W2C01的详细参数和特性:

  1. 产品概述
    • HS91L02W2C01是一款采用I2C通讯协议的OLED显示屏,具有4PIN黑底白光的特点。
    • 它主要适用于各种需要显示功能的电子设备中,提供清晰、细腻的显示效果。
  2. 主要参数
    • 尺寸:0.91寸
    • 像素分辨率:128x32
    • 接口类型:I2C
    • 工作温度:-40℃~+70℃
    • 毛重:约4克(g)
    • 包装方式:袋装
  3. 产品特性
    • 高效能:采用先进的OLED技术,具有低功耗、高对比度和快速响应等特点。
    • 宽温工作:能在-40℃~+70℃的宽温度范围内稳定工作。
    • 易于集成:I2C通讯协议使得HS91L02W2C01易于与各种微控制器和处理器集成。
  4. 应用场景
    • HS91L02W2C01适用于各种需要显示功能的电子设备,如智能仪表、工业控制设备、医疗器械等。
  5. 购买信息
    • 品牌:HS(汉昇)
    • 厂家型号:HS91L02W2C01
    • 商品编号:C5248081
    • 库存情况:江苏仓库存259,广东仓库存67,广东SMT仓库存67
    • 价格信息:根据购买数量不同,价格有所浮动。例如,购买1-10个时,单价为¥13.77/个;购买1000个以上时,单价为¥8.33/个。
  6. 附加信息
    • 数据手册:可通过指定链接下载HS91L02W2C01的数据手册,获取更详细的规格和技术信息。
    • 发货和售后:提供快速发货服务,并支持正品保障和物料可追溯。

综上所述,HS91L02W2C01是一款功能全面、性能稳定的0.91寸OLED显示屏,适用于各种需要显示功能的电子设备。

接口非常简单,设计如下:

按键设计

这里采用物理按键,需要注意防抖,设计如下

其它电路

如开关:

如充电口:

如锂电池电量采集:

 

PCB设计

这里采用立创EDA进行设计,由于板子较小,需要安装电池等。

需要注意的问题如下:

1-器件避让

2-接口分布

3-安装设计

整体设计与走线如下。

这里采用了4层板设计。

 

 

3D外壳设计

这里采用立创EDA设计

需要注意问题如下:

1-高度设计要合理

2-开口位置要准确

3-螺丝大小选取合理

4-开口大小要合适

5-器件安装高度计算准确

 

设计如下图所示:

 

实物图如下:

 

面板设计

这里采用立创EDA设计,非常简单。

需要注意问题如下:

1-开孔准确

2-背胶挖空

3-设计要漂亮

4-配色要得当

我作业一个工程师,只能勉强能用,仅供参考吧

设计效果如下

没券了,就没有做出来。

*5、软件部分


软件基于Keil 5开发,采用C语言进行编写程序。

主要氛围以下几个部分:

1-OLED驱动

根据官方驱动手册编写即可。

效果如下:

涉及主要函数如下:

#define OLED_CMD  0    //写命令
#define OLED_DATA 1    //写数据

void OLED_ClearPoint(u8 x,u8 y);
void OLED_ColorTurn(u8 i);
void OLED_DisplayTurn(u8 i);

void I2C_Start(void);
void I2C_Stop(void);
uint8_t I2C_WaitAck(void);
void I2C_Ack(void);
void I2C_NAck(void);
void Send_Byte(u8 dat);
u8 Read_Byte(void);


void OLED_WR_Byte(u8 dat,u8 mode);
void OLED_DisPlay_On(void);
void OLED_DisPlay_Off(void);
void OLED_Refresh(void);
void OLED_Clear(void);
void OLED_DrawPoint(u8 x,u8 y,u8 t);
void OLED_DrawLine(u8 x1,u8 y1,u8 x2,u8 y2,u8 mode);
//void OLED_DrawCircle(u8 x,u8 y,u8 r);
void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size1,u8 mode);
void OLED_ShowChar6x8(u8 x,u8 y,u8 chr,u8 mode);
void OLED_ShowString(u8 x,u8 y,u8 *chr,u8 size1,u8 mode);
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size1,u8 mode);
void OLED_ShowChinese(u8 x,u8 y,u8 num,u8 size1,u8 mode);
void OLED_ScrollDisplay(u8 num,u8 space,u8 mode);
void OLED_ShowPicture(u8 x,u8 y,u8 sizex,u8 sizey,u8 BMP[],u8 mode);
void OLED_Init(void);
//void OLED_DrawREC(u8 x,u8 y,u8 w,u8 h);

 

由于主控flash有限,字体只保留需要8X6和24X12。

 

2-传感器驱动

严格按照如下规格书编写:

需要注意IIC的地址和具体芯片型号要对应起来。

IIC的读写时序控制,必须严格按照如下:

命令如下:

数据读取验证:

 

3-锂电池电量采集

通过芯片的ADC采集。

DMA方式存储。

定时采集,函数如下

HAL_ADC_Start_DMA(&hadc1,(uint32_t *)(&(adc_value[0])),1);

采集效果:

 

这里电量有个量化标准,网上找的:

程序实现如下

4-时间设置:

RTC时间设置和获取。函数如下

    HAL_RTC_GetTime(&hrtc,&myTime,RTC_FORMAT_BIN);
            
                sprintf(ss,"Time  %02d:%02d:%02d",myTime.Hours,myTime.Minutes,myTime.Seconds);
                OLED_ShowString(0,8,ss,8,1);//6*8  

这里需要断电保存。

效果验证如下:

 

5-LED灯显示

采用PA2控制,如下图所示

6-蜂鸣器

采用PWM驱动

HAL_TIM_PWM_Stop(&htim1,TIM_CHANNEL_1);

HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);

 

 

 

 

 

注:若您的项目涉及软件开发,请在附件上传对应的工程源码。这里可以详细说明您的软件流程图、功能模块框图、相关算法的解释或科普、源码结构、编译环境的搭建和配置、源码编译方法、程序烧录方法等。推荐图文并茂的形式向别人介绍您的想法。

 

*6、BOM清单


请输入内容…

No. Quantity LCSC Price Designator Footprint Value Manufacturer Part Manufacturer Supplier Part Supplier  
1 1 0.675889 BUZZER1 BUZ-TH_BD9.0-P4.00-D0.6-FD 2.7kHz QMB-09B-03 华能 C96256 LCSC 0.675889
2 13 0.013981 C1,C4,C5,C6,C7,C8,C11,C13,C16,C18,C19,C20,C21 C0603 100nF CC0603KRX7R9BB104 YAGEO(国巨) C14663 LCSC 0.181753
3 2 0.105541 C2,C3 C0603 10uF CL10A106MA8NRNC SAMSUNG(三星) C96446 LCSC 0.211082
4 2 0.027184 C9,C14 C0603 12pF CL10C120JB8NNNC SAMSUNG(三星) C38523 LCSC 0.054368
5 4 0.059151 C10,C12,C15,C17 C0603 4.7uF CL10A475KO8NNNC SAMSUNG(三星) C19666 LCSC 0.236604
6 2 0.05112 D1,D2 SOD-323_L1.8-W1.3-LS2.5-RD   1N5819WS Hottech(合科泰) C191023 LCSC 0.10224
7 1 0.070826 LED1 LED0805-R-RD   KT-0805G KENTO C2297 LCSC 0.070826
8 1 0.124743 LED3 LED0805-R-RD   NCD0805G1 国星光电 C84260 LCSC 0.124743
9 1 13.77 OLED1 OLED-TH_L38.0-W12.0_HS91L02W2C01   HS91L02W2C01 HS(汉昇) C5248081 LCSC 13.77
10 1 0.246979 Q1 SOT-23-3_L2.9-W1.4-P1.90-LS2.6-BR   AO3401 TWGMC(台湾迪嘉) C727156 LCSC 0.246979
11 1 2.94 Q2 SOT-25_L3.0-W1.6-P0.95-LS2.8-TL   XC6220B331MR-G TOREX(特瑞仕) C86534 LCSC 2.94
12 1 0.088502 Q3 SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR   SS8050 CJ(江苏长电/长晶) C2150 LCSC 0.088502
13 1 0.015448 R1 R0805 5kΩ RTT055001FTP RALEC(旺诠) C332873 LCSC 0.015448
14 3 0.005579 R2,R11,R12 R0603 10kΩ 0603WAF1002T5E UNI-ROYAL(厚声) C25804 LCSC 0.016737
15 1 0.006057 R4 R0603 2kΩ 0603WAF2001T5E UNI-ROYAL(厚声) C22975 LCSC 0.006057
16 3 0.005579 R5,R8,R10 R0603   0603WAF1002T5E UNI-ROYAL(厚声) C25804 LCSC 0.016737
17 1 0.006179 R6 R0603 33Ω 0603WAF330JT5E UNI-ROYAL(厚声) C23140 LCSC 0.006179
18 1 0.006141 R7 R0603 100kΩ 0603WAF1003T5E UNI-ROYAL(厚声) C25803 LCSC 0.006141
19 1 0.006263 R9 R0603 1MΩ 0603WAF1004T5E UNI-ROYAL(厚声) C22935 LCSC 0.006263
20 2 0.006472 R13,R14 R0603 4.7kΩ 0603WAF4701T5E UNI-ROYAL(厚声) C23162 LCSC 0.012944
21 1 0.13947 SW1 SW-TH_SK12D07VG4   SK12D07VG4 SHOU HAN(首韩) C393937 LCSC 0.13947
22 3 0.213678 SW2,SW3,SW4 SW-TH_4P-L6.0-W6.0-P4.50-LS6.5   TS-1002-07026 XUNPU(讯普) C455095 LCSC 0.641034
23 1 26.56178 U1 LQFP-48_L7.0-W7.0-P0.50-LS9.0-BL   STM32F103C6T7ATR ST(意法半导体) C2054899 LCSC 26.56178
24 1 0.2464 U2 SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BR   TP4057 UMW(友台半导体) C725791 LCSC 0.2464
25 1 1.3016 U3 CRYSTAL-SMD_L3.2-W1.5 32.768kHz FC31M2-32.768-NTLNNDTL HCI(杭晶) C5120559 LCSC 1.3016
26 1 1.4835 U4 SOT-23-3_L2.9-W1.6-P1.90-LS2.8-BR   REF3030AIDBZR TI(德州仪器) C38423 LCSC 1.4835
27 1 0.478589 U5 HDR-TH_3P-P2.54-H-F-W10.0-N   PM254-1-03-W-8.5 HCTL(华灿天禄) C2897385 LCSC 0.478589
28 1 11.24 U6 DFN-4_L1.5-W1.5-P0.80-TL-EP   SHT40-CD1B-R3 Sensirion(瑞士盛思锐) C7461852 LCSC 11.24
                  合计: 60.881865

注:项目涉及的BOM清单。在嘉立创EDA 生成/上传设计文件后,BOM将自动生成至项目详情;建议包括型号、品牌、名称、封装、采购渠道、用途等内容。具体内容和形式应以表达清楚项目构成为准。

 

*7、大赛LOGO验证


 

 

请上传包含大赛logo的项目图片,logo以丝印形式印刷在PCB上面。

点击zip下载大赛logo标识! (大赛标识).zip

 

* 8、演示您的项目并录制成视频上传


如附件所示。

也可到B站观看。

https://www.bilibili.com/video/BV1cGvUeXES8/?vd_source=e36622a05269c0356d6cd566056a2488

 

视频要求:请横屏拍摄,分辨率不低于1280×720,格式Mp4/Mov,单个视频大小限100M内;

视频标题:立创电赛:{项目名称}-{视频模块名称};如立创电赛:《自动驾驶》-团队介绍。

 

前往查看更多详情 >



设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
stm主.png
2
2
时间断电保持验证.mp4
0
3
闹钟与时间切换显示.mp4
0
4
时间设置.mp4
0
5
闹钟设置及闹钟响停止.mp4
0
6
主程序.hex
4
7
stm32温湿度计整体演示.mp4
1
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1)
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航