1..OLED.c
/*引脚配置*/
void OLED_W_SCL(GPIO_PinState x)
{
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_8,x);
}
void OLED_W_SDA(GPIO_PinState x)
{
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,x);
}
/*引脚初始化*/
void OLED_I2C_Init(void)
{
__HAL_RCC_GPIOB_CLK_ENABLE();
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
OLED_W_SCL(1);
OLED_W_SDA(1);
}
将江科大的 OLED.c文件中的引脚配置和引脚初始化改成这两个
2.main.c
添加头文件
#include "OLED.h"
在初始化后面
OLED_Init();
OLED_ShowChar(1, 1, 'A');
OLED_ShowString(1, 3, "HelloWorld!");
OLED_ShowNum(2, 1, 12345, 5);
OLED_ShowSignedNum(2, 7, -66, 2);
OLED_ShowHexNum(3, 1, 0xAA55, 4);
OLED_ShowBinNum(4, 1, 0xAA55, 16);
烧录即可实现移植
3.常见问题
如果刷新比较慢请开启高速外部振荡器
HSE 的全称是 High-Speed External oscillator(高速外部振荡器),它是STM32时钟系统中的一个重要外部时钟源。
Serial Wire(串行线) 是嵌入式系统中常用的一种调试和通信接口协议,尤其在ARM Cortex-M系列微控制器(如STM32)中被广泛使用。
相关的OLED.c OLED.h OLED_Font.h 可以通过资源下载