OLED的实现需要包括oled.c,oled.h,oledfont.h文件,我们可以在淘宝卖oled模块的商家详情页中获取例程和这三个文件,其中很多都是标准库实现的,我们可以自己移植到项目中使用HAL库实现。
获取oled.c,oled.h,oledfont.h文件:
在STM32CubeMX中设置引脚功能,这里我把OLED的SCL连接PA5,SDA连接PA7,由于没有将具有I2C功能的引脚连接(也可以直接设置I2C1/I2C2的引脚),这里将PA5/PA7设置为开漏输出:
将oled.c,oled.h,oledfont.h文件复制到对应的文件夹中,oled.c放在Src文件夹,oled.h,oledfont.h放在Inc文件夹中:
将oled.c添加到Core中,编译即会出现oled.h,oledfont.h:
完成项目初始化设置后,开始在keil中移植代码:
在oled.c中修改OLED的初始化,直接调用MX_GPIO_Init()函数,并且包含头文件#include "gpio.h"
oled.h中修改OLED端口定义:
在main.c中调用初始化函数,复制实现代码:
最后如果还是发现有报错可以根据提示进行修改,完成!