为了后面的测试能够正常显示处理信息,**惯,第一步是追加显示部件。依旧使用0.96寸的OLED,因为占用的GPIO少,移植程序也方便。 根据板子的原理图,使用CN10的PA9(SCL)和PA10(SDA)作为接口。使用CubeMX设置好使用的GPIO口,生成工程代码,供CubeIDE使用。 在CubeIDE中导入这个工程,并移植OLED显示用的处理代码。此处驱动OLED依旧使用I2C模拟的方式驱动,由于板子的主频很高,需要做必要的时钟延迟处理,以适应OLED的工作时钟。 因为考虑到后面会测试I3C,在处理的时候,把I3C的设备也加上了,结果在使用CubeMX生成代码的时候,没有把“stm32h5xx_util_i3c.h”这个文件拷贝过去,需要手动添加进去,避免编译错误。 为了处理中调试的方便,同时把用户按钮和LED也加了进去,使用PA5(USER_LED)和PC13(USER_BUTTON)。 程序编译、下载,运行效果: 本来以为需要调整I2C的时钟,加延时,结果意外地顺畅。引入OLED的驱动代码就能使用了。算是最大的惊喜了。不过看了下代码,把ms级别的延时,换成HAL_Delay函数,重新编译、下载,没有问题。到此,显示部分的处理,算是完成了。 |
STM32H503生成带dead time的互补PWM
实战经验 | STM32H5 USBD Classic驱动 CDC移植
NUCLEO-H563ZI刷入Micropython固件并点亮LED灯
基于STM32H5的DA之初体验经验分享(带 Trust Zone)
【免费申请】高性能和低成本双Buff加持的NUCLEO H533RE,等你来!
【NUCLEO-H533RE评测】使用双存储区Flash 在不关闭系统的状态下,实现OTA
【NUCLEO-H533RE评测】高性能-全频,硬件加速在电机控制相关应用的速度对比。
【NUCLEO-H533RE评测】HASH对比测试
【NUCLEO H533RE评测分享】高性能和低成本双Buff加持的NUCLEO H533RE
【NUCLEO-H533RE评测】+Coremark跑分测试
感谢分享