STM32CUBEMX(12)--IIC,12864OLED(0.96寸)移植
概述
I2C总线硬件简单,资源消耗少,只有时钟和数据线。本例程主要讲解如何点亮0.96寸的OLED屏幕,本例程采用的是STM32F030R8T6,64K大小的Flash。
硬件准备
首先需要准备一个开发板,这里我准备的是NUCLEO-F030R8的开发板。

OLED显示屏就是淘宝上IIC接口的12864模块。

选择芯片型号
使用STM32CUBEMX选择芯片stm32f030r8,如下所示:

配置时钟源
HSE与LSE分别为外部高速时钟和低速时钟,在本文中使用内置的时钟源,故都选择Disable选项,如下所示:

配置时钟树
STM32F0的最高主频到48M,所以配置48即可:

IIC配置
本次实验使用的IIC与显示屏通信,配置如下。

生成工程设置
注意在生产工程设置中不能出现中文,不然会报错。

代码生成设置
最后设置生成独立的初始化文件。

生成代码

配置keil

驱动代码
oled.c
oled.h
oledfont.h
写好的oled.c放入Src文件夹内,oled.h和oledfont.h放入Inc文件夹内,之后需要在keil中加入这三个文件。

取模
由于单片机的flash比较吃紧,所以要显示汉字需要先进行取模。
取模软件下载地址:https://download.csdn.net/download/qq_24312945/13687536
取模软件设置

设置完之后就可以取自己想要汉字的编码,输入完毕点击生成字模即可。

将取得的编码放入oledfont.h的Hzk数组中即可。

主程序
main.c中。
演示效果
