
简介/ U& m6 D) }; B$ W: z" H& A OLED主要涉及SPI协议/IIC协议,汉字点阵编码原理等知识,在这里且先不谈,这个系列主要讲运用,尽量减少文本的书写。本文利用STM32RCT6操作七针OLED显示屏,工程代码会分享出来,可以自行修改。主要是掌握运用,怎么修改代码能显示自己设置的内容,怎么移植到其他同系列芯片上面。至于模块原理,可以查看相关资料,或者上网查资料,因为写原理方面的文章进度较慢,也不适合零基础的人,所以先写运用系列,再写原理系列。 由于时间有限,这里先直接利用代码在单片机上面测试,注意显示的内容与函数调用的关系,要知道为什么会这样,如果要修改显示的内容,怎么去修改。( h6 J9 `! a# ~3 \% Q2 m 1.代码测试+ @ U3 C4 y7 k/ h! | 硬件环境:(STM32RCT6 + 七针0.96寸OLED显示屏)1 ^2 b- ~0 q. u$ W STM32与OLED连线: Y$ H9 y; t1 ^5 @ ![]() 主函数代码 0 a6 p- {$ _- T ![]() 实物测试图 ![]() 如果能成功显示出来,说明软件硬件环境没问题,接下来是修改显示内容。6 p& T/ I) l5 k. k" D ' X9 l' T& Y! k+ d 2.修改显示内容 在工程中进入oledfont.h头文件,找到SHOW二维数组。通过实物图显示的内容来看,每个汉字都是许多的十六进制组合成的,那么如何得到每个汉字的模,这就需要取模工具。, ~/ x! o8 |1 m' n: W 显示汉字程序3 H1 S3 ~9 X9 E3 m ![]() 取模工具操作图 ![]() 取模工具主要操作就行在指定的地方输入自己想要显示的汉字,图中是无人机协会,然后生成字模,得到下面的字模,将下面的字模内容复制到oledfont.h头文件中的SHOW二维数组中,效果如图显示汉字程序所示。 OLED_ShowCHinese函数功能如图主函数所示。" {0 N3 w* Z# H4 g - l6 L- B B( {9 X' Q( D4 { 第一个参数代表汉字的纵坐标,% T. B0 P( w ~. H0 O0 K 第二个参数代表汉字的横坐标,- ^- a5 G* A: T/ x5 k8 K 第三个参数代表具体的汉字,由SHOW二维数组得来。! a3 y0 q3 G+ E ![]() 在程序中调用这个函数传入相应的参数,然后就可以在指定的地方显示指定显示的汉字,可以自己修改参数,调整汉字显示得位置。2 A% m, ]' ^. u; E 1 z" T- p, w# w+ ~4 l: f6 i 3.显示字符串$ x# F/ @* E' [4 ^8 j0 l. b) M9 A% [ / b0 j; F3 U0 O, Y. r7 c8 |$ ^" W ![]() ; q0 w: o& d- O 显示字符串函数主要是显示数字、字母和其他符号。显示汉字的步骤比较多,显示字符串比较方便,直接调用OLED_ShowString函数就行。如图2-4所示,前面两个参数代表字符串的位置,最后一个参数代表显示的字符串。 . x4 o# k. E, x0 m5 A 4、总结:% K- T {, L3 b1 X# O1 |2 v 根据代码修改难度不大,先掌握OLED的运用,然后再渐渐去了解原理。因为IIC协议和SPI协议在嵌入式中非常重要,可以先用实物测试,分析代码,通过现象去分析原理。 ————————————————& O5 `9 F! u/ f& ~' g4 V; ~" R6 Q 版权声明:嵌入式开发体系0 e# }' Q. R9 V) r2 m! K 如有侵权请联系删除 |
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南
学习一下OLED显示
好用,软件也应该分享一下