首先,去ST官网,或者KEIL安装目录下面找到STEMWIN的相关驱动文件。 2 o; I" W: z. |3 C; V) `/ }
在工程里面添加相关文件,文件位置,后面提供,头文件自己添加 5 L( l; g/ Z- x# b! J; \' U1 v6 V% b
各文件地址在:注意路径
: J! o7 _8 o& o# H( M5 g% G$ [
其中的lcdconf是改了名字的,原名如下;
6 [) Q6 }) ~, O$ v8 ?" W5 d
GUI_X.C
9 P# \. P( Z8 t; `/ w2 L+ [7 ^
开始修改代码,改界面大小,我是OLED12864
e& p0 f$ h; d6 X: s* ^. e
#define XSIZE_PHYS 128 // To be adapted to x-screen size! x. n9 ~% _# d% @6 A/ a: g. O) z5 J
#define YSIZE_PHYS 64 // To be adapted to y-screen size % s7 W! s, v) M% j
改设置,这里有一大堆,都删了,改成下面这样
& ^) \' f5 G% h( t9 O1 q% v" [- T6 p
void LCD_X_Config(void) {
1 y0 O7 T1 |& r4 W/ \- g
# q, i! M) U; L) e9 Z# N( J1 U
0 n: s& k+ a$ ]* @ _* O5 _ //4 f! G. Y) ^1 M+ F2 Z8 I m
// Set display driver and color conversion
0 [ X0 Z3 t9 p! V" k( n$ m //
! z* Z4 w/ |/ w: e' r GUI_DEVICE_CreateAndLink(GUIDRV_TEMPLATE, GUICC_1, 0, 0);
- m4 d- k9 m4 ?0 A: o: j* { //( \- X% P9 f4 s2 |1 |% o
// Display driver configuration, required for Lin-driver
5 I$ d1 C7 Z' z; J! n, q. T4 C //$ t' g! f8 s0 t7 O* H
LCD_SetSizeEx (0, XSIZE_PHYS , YSIZE_PHYS);! ~7 Y, o1 \% c# x7 q- G
LCD_SetVSizeEx(0, VXSIZE_PHYS, VYSIZE_PHYS);* J: ]( o: o! s/ o; M8 c
% P. u0 P: b; T; A! y+ I
2 R; p+ t% A6 Q }
; G6 J. @" A1 l& N/ t3 ~申请内存空间 - p X* \/ R4 F, X
#define GUI_NUMBYTES 1024*40" V" z9 f: ~* z V5 m) Y
提供打点函数 8 p! b2 S* d+ i& b; g
OLED_Display_Data[y>>3][x] |= PixelIndex << (y%8);
; C# }7 v& z4 l& n& e+ a 使能CRC校验,不然可能会在初始化的时候进入错误中断 & ]4 o* h0 X% Y: ?! k2 b
__HAL_RCC_CRC_CLK_ENABLE();
. \, H! ~* s" d* r: x 做测试代码 ) S! B- Y9 m) o: u" g* d( a$ L; m
GUI_Init();
( s! @, `5 |; V6 x) Y GUI_DispString("Hello world!");
0 t% F$ J: T3 c0 d8 I& i 实物效果
+ [. B" q2 f% v# i. L |
谢谢分享哈,确实很方便啊