你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何STM32的OLED显示屏进行操作?

[复制链接]
攻城狮Melo 发布时间:2023-3-29 18:12
简介" J5 ^- e- _$ L9 {1 Y! b
OLED主要涉及SPI协议/IIC协议,汉字点阵编码原理等知识,在这里且先不谈,这个系列主要讲运用,尽量减少文本的书写。本文利用STM32RCT6操作七针OLED显示屏,工程代码会分享出来,可以自行修改。主要是掌握运用,怎么修改代码能显示自己设置的内容,怎么移植到其他同系列芯片上面。至于模块原理,可以查看相关资料,或者上网查资料,因为写原理方面的文章进度较慢,也不适合零基础的人,所以先写运用系列,再写原理系列。
+ Y5 V1 r/ C2 T0 [

% Y. v# @2 _! c由于时间有限,这里先直接利用代码在单片机上面测试,注意显示的内容与函数调用的关系,要知道为什么会这样,如果要修改显示的内容,怎么去修改。$ t) ?& v: m, o2 c+ S/ Y  o

! F. {: [2 m+ r+ h1 b7 [5 s

' @  Z6 q/ U% O. g! r1.代码测试; x/ f# w/ A/ K: V& [7 R
硬件环境:(STM32RCT6 + 七针0.96寸OLED显示屏)* }2 i6 I9 Q% E! d" B
STM32与OLED连线
6 a: c# C0 W" A9 L5 v! G$ w) ^+ u" E  z# w6 M0 |! W+ S
38d68e1438094a8b9f757d24fe3d00c0.png
  L) p8 n4 o8 L0 C$ ^6 g) F: e& t1 G) B3 _
+ C9 J, M9 ?4 N( \; T
主函数代码- |: ?0 O4 d3 c
) w$ t* v- K, R) z& }
9a39971433954180922f00a4ea3ea115.png - a; f- ~8 D/ `. i$ t3 T" B

; P! I$ q+ ^9 {8 p$ k3 _4 R' M
1 G0 w3 {, X. ~, a0 F. w  X" k8 f
实物测试图6 C+ E) K" ?5 X9 P- _* P$ g# T

) V2 G9 z  M6 L: p& {
3a4a778550ef47828f6fc38856d1e83f.png
. C  `- I) a2 E) k+ B' S/ V
4 r$ k: R3 z4 {+ p
如果能成功显示出来,说明软件硬件环境没问题,接下来是修改显示内容。" q- v' ?2 [% r1 ~% K5 W6 w
4 \7 g, ?+ A3 X( A9 ~* x

" O5 c9 a# G: t' a/ M6 p! C2.修改显示内容
) |5 m6 u5 c& D/ S% k在工程中进入oledfont.h头文件,找到SHOW二维数组。通过实物图显示的内容来看,每个汉字都是许多的十六进制组合成的,那么如何得到每个汉字的模,这就需要取模工具。; ~4 Z9 V; P; S. D3 D+ v5 v
显示汉字程序$ R5 h+ U6 G, y2 |0 T# L- X
7 `8 x4 s" S/ Q* _  V
2a93ae40e2674996802f4075a421d499.png $ p, W, @( F8 w6 r+ g

* I0 I( W( _7 I+ @' b3 u取模工具操作图$ N( ?. v# H& m1 e' N: k9 w. K# J
  g9 K* Y2 d0 @& G. ^$ I
89be776646ea4e0e8241bae17a798a2c.png
8 P5 \. ]5 }4 w

6 W6 r, q0 T9 B3 [! J取模工具主要操作就行在指定的地方输入自己想要显示的汉字,图中是无人机协会,然后生成字模,得到下面的字模,将下面的字模内容复制到oledfont.h头文件中的SHOW二维数组中,效果如图显示汉字程序所示。5 a' \! g) h* ^/ M/ C# W0 Z7 T' V
OLED_ShowCHinese函数功能如图主函数所示。& }4 V1 ^* o. V( H+ [
- h+ U- @) Z$ E% {. C- o8 e0 w
第一个参数代表汉字的纵坐标,
) _. }$ Q9 c* p) H* w  `第二个参数代表汉字的横坐标,1 Q0 e. O9 h2 Q. K
第三个参数代表具体的汉字,由SHOW二维数组得来。+ y& o: }1 H" z  ^4 [

4 ~* \; Q' a, h; L4 R4 S
95655f04ec1b4650839de1f96f77c13a.png ) p3 c" G8 ^$ O6 N8 T6 ]  [
, E" J- h: k" F* Z
在程序中调用这个函数传入相应的参数,然后就可以在指定的地方显示指定显示的汉字,可以自己修改参数,调整汉字显示得位置。
% v( \* M& m  a8 w" d5 f6 o& R# G! }. G/ ?' t; I* V( J
3.显示字符串& l4 b1 c, U, H8 p
; E9 ~  h3 K- Q" t% S" p9 Y; E
0e931185735544f38557b6289ffdf895.png ( B4 ]( o+ a! `: N* Y8 O! P

; r2 e- @  j; j9 I: z( G显示字符串函数主要是显示数字、字母和其他符号。显示汉字的步骤比较多,显示字符串比较方便,直接调用OLED_ShowString函数就行。如图2-4所示,前面两个参数代表字符串的位置,最后一个参数代表显示的字符串。
% |, U; @/ y$ S2 n: w- x  S% \7 T; C6 H
4、总结:; S9 Y" b9 K/ G
根据代码修改难度不大,先掌握OLED的运用,然后再渐渐去了解原理。因为IIC协议和SPI协议在嵌入式中非常重要,可以先用实物测试,分析代码,通过现象去分析原理。) t9 r' D6 U. H; e
————————————————
+ Q8 c+ z; e) t9 F' |$ l版权声明:嵌入式开发体系
! n( q: ^7 a% m& j' k如有侵权请联系删除
9 @* G2 v8 v3 S/ @/ v% z) ]/ f6 g. U
9 h5 \4 ?3 f; I" K! f, b& \
3 A, N4 F7 I  N5 a1 q$ W2 [2 Z9 s9 g
赞 收藏 评论1 发布时间:2023-3-29 18:12

举报

1个回答
y369369 回答时间:2023-8-10 10:29:05
学习了. F# C0 m: ?. K5 e3 }, o# h

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版