
STM32G431是一款 STM32G4 系列的入门级芯片,它内嵌了运行频率为 170 MHz 的 Arm Cortex-M4内核,支持 FPU 和 DSP 指令,属混合信号微控制器。 该系列芯片具有: •2 个高速12 位 ADC(采样率 4 M/秒) •4 个 12 位 DAC(采样率 15 M/秒) •4 个高速比较器(17 纳秒) •3 个高速运放(具有可编程增益) •ART、CCM SRAM 和数算加速器 •单存储区 Flash存储容量范围为 32 到 128 KB,封装为 32 到 100 引脚。 STM32G431开发板的周边外设比较少,为了便于人际交互最先考虑的是为其配上一个显示屏,以利于信息的观察。 为了较少地占用系统资源,这里采用的是I2C接口的双色OLED屏,考虑到STM32G431开发板配有Arduino接口,就将OLED屏放到Arduino接口上来使用,从而能够不必连线就解决问题。 OLED屏与MCU大的连接关系为: SCL---PA5 SDA---PA6 控制相关引脚输出高低电平的语句定义为: #defineOLED_SCLK_Set() HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5,GPIO_PIN_SET) #defineOLED_SCLK_Clr() HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5,GPIO_PIN_RESET) #defineOLED_SDIN_Set() HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6,GPIO_PIN_SET) #defineOLED_SDIN_Clr() HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6,GPIO_PIN_RESET) 实现引脚输出功能配置的函数为:
由于STM32G431的主频速度比较高,故直接移植程序代码是有问题的,需要添加相应的延时函数来辅助解决。 修改后的辅助显示函数为:
实现下图显示效果的主程序为:
![]() OLED屏显示效果 |
感谢支持!!!