HG12864168 I4 Y4 Y3 t$ I6 {, v2 h5 k
128×64点阵;
C3 A3 k. ?1 T( \% W模块尺寸: 54.0×50.0mm;+ h* d3 z* m8 e/ W7 m
显示尺寸:43.5×29.0mm;
/ E u# C, O* A6 g( z9 B( m/ E) `3 d+ A3.3V工作;控制器为SBN0064G 兼容KS0108(不带字库)+ q: p/ F" m. x6 f# k; i
http://www.chinalcdmodule.com/3.3v-lcd-module---hg1286416.html7 D2 T2 t* u6 T/ _
http://www.chinalcdmodule.com/upfiles/HG1286416.pdf8 V8 J$ \ O) c# U/ M
1.12*16字体未开发% w$ M! x" u/ ^) N O
2.24*14字体未开发
7 m9 E' N0 C( ^9 d2 t/ E: }: Z- static u8 *FindGBChar(u8 *str); s, A; I3 U# T5 D# f1 H$ P9 E% A! C
- {
6 v2 V: f5 B* U. ? - u16 i;
1 P" a/ {( U% h5 ^3 W. ^- ] - u16 gbcharNum=25; //动态结构体数组中汉字的个数
- s9 g* H2 U6 z, G - //求结构体数组元素个数的方法:(sizeof(GBCHR_16))/(sizeof(GBCHR)),但编译器报错! L0 ^0 W- d* i m
- for(i=1; i<gbcharNum; i++)( z4 n) h! J+ ^' g
- {
9 l* J) r6 A/ l4 ~/ P# x! O$ M - if(*str==GBCHR_16[i].chr[0] && *(str+1)==GBCHR_16[i].chr[1])) I* H8 B0 v3 u/ G4 b7 V
- return (u8 *)GBCHR_16[i].dataTab;2 ?- z: l3 W! N- l! J' y; z
- }& W3 n) Z" b& t% m! \: ]0 m% \
- return (u8 *)GBCHR_16[0].dataTab; //字库中没有要找的字,则返回第一个字模
/ z; l- \; }7 Z# u* r8 E3 R - }6 L | \% I# _" e
- 9 ]4 z: B$ t# O3 Q1 I5 Q
6 @/ n) f8 K+ Z) E- /*******************************************************************************
1 {* G/ |. {' I- v1 x5 H0 u# J - * 函数名:LCD_print_1632Num0 P. f0 _( b( N; x8 n1 c9 m
- * 说明:液晶字符输出字符(16*32字体)
- P/ L; W- v2 q) G! l - row: 0,1,2,3,4(5 lines cross)
$ ]4 d S. O* p' S, J+ h( p - column: 0~127(列) column=iner_column*16
9 P% C1 _; A/ E: C0 c; T5 \4 V - * 输入参数:reverse=0:common display reverse=1: reverse disp
8 w. q( G8 O4 f - * 输出参数:% [0 h m0 E+ F% F+ b) }3 W# h5 Y" A
- *******************************************************************************/
6 i; s4 v% e2 s) @2 e - void LCD_print_1632Num(unsigned char row, unsigned char column, u8 num,u8 reverse)) N4 T: ^9 X( m; `% m# V" C# _+ [
- {
- a( d7 i' n( N; k! T - DispScreen(16,32,row,column,digitalTab1_16x32[num], reverse);
/ M+ G+ F; ?7 V( }0 w5 x - }
. b" D. A8 ^) Z2 x/ V
: n3 Z; Y- S8 K; Y- - g5 n) q( h- a+ g4 H- ~
- /*******************************************************************************6 M1 E ^2 x/ b# J4 _
- * 函数名:LCD_print_1616CNChar( L) R# P9 ]9 E/ B
- * 说明:液晶字符输出汉字(16*16): f3 b8 B% s6 K& m
- row: 0,2,4,6(4 lines) row*2=page(0~7),6 C( R# v: [, N
- column: 0~127(列) column=iner_column*16 每行最多显示8个1616汉字
% z$ B, w% p# w" @' i - * 输入参数:reverse=0:common display reverse=1: reverse disp5 r& S9 y1 T2 l J" s' E
- * 输出参数:# U5 y/ @! D7 _" ^# i. d; ?1 D- Z! R
- *******************************************************************************/
/ ?& Y6 `! Y2 C6 g& H1 X$ z - void LCD_print_1616CNChar(unsigned char row, unsigned char column, u8 *str,u8 reverse)
# o, x8 p' f$ c Z, V - { T$ B7 F" T9 ?$ y& D2 j) U; \
- while(*str!='\0')- Z. f* Y# R+ T! N _. b
- {
: s% q0 a% j; B$ H( P7 c - DispScreen(16,16,row,column,FindGBChar(str), reverse); ! i. k+ B' y# p1 v
- str+=2;9 W" ^" P5 @+ Z. l [$ p
- column+=16; * T0 C7 ]0 i6 f( G) D9 v% S
- }
& Z& P) p2 P# Y, G+ { -
7 Y7 L) {$ M8 ]: J( U - }
% h" x9 y! J7 H' W, O& I" h% | - & j j0 D/ o0 H# V
- //结构体数组
; ]4 ]! T% z) b" v, w, L - //取码规则:PCtoLCD2002,(逆向)低位在前, 列行扫描, 阴码(1-亮, 0-灭)
, D- e" B$ G, K2 M. P5 J - //LcmZimo.exe:从左到右从上到下,纵向8点下高位
, ]/ h- n: A5 R9 q4 n) D6 @ - const GBCHR GBCHR_16[] =/ u- k+ @& R6 ]; y
- {5 z9 r+ k) ]0 b; O% p7 B+ W
. t: V1 Z7 U# l5 S/ X- 0x00,0x00, /*每个汉字内码占用2字节,备用,移植时无需改动*/1 C" k( N1 |2 n! e4 X
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, p! m% q, ^# S( G' P* ~
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ ]7 Q$ N& h Y - 0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
3 C4 p$ ?2 K3 D K - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - V8 ~5 n7 @) [: ?
-
; d: H& f3 M$ P) f1 R0 P - "自", 0x00,0x00,0x00,0xF8,0x48,0x4C,0x4A,0x49,0x48,0x48,0x48,0xFC,0x08,0x00,0x00,0x00,
; i: ~' C6 u# J5 U- O. U - 0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00,0x00,1 `9 q9 ~+ q8 w6 W5 E2 c
# v2 t& t, l# p5 @5 O4 m' p+ M9 H- "手", 0x00,0x04,0x24,0x24,0x24,0x24,0x24,0xFC,0x22,0x22,0x22,0x33,0x22,0x00,0x00,0x00,! X5 j" c- z2 q* n
- 0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x03,0x02,0x00,1 j* X8 z) r9 w# |" n
& I- @1 G4 U' C$ f$ n- "动", 0x20,0x24,0x24,0xE4,0x26,0x34,0x20,0x10,0x10,0xFF,0x10,0x10,0x10,0xF8,0x10,0x00,
- L @. B5 z+ y3 ~ - 0x08,0x1C,0x0B,0x08,0x08,0x8A,0x4C,0x30,0x0C,0x03,0x40,0x80,0x40,0x3F,0x00,0x00,) j! x- H8 I& V
/ o( O3 v0 i) C' r B- "模", 0x10,0x10,0xD0,0xFF,0x94,0x14,0xE4,0xBF,0xA4,0xA4,0xA4,0xBF,0xF4,0x26,0x04,0x00," J0 U. E- [7 I+ r& ?: I
- 0x04,0x03,0x00,0xFF,0x08,0x89,0x8B,0x4A,0x2A,0x1E,0x2A,0x2A,0x4B,0xC8,0x48,0x00,
- z, y, y- a2 [7 a3 A9 u/ g$ S - : P0 B1 D ^; y4 S6 e h
- "式", 0x10,0x10,0x90,0x90,0x90,0x90,0x90,0x10,0xFF,0x10,0x12,0x14,0x10,0x18,0x10,0x00,! r, I; D- @( `6 O, X' J
- 0x00,0x20,0x60,0x20,0x1F,0x10,0x10,0x08,0x01,0x06,0x18,0x20,0x40,0x80,0x70,0x00,3 C, P4 {1 A) y" y$ S' P
- 2 G! W3 C8 g& g4 _% a+ H
- "开", 0x80,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0x82,0x82,0xFE,0x82,0x83,0xC2,0x80,0x00,) }" v" ]2 q1 W$ H" `8 R A; S$ A+ L
- 0x00,0x80,0x40,0x30,0x0F,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,5 t. v- b; c2 D+ y: }
- ) r( I, S9 u" H( `# l+ ~+ s
- "启", 0x00,0x00,0x00,0xFC,0x44,0x44,0x44,0x45,0x46,0x44,0x44,0x44,0x44,0x7E,0x04,0x00,
Q' c: c8 y+ Y9 z - 0x40,0x20,0x18,0x07,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFF,0x02,0x00,
8 r! S- z& V) z _0 l - 9 v+ O/ U, x1 z0 u7 h8 H O: f
- "关", 0x00,0x10,0x10,0x11,0x12,0x1C,0x10,0xF0,0x10,0x18,0x14,0x13,0x1A,0x90,0x00,0x00,. ~( L7 F" Z6 a4 v
- 0x81,0x81,0x41,0x41,0x21,0x11,0x0D,0x03,0x0D,0x11,0x21,0x21,0x41,0xC1,0x41,0x00,
& D7 i% X6 _ h( `% G5 u) Q: v% a - 2 y( j4 R& r+ `6 @' x" r4 ^
- "闭", 0x00,0xF8,0x01,0x22,0x26,0x20,0x22,0xA2,0xFA,0x22,0x32,0x22,0x02,0xFF,0x02,0x00,0 Q3 U3 G: m; m8 H: X
- 0x00,0xFF,0x00,0x08,0x04,0x02,0x21,0x40,0x3F,0x00,0x00,0x40,0x80,0x7F,0x00,0x003 q( v) E, K1 I* T, W" }+ I
- //<- end
% S0 m$ u) z/ |" C3 T - };
' A o6 Z& b6 p% k0 ^) c( K5 A
复制代码 8 Y6 m7 Y! t* j- d6 l4 f
- ]8 E: Q* w% Y1 x& O K7 o7 S+ a+ } Z
|
bsp_lcd12864.c: x- \( B9 A- w; Z% c
bsp_lcd12864.h) |6 P9 F: k( A% k1 B
font.c
阅读权限: 10
LCD12864,工厂里的机器上用的较多~