首先,去ST官网,或者KEIL安装目录下面找到STEMWIN的相关驱动文件。
" S8 `: V( C- i7 C
在工程里面添加相关文件,文件位置,后面提供,头文件自己添加 % M4 v7 s4 J: f ^+ ?, Q' _ h
各文件地址在:注意路径
2 z, t+ D0 @- c2 ]6 p+ |
其中的lcdconf是改了名字的,原名如下; ; F; @- t1 k x4 N! V% f L3 L
GUI_X.C 9 ^* h# S$ p7 G% F3 k
开始修改代码,改界面大小,我是OLED12864
. T$ z2 W/ V1 V
#define XSIZE_PHYS 128 // To be adapted to x-screen size- k `" g5 `' f7 Z/ d# m2 A
#define YSIZE_PHYS 64 // To be adapted to y-screen size
! z+ B1 y) K3 A7 e改设置,这里有一大堆,都删了,改成下面这样
# n, } Q9 X2 T6 f/ {+ h& p( q
void LCD_X_Config(void) {
, }# v* h9 @, ?# A/ q( N* S* {* U1 G: F. N. S
8 A. S% d- x# V" a
//4 B6 x% ^- I g7 N
// Set display driver and color conversion& ]6 }1 Y6 g8 @
//+ ?# g" q0 C8 \' p2 D
GUI_DEVICE_CreateAndLink(GUIDRV_TEMPLATE, GUICC_1, 0, 0);& }' `3 L5 L e3 _* e
//5 s" {! W. G$ ?% K5 b
// Display driver configuration, required for Lin-driver
6 q# a! x7 I& ?8 B' y //
o8 f9 M/ q6 N) @ LCD_SetSizeEx (0, XSIZE_PHYS , YSIZE_PHYS);: _6 Y# c" n* U
LCD_SetVSizeEx(0, VXSIZE_PHYS, VYSIZE_PHYS);1 \4 z' A6 o) V5 o: q1 u
. o) O; O6 S* J) u
2 S3 m4 h9 ~# c T1 J } }
+ Z' x9 C$ q0 P+ h& u/ L9 F申请内存空间 0 D% x% n! q+ f! ~+ C
#define GUI_NUMBYTES 1024*407 {* T; X7 M( U$ X0 u* ]
提供打点函数 " I) I6 j! u4 w0 e3 i
OLED_Display_Data[y>>3][x] |= PixelIndex << (y%8); : A H7 N! p1 i" r, C/ O, s/ D
使能CRC校验,不然可能会在初始化的时候进入错误中断 E3 @1 ]( l: S2 H5 @$ A
__HAL_RCC_CRC_CLK_ENABLE();
7 o& \0 [4 }( f9 h9 a 做测试代码
+ r( T1 m2 k* q4 b( H" t' \! B
GUI_Init();6 \4 Y$ ^( Z/ N- g: i7 s
GUI_DispString("Hello world!");4 u7 ~: r* W" n* m% v4 d; |9 h
实物效果 + p# I' _5 _, Y4 p
|
谢谢分享哈,确实很方便啊