📄 driver.lst
字号:
C51 COMPILER V6.23a DRIVER 04/07/2007 15:44:02 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE DRIVER
OBJECT MODULE PLACED IN driver.OBJ
COMPILER INVOKED BY: e:\mcs51\Keil\C51\BIN\C51.EXE driver.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<MABIAO.h>
2 #include<reg52.h>
3 #include<absacc.h>
4
5 #define disp_on 0x3f
6 #define disp_off 0x3e
7 #define page_0 0xb8
8 #define col_0 0x40
9 #define line_0 0xc0
10
11 #define cs XBYTE[0X8000]
12 #define wc XBYTE[0XA000]
13 #define wd XBYTE[0XA001]
14 #define bs XBYTE[0XA002]
15 #define uchar unsigned char
16 #define uint unsigned int
17
18 extern uchar flag1,zhi;
19 extern bit flag2;
20 bit flag3,flag4;
21 uchar wjs1,wjs2,le,p,js=1;
22 uchar a[3],b[3];
23 uint BAUD=9600;
24
25 void delay(uint j)
26 {
27 1 uint i;
28 1 for(i=0;i<j;i++);
29 1 }
30
31 void lcdbusy()
32 {
33 1 while((bs&0x80)!=0);
34 1 }
35
36 void write_command(uchar cmd)
37 {
38 1 lcdbusy();
39 1 wc=cmd;
40 1 }
41
42 void write_data(uchar dat)
43 {
44 1 lcdbusy();
45 1 wd=dat;
46 1 }
47
48 void lcd_init()
49 {
50 1 write_command(disp_off);
51 1 cs=0x30;
52 1 write_command(line_0);
53 1 write_command(page_0);
54 1 write_command(col_0);
55 1 write_command(disp_on);
C51 COMPILER V6.23a DRIVER 04/07/2007 15:44:02 PAGE 2
56 1 delay(20);
57 1 }
58
59 void clr_scr()
60 {
61 1 uchar i,j;
62 1 cs=0x10;
63 1 for(i=0;i<8;i++)
64 1 {
65 2 write_command(page_0+i);
66 2 write_command(col_0);
67 2 for(j=0;j<64;j++)
68 2 write_data(0x00);
69 2 }
70 1 cs=0x20;
71 1 for(i=0;i<8;i++)
72 1 {
73 2 write_command(page_0+i);
74 2 write_command(col_0);
75 2 for(j=0;j<64;j++)
76 2 write_data(0x00);
77 2 }
78 1 }
79
80 void sz_disp(uchar page,uchar col,uchar *p)
81 {
82 1 uchar i,j;
83 1 for(i=0;i<2;i++)
84 1 {
85 2 write_command(page_0+page+i);
86 2 write_command(col_0+col);
87 2 for(j=0;j<8;j++)
88 2 write_data(*p++);
89 2 }
90 1 }
91
92 void hz_disp(uchar page,uchar col,uchar *p)
93 {
94 1 uchar i,j;
95 1 for(i=0;i<2;i++)
96 1 {
97 2 write_command(page_0+page+i);
98 2 write_command(col_0+col);
99 2 for(j=0;j<16;j++)
100 2 write_data(*p++);
101 2 }
102 1 }
103
104 void start_msg()
105 {
106 1 clr_scr();
107 1 delay(100);
108 1 cs=0x10;
109 1 hz_disp(0,0,jiantou);
110 1 sz_disp(0,16,&shuzi[16]);
111 1 hz_disp(0,32,hz);
112 1 hz_disp(0,48,&hz[32]);
113 1 sz_disp(2,16,&shuzi[32]);
114 1 hz_disp(2,32,&hz[32*4]);
115 1 hz_disp(2,48,&hz[32*5]);
116 1 sz_disp(4,16,&shuzi[48]);
117 1 hz_disp(4,32,&hz[32*9]);
C51 COMPILER V6.23a DRIVER 04/07/2007 15:44:02 PAGE 3
118 1 hz_disp(4,48,&hz[32*10]);
119 1 cs=0x20;
120 1 hz_disp(0,0,&hz[32*2]);
121 1 hz_disp(0,16,&hz[32*3]);
122 1 hz_disp(2,0,&hz[32*6]);
123 1 hz_disp(2,16,&hz[32*7]);
124 1 hz_disp(2,32,&hz[32*8]);
125 1 hz_disp(4,0,&hz[32*11]);
126 1 hz_disp(4,16,&hz[32*12]);
127 1 }
128
129 void bxcsh()
130 {
131 1 unsigned i,j;
132 1 clr_scr();
133 1 cs=0x10;
134 1 for(i=0;i<8;i++)
135 1 {
136 2 write_command(page_0+i);
137 2 write_command(col_0);
138 2 for(j=0;j<64;j++)
139 2 write_data(boxin_img[i*128+j]);
140 2 }
141 1 cs=0x20;
142 1 for(i=0;i<8;i++)
143 1 {
144 2 write_command(page_0+i);
145 2 write_command(col_0);
146 2 for(j=64;j<128;j++)
147 2 write_data(boxin_img[i*128+j]);
148 2 }
149 1 }
150
151 void xuanze()
152 {
153 1 clr_scr();
154 1 cs=0x10;
155 1 hz_disp(0,0,jiantou);
156 1 sz_disp(0,16,&shuzi[16]);
157 1 sz_disp(0,32,&shuzi[16*9]);
158 1 sz_disp(0,40,&shuzi[16*6]);
159 1 sz_disp(0,48,shuzi);
160 1 sz_disp(0,56,shuzi);
161 1 sz_disp(2,16,&shuzi[16*2]);
162 1 sz_disp(2,32,&shuzi[16*4]);
163 1 sz_disp(2,40,&shuzi[16*8]);
164 1 sz_disp(2,48,shuzi);
165 1 sz_disp(2,56,shuzi);
166 1 sz_disp(4,16,&shuzi[16*3]);
167 1 sz_disp(4,32,&shuzi[16*2]);
168 1 sz_disp(4,40,&shuzi[16*4]);
169 1 sz_disp(4,48,shuzi);
170 1 sz_disp(4,56,shuzi);
171 1 }
172
173 void fuzhi()
174 {
175 1 clr_scr();
176 1 cs=0x10;
177 1 hz_disp(2,0,&hz[32*13]);
178 1 hz_disp(2,16,&hz[32*14]);
179 1 hz_disp(2,32,&hz[32*15]);
C51 COMPILER V6.23a DRIVER 04/07/2007 15:44:02 PAGE 4
180 1 hz_disp(2,48,&hz[32*16]);
181 1 }
182
183 void zhixs()
184 {
185 1 uint i;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -