|
本帖最后由 caizhiwei 于 2015-1-14 22:21 编辑 这是很久以前写好的,一直没有贴出来,希望朋友们能直接用上,你也可以在这个基础上进一步完善!/ U& R; w- x# Q& C; h/ ? S 以下是部分参数说明:' Z* V# O7 |, T- Y ●84x48 的点阵LCD,可以显示4行汉字,每行最多7个: l$ U o' O& q+ z ●PCD8544的通信协议是一种没有MISO只有MOSI的SPI协议,如果单片机有富裕的 SPI接口,也可以利用硬件SPI,(如AVR单片机的SPI、MCS51 的串口模式0等) ,传输速率高达4Mbps,可全速写入显示数据. @7 {9 t1 B1 @% {4 [ ●可通过导电胶连接模块与印制版,而不用连接电缆,用模块上的金属钩可将模5 [$ c0 U7 z1 Y. | 块固定到印制板上,因而非常便于安装和更换。 ●LCD 控制器/驱动器芯片PCD8544已绑定到LCD 晶片上,模块的体积很小。$ V2 Q4 S, P: y8 R4 h ●采用低电压供电,正常显示时的工作电流在200μA 以下,且具有掉电模式。& A) ?0 [/ t# L5 J ●编程中的数据要+0x30变为ASII码才能正确显示。 额定电压:+3.3V ; y2 {1 J C8 i" ` K( U0 }( r display : 全屏6行(6个page),每行14个 Map : ______________ X (0~83)1bit/X( x- f- C2 t$ u# ] |1 o) _2 q1 Y8 f4 ] | | |! `# O4 H# w* }( O4 v! D | | Y(0~5)8bit/Y) z* Y" W5 ]: ?8 G t4 U' D ) p; l* ]0 R; ^ V1.0 完成6X8字符显示 V1.1 新增汉字12X12,16X16显示功能 8 [- ?% v7 S2 X2 B V1.2 新增8X16字符显示功能 ///////////////////////////////////////////////////////& b. R1 b/ {! } ^4 y //------------------------------------/ //9 i1 j) u; [# S* f w+ |: q // SCE ------------PA5 //片选 //1 r) `) H3 h" I) P( e5 u // RST ------------PA4 //位选 // // D/C ------------PA3 // 1写数据,0写指令 // // SD ------------PA2 //数据 //8 I. ]: N0 ~# B7 q0 z // SCLK ------------PA1 //时钟 //$ V" I1 ?' A! w- L4 x // LCD ------------PA0 //背光+ Z6 e. [, M, |* O // /////////////////////////////////////////////////////// 5 ^5 b* N* y7 f6 E
#define sce0 GPIO_ResetBits(GPIOB, GPIO_Pin_6) //片选 #define res0 GPIO_ResetBits(GPIOB, GPIO_Pin_7) //复位,0复位& q" l w1 n- n6 e) ~ #define dc0 GPIO_ResetBits(GPIOB, GPIO_Pin_8) //1写数据,0写指令 #define sdin0 GPIO_ResetBits(GPIOB, GPIO_Pin_9) //数据 #define sclk0 GPIO_ResetBits(GPIOB, GPIO_Pin_10) //时钟" v& Q+ ]. G& q# G. c, O & L9 B6 g+ f4 q! b #define sce1 GPIO_SetBits(GPIOB, GPIO_Pin_6) //片选 #define res1 GPIO_SetBits(GPIOB, GPIO_Pin_7) //复位,0复位9 l" q4 h; @ a/ G _, u( T! A #define dc1 GPIO_SetBits(GPIOB, GPIO_Pin_8) //1写数据,0写指令 #define sdin1 GPIO_SetBits(GPIOB, GPIO_Pin_9) //数据 #define sclk1 GPIO_SetBits(GPIOB, GPIO_Pin_10) //时钟+ h( u8 E# g6 {0 H // const unsigned char Font6x8[][6]; //用于main.c中调用. z! Z1 H/ V3 _7 _3 o+ Y // extern const unsigned char Font12x12[]; // extern const unsigned char Font16x16[]; extern const unsigned char LogoBmp[]; void LCD_WriteByte(unsigned char dt, unsigned char command);3 f) o0 X/ L' h void LCD_Init(void); void LCD_Set_XY(unsigned char X, unsigned char Y);" N& U' A, ?8 J3 o- h void LCD_Clear(void); / B- ~' u r! ~6 k void LCD_WriteChar_6X8(unsigned char X,unsigned char Y,unsigned char c,unsigned char reverse); void LCD_WriteStr_6X8(unsigned char X,unsigned char Y,unsigned char *s,unsigned char reverse); void LCD_WriteChar_8x16(u8 x, u8 y, u8 c_dat,u8 reverse); void LCD_WriteStr_8x16(u8 x, u8 y, u8 *s_dat,u8 reverse);" q* J; t% i# b& f& i, j) l7 u2 C void LCD_WriteNumber(unsigned char x,unsigned char y, unsigned long number); T5 L2 Z: f/ Y% ]3 Y& N void LCD_WriteChinese_12x12(unsigned char row, unsigned char page,unsigned char start_with,unsigned char N) ;# t3 M5 m7 x" \5 j void LCD_WriteChinese_16x16(unsigned char X, unsigned char Y,unsigned char total,\6 Y" D1 s5 j( T4 A$ Z/ t unsigned char start_with,unsigned char reverse); void LCD_DrawBmp(unsigned char X,unsigned char Y,const unsigned char *map,\5 X, L/ U% h/ p$ q ! W/ F7 s1 O( I# p unsigned char bmp_x,unsigned char bmp_y); MDK工程源码下载:
LCD5110驱å¨V1.2.zip
(331.88 KB, 下载次数: 43)
|
微信公众号
手机版
2 z/ T# E7 _1 S& U/ w' ]4 z
这个有反显吗?直至倒过来拍张照?
“Test”字符就是反显的啦,字符和汉字都有反显的
不客气不客气,以后估计不会搞这个屏了因为停产很多年了,玩玩还是可以滴