littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于STM32F3的SSD1306 OLED显示驱动

项目简介

本项目展示了如何运用STM32F3微控制器,借助I2C接口驱动SSD1306 OLED显示屏。它基于STM32 HAL库和SSD1306库,提供了OLED显示屏初始化、文本显示、图形显示等功能。适用于STM32F3 Discovery开发板,也可用于其他支持I2C接口的STM32F3系列开发板。

项目的主要特性和功能

  • OLED显示驱动:利用I2C接口驱动SSD1306 OLED显示屏,支持128x32分辨率显示。
  • STM32 HAL库支持:采用STM32 HAL库,简化硬件初始化与I2C通信配置。
  • I2C通信:支持通过I2C1或I2C2接口与OLED显示屏通信,默认使用PB6(SCL)和PB7(SDA)引脚。
  • 图形与文本显示:可在OLED显示屏上实现文本和图形的基本显示功能。
  • CMake构建系统:使用CMake进行构建,支持Ninja构建工具,便于跨平台开发。

安装使用步骤

1. 硬件连接

  • 将OLED显示屏的SCL引脚连接到STM32F3的PB6(I2C1)或PA9(I2C2)引脚。
  • 将OLED显示屏的SDA引脚连接到STM32F3的PB7(I2C1)或PA10(I2C2)引脚。
  • 连接OLED显示屏的VCC和GND引脚到STM32F3的3.3V电源和地。

2. 配置CMake

sh cmake \ --no-warn-unused-cli \ -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE \ -DCMAKE_BUILD_TYPE:STRING=Debug \ -DCMAKE_TOOLCHAIN_FILE:FILEPATH=gcc-arm-none-eabi.cmake \ -Bbuild \ -G Ninja

3. 编译项目

sh cmake --build build -j 8

4. 烧录程序

sh STM32_Programmer_CLI --connect port=swd --download build/stm32f3-ssd1306-display.elf -hardRst

5. 运行程序

烧录完成后,OLED显示屏将显示初始化内容,以此验证项目是否正常运行。

注意事项

  • 确保STM32 HAL库中的I2C模块已启用,并在stm32f3xx_hal_conf.h中包含相关头文件。
  • 如果使用CubeMX生成项目代码,请检查I2C配置是否正确。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】