手把手教你用STM32F103C8T6驱动AHT20和OLED,做个桌面温湿度计(附完整代码)

STM32F103C8T6驱动AHT20与OLED打造高精度桌面温湿度监测系统

1. 项目概述与硬件选型

在智能家居和办公环境监测领域,精准的温湿度数据采集与显示系统具有广泛的应用价值。本项目基于STM32F103C8T6微控制器,结合AHT20数字温湿度传感器和0.96寸OLED显示屏,构建了一套完整的桌面环境监测解决方案。

核心硬件组件:

  • 主控芯片:STM32F103C8T6(Blue Pill开发板)

    • Cortex-M3内核,72MHz主频
    • 64KB Flash,20KB SRAM
    • 丰富的外设接口(I2C、SPI、USART等)
  • 传感器模块:AHT20

    • 测量范围:温度-40~85℃(±0.3℃精度)
    • 湿度0~100%RH(±2%RH精度)
    • I2C数字接口(地址0x38)
  • 显示模块:0.96寸OLED(SSD1306驱动)

    • 分辨率128×64
    • 支持I2C/SPI接口
    • 自发光,可视角度大

硬件连接示意图:

OLED引脚 STM32连接 AHT20引脚 STM32连接
GND GND GND GND
VCC 3.3V VDD 3.3V
SCL PB6 SCL PB6
SDA PB7 SDA PB7

注意:实际连接时需确保I2C总线已接上拉电阻(通常模块已内置)

2. 开发环境搭建与基础配置

2.1 CubeMX工程初始化

使用STM32CubeMX进行外设配置:

  1. 时钟配置

    RCC->HSE = RCC_HSE_ON;  // 启用外部8MHz晶振
    SystemCoreClock = 72000000;  // 设置系统时钟为72MHz
    
  2. I2C1配置(用于AHT20):

    • 模式:I2C
    • 速度:标准模式(100kHz)
    • 引脚:PB6(SCL), PB7(SDA)
  3. 定时器配置<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值