在抽屉里找了块0.96"的OLED屏,IIC四线的,于是就有了利用NUCLEO-L552ZE-Q的CN7外扩的SDA(PB9)、SCL(PB8)来点亮显示字符的主意,说干就干。9 s3 m& [2 f2 q' O5 F* U. g% E
1 W) o2 r, {8 X; u8 e; ~在CubeMX里设置PB8和PB9分别为:
6 |! z8 p& C) l" \- x' T. D% B) h% U, E$ \2 J) S, r) E
# \; a% @) D& g/ c! _+ y
* x h7 e- |& h( T. U7 ?设置时钟频率为110MHZ:. d5 l, K0 _7 m7 ?
: U c' Y) w3 t D) w
' e( @) N8 J K+ S; I! e, b5 i
$ f4 [0 s7 t# t! u% Z; Z设置I2C的输出参数以及对应的OLED地址:
8 y% D( }6 e! s3 }" l8 h
1 j! C$ r3 c3 U. ~) U- F [1 W. ]* h
- j. p4 [; o: b* ^
. q# m- C9 t3 N; ^在工程文件设置中,设置工程文件名称及路径:/ |5 \# i/ [( A* f2 B
3 E. Y% Q/ r1 y6 x& X
: V% M& z/ T0 z1 |. T% p
, L* j) ~6 {; [1 ]: H1 g- m) g
生成工程文件,并打开,添加oled.c ,oled.h ,oledfont.h驱动及字库文件,在main.c中添加显示字符的代码:; l [4 S: A% k3 O: V
( {& ]8 }# C, r& ?
& F# O- e& p$ J' X2 O
3 Q- b+ g' Z( {& S; \ H并设置ST-LINK为烧录后自动复位:
" i! y, W( B9 D2 [7 B% n, \1 Y
6 m- j% T/ O) q" T+ X0 \9 |$ }; o
' T' _& [* _+ U$ g编译代码并下载到板卡中,显示效果如下:
3 `5 m/ `7 U: g6 b
5 z+ T/ s( D) _" D3 N
1 p/ ^0 ^9 H/ H7 G( F
9 A- }* s" ~4 G
|
肯定不带了