📄 lcd.lst
字号:
C51 COMPILER V8.02 LCD 11/01/2008 07:36:25 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE lcd.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2
3 #include< reg52.h >
4 #include" lcd.h "
5
6 uchar Second,Minute,Hour;uint count;
7 bit Flag=0;
8 bit TimeFlag=0;
9 extern uchar Pass;
10
11 const unsigned char code Asc[][16]={
12
13 {0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00},/*"0",*/
14
15 {0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},/*"1",*/
16
17 {0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00},/*"2",*/
18
19 {0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00},/*"3",*/
20
21 {0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00},/*"4",*/
22
23 {0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00},/*"5",*/
24
25 {0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00},/*"6",*/
26
27 {0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00},/*"7",*/
28
29 {0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00},/*"8",*/
30
31 {0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00},/*"9",*/
32
33 {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"",*/
34
35
36
37 };
38
39 const unsigned char code ciu[]=
40 {
41 /*推 CCDC6 */
42 0x08,0x08,0x08,0xFF,0x88,0x28,0x10,0xFF,0x4A,0x48,0x49,0xFE,0x48,0x48,0x48,0x00,
43 0x02,0x42,0x81,0x7F,0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x00
44 };
45 const unsigned char code xiang[]=
46 {
47 /*箱 CCFE4 */
48 0x10,0x88,0x87,0x82,0xF6,0x8A,0x82,0x12,0xE8,0x27,0x22,0x26,0x3A,0xE2,0x02,0x00,
49 0x20,0x10,0x0C,0x03,0xFF,0x02,0x0C,0x00,0xFF,0x49,0x49,0x49,0x49,0xFF,0x00,0x00
50 };
51 const unsigned char code zi[]=
52 {
53 /*子 CD7D3 */
54 0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xE2,0x12,0x0A,0x06,0x02,0x00,0x80,0x00,0x00,
55 0x01,0x01,0x01,0x01,0x01,0x41,0x81,0x7F,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00
C51 COMPILER V8.02 LCD 11/01/2008 07:36:25 PAGE 2
56
57 };
58
59 const unsigned char code di[]=
60 {0x10,0x08,0x04,0xD3,0x56,0x5A,0x52,0x5A,0xF4,0x53,0x56,0x5A,0x72,0x02,0x02,0x00,
61 0x00,0x20,0x20,0x23,0x12,0x12,0x0A,0x06,0xFF,0x02,0x02,0x12,0x22,0x1E,0x00,0x00};/*"第",17*/
62
63 const unsigned char code guan[]=
64 {0x00,0x10,0x10,0x10,0x11,0x1E,0x14,0xF0,0x10,0x18,0x17,0x12,0x18,0x10,0x00,0x00,
65 0x01,0x81,0x41,0x21,0x11,0x09,0x05,0x03,0x05,0x09,0x31,0x61,0xC1,0x41,0x01,0x00};/*"关",2*/
66
67 unsigned char code chardot[][16] = {
68 /*a CHAR_61 */
69 {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20},
70
71 /*t CHAR_74 */
72 {0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00},
73
74 /*8 CHAR_38 */
75 {0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00},
76
77 /*9 CHAR_39 */
78 {0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00},
79
80 /*c CHAR_63 */
81 {0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00},
82
83 /*5 CHAR_35 */
84 {0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00},
85
86 /*@ CHAR_40 */
87 {0xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x00,0x07,0x18,0x27,0x24,0x23,0x14,0x0B,0x00},
88
89 /*1 CHAR_31 */
90 {0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},
91
92 /*6 CHAR_36 */
93 {0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00},
94
95 /*3 CHAR_33 */
96 {0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00},
97
98 /*. CHAR_2E */
99 {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00},
100
101 /*o CHAR_6F */
102 {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00},
103
104 /*m CHAR_6D */
105 {0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F},
106
107 {0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00}
108
109 };
110
111
112 unsigned char code hzdot[][32] = {
113 /*设 CC9E8 */
114 {0x40,0x41,0xCE,0x04,0x00,0x80,0x40,0xBE,0x82,0x82,0x82,0xBE,0xC0,0x40,0x40,0x00,
115 0x00,0x00,0x7F,0x20,0x90,0x80,0x40,0x43,0x2C,0x10,0x10,0x2C,0x43,0xC0,0x40,0x00},
116
117 /*计 CBCC6 */
C51 COMPILER V8.02 LCD 11/01/2008 07:36:25 PAGE 3
118 {0x20,0x21,0x2E,0xE4,0x00,0x00,0x20,0x20,0x20,0x20,0xFF,0x20,0x20,0x20,0x20,0x00,
119 0x00,0x00,0x00,0x7F,0x20,0x10,0x08,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},
120
121 /*制 CD6C6 */
122 {0x00,0x50,0x4F,0x4A,0x48,0xFF,0x48,0x48,0x48,0x00,0xFC,0x00,0x00,0xFF,0x00,0x00,
123 0x00,0x00,0x3F,0x01,0x01,0xFF,0x21,0x61,0x3F,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00},
124
125 /*作 CD7F7 */
126 {0x80,0x40,0x20,0xF8,0x07,0x22,0x18,0x0C,0xFB,0x48,0x48,0x48,0x68,0x48,0x08,0x00,
127 0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0xFF,0x04,0x04,0x04,0x04,0x06,0x04,0x00}
128
129 };
130
131
132
133 void Delay(unsigned int t)
134 {
135 1 unsigned int i,j;
136 1 for(i=0;i<t;i++)
137 1 for(j=0;j<10;j++)
138 1 ;
139 1 }
140
141 /*------------------写命令到LCD------------------------------*/
142 void LCDWriteCommand (uchar Dat)
143 {
144 1 //ReadData();
145 1 Di=0;
146 1 RW=0;
147 1 LcdBus=Dat;
148 1 Delay(0);
149 1 Enable=1;
150 1 Delay(0);
151 1 Enable=0;
152 1 }
153
154 /*-------------------写数据到LCD----------------------------*/
155 void LCDWriteData(uchar Dat)
156 {
157 1 //ReadData();
158 1 Di=1;
159 1 RW=0;
160 1 LcdBus=Dat;
161 1 Delay(0);
162 1 Enable=1;
163 1 Delay(0);
164 1 Enable=0;
165 1 }
166
167 /*------------------------读LCD数据----------------------------*/
168 /*
169 unsigned char ReadData()
170 {
171 unsigned char tmpin;
172 Di=1;
173 RW=1;
174 Delay(0);
175 Enable=1;
176 Delay(0);
177 Enable=0;
178
179 tmpin=LcdBus;
C51 COMPILER V8.02 LCD 11/01/2008 07:36:25 PAGE 4
180
181 return tmpin;
182 }
183 */
184
185 /*--------------------------指定位置显示汉字16*16-----------------------*/
186 void Disp16X16(unsigned char pag,unsigned char col, unsigned char code *HZK)
187 {
188 1 unsigned char j=0,i=0;
189 1 for(j=0;j<2;j++)
190 1 {
191 2 LCDWriteCommand(PageAdd+pag+j);
192 2 LCDWriteCommand(ColAdd+col);
193 2 for(i=0;i<16;i++) LCDWriteData(HZK[16*j+i]);
194 2 }
195 1 }
196
197 /*----------------------指定位置显示字母或数字8*16-----------------------*/
198 void Disp8X16(unsigned char pag,unsigned char col, unsigned char code *HZK)
199 {
200 1 unsigned char j=0,i=0;
201 1 for(j=0;j<2;j++)
202 1 {
203 2 LCDWriteCommand(PageAdd+pag+j);
204 2 LCDWriteCommand(ColAdd+col);
205 2 for(i=0;i<8;i++) LCDWriteData(HZK[8*j+i]);
206 2 }
207 1 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -