本仓库包含 STM32 学习过程中的各种外设实验代码,基于 STM32F1 系列 MCU,使用 STM32 HAL 库开发。
- IDE: STM32CubeIDE / Keil MDK
- MCU: STM32F103C8T6(或其他 F1 系列)
- 库: STM32 HAL 库
- 调试工具: ST-Link / J-Link
- hello - 基础入门示例
- GPIO_RGB_LED - RGB LED 控制
- GPIO_KEY - 按键输入检测
- GPIO_TCRT5000 - TCRT5000 红外传感器应用
- I2C_Soft - 软件 I2C 实现
- iic - I2C 通信实验
- I2C_OLED_Dino - OLED 显示屏 + 恐龙小游戏
- oled - OLED 驱动基础
- stm32_hal_ch1116 - CH1116 OLED 驱动
- stm32_hal_aht20 - AHT20 温湿度传感器
- wenduji_demo - 温度计演示
- UART_ECHO - 串口回显
- serial - 串口通信
- serial_8 - 多串口实验
- TIM - 定时器基础
- Tim_InputCapture - 输入捕获
- TIM_Encoder - 编码器接口
- TIM_ExternalInput / TIM_ExternalInput2 - 外部时钟输入
- TIM_Motor - 直流电机控制(DRV8833)
- TIM_Servo - 舵机控制
- PWM_Light - PWM 呼吸灯
- ADC - ADC 基础实验
- ADC_add_jiance - ADC 检测增强版
- Diansaiti_1 - 电赛题目练习 1
- diansai_1_noWave - 电赛练习(无波形版)
- try_diansai_demo_transmit - 电赛演示传输
- stm32_hal_drv8833 - DRV8833 电机驱动
git clone https://github.com/Blurredli/STM32-Study.gitSTM32CubeIDE:
- File → Import → Existing Projects into Workspace
- 选择对应项目文件夹
Keil MDK:
- 打开项目文件夹中的
.uvprojx文件
- 连接 ST-Link/J-Link 调试器
- 编译项目(Build)
- 下载到 MCU(Download/Flash)
各项目的硬件连接请查看对应项目文件夹中的 README.md 或代码注释。常见外设连接:
- OLED (I2C): SCL → PB6, SDA → PB7
- UART: TX → PA9, RX → PA10 (USART1)
- 按键: PA0-PA3(低电平有效)
- LED: PC13(板载 LED)
Windows 环境下可运行 keilkill.bat 清理 Keil 编译产生的临时文件:
keilkill.bat项目名称/
├── Core/
│ ├── Inc/ # 头文件
│ └── Src/ # 源文件
├── Drivers/ # HAL 库驱动
├── .project # Eclipse/CubeIDE 项目文件
└── *.uvprojx # Keil 项目文件
本仓库代码仅供学习交流使用。