?? 12864.lst
字號(hào):
C51 COMPILER V6.12 12864 04/05/2008 19:37:37 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE 12864
OBJECT MODULE PLACED IN 12864.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 12864.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /******************************************************************************
2 *程序說明: 本程序是128-64型液晶的驅(qū)動(dòng)程序, *
3 * *
4 * *
5 * *
6 *******************************************************************************
7 /*---------------------------------------------------------------------------
8 接口連接:
9 1.(CSA)--P3.2 2.(CSB)--P3.3 3.(GND) 4.(VDD) 5.(V0)
10 6.(D/I)--P3.4 7.(R/W)--P3.5 8.(E)--P3.6 17.(A) 18.(K)
11 9-16(DB0-DB7)--(P1.0-P1.7)
12 sbit RS = P2^0;
13 sbit RW = P2^1;
14 sbit E = P1^0;
15 sbit CS1 = P2^2;
16 sbit CS2 = P2^3;
17 -------------------------------------------------------------------------------*/
18 #include<regx51.h>
*** ERROR 318 IN LINE 18 OF 12864.c: can't open file 'regx51.h'
19 #include<stdio.h>
20 #include<intrins.h>
21
22
23 #define DI P2_0
24 #define RW P2_1
25 #define E P1_0
26 #define E1 P2_2
27 #define E2 P2_3
28 #define setxM(x) {writeM(0xC0|x);} // 192
29 #define setyM(y) {writeM(0x40|y);} // 64
30 #define setxS(x) {writeS(0xC0|x);} //
31 #define setyS(y) {writeS(0x40|y);} //
32
33 void delay10ms(int n);
34 void delay1ms(unsigned char n);
35 void clrsceen(void);
36 void reset(void);
37 void writeM(unsigned char i);
38 void writeS(unsigned char i);
39 void readM(unsigned char i);
40 void readS(unsigned char i);
41 void setpage(unsigned char pageM,unsigned char pageS);
42
43 void display1(unsigned char x,unsigned char y,unsigned char page,unsigned char *array,unsigned char width)
-;
44 void display2(unsigned char x,unsigned char y,unsigned char page,unsigned char *array,unsigned char width)
-;
45
46 void page(unsigned char i);
47 void main(void);
48 unsigned char code arrayadress1[][32];
49 unsigned char code arrayadress2[][16];
50 /*--------------------------------------------------------------------------
51 函數(shù)名:delay1ms/delay10ms
52 功 能:延時(shí)
C51 COMPILER V6.12 12864 04/05/2008 19:37:37 PAGE 2
53 說 明:
54 設(shè)計(jì)人:
55 時(shí) 間:
56 -----------------------------------------------------------------------------*/
57 void delay1ms(unsigned char n)
58 {
59 1 unsigned char i,j;
60 1 for(i=0;i<n;i++)
61 1 for(j=0;j<120;j++);
62 1 }
63 /*---------------------------------------------------------------------------------*/
64 void delay10ms(int n)
65 {
66 1 int i;
67 1 unsigned char j,k;
68 1 for(i=0;i<n;i++)
69 1 for(j=0;j<10;j++)
70 1 for(k=0;k<120;k++);
71 1 }
72 /*--------------------------------------------------------------------------
73 函數(shù)名:clrsceen()
74 功 能:清屏子程序
75 說 明:
76 設(shè)計(jì)人:
77 時(shí) 間:
78 -----------------------------------------------------------------------------*/
79 void clrsceen(void)
80 {
81 1 unsigned char x;
82 1 unsigned char y;
83 1 unsigned char i;
84 1 i=0;
85 1 page(i);
86 1 for(x=0;x<=7;x++)
87 1 {
88 2 for(y=0;y<=64;y++)
89 2 {
90 3 writeM(0x00);
91 3 writeS(0x00);
92 3 }
93 2 i+=1;
94 2 page(i);
95 2 }
96 1 }
97 /*--------------------------------------------------------------------------
98 函數(shù)名:reset()
99 功 能:初始化子程序
100 說 明:
101 設(shè)計(jì)人:
102 時(shí) 間:
103 -----------------------------------------------------------------------------*/
104 void reset(void)
105 {
106 1 writeM(0x3F);writeS(0x3F);
107 1 writeM(0xC0);writeS(0xC0);
108 1 }
109 /*--------------------------------------------------------------------------
110 函數(shù)名:page()
111 功 能:選擇輸出頁面
112 說 明:
113 設(shè)計(jì)人:
114 時(shí) 間:
C51 COMPILER V6.12 12864 04/05/2008 19:37:37 PAGE 3
115 -----------------------------------------------------------------------------*/
116 void page(unsigned char i)
117 {
118 1 unsigned char layer;
119 1 if(i==0)
120 1 layer=0;
121 1 if(i==1)
122 1 layer=1;
123 1 if(i==2)
124 1 layer=2;
125 1 if(i==3)
126 1 layer=3;
127 1 if(i==4)
128 1 layer=4;
129 1 if(i==5)
130 1 layer=5;
131 1 if(i==6)
132 1 layer=6;
133 1 if(i==7)
134 1 layer=7;
135 1 setpage(layer,layer);
136 1 }
137
138 /*--------------------------------------------------------------------------
139 函數(shù)名:writeM()
140 功 能:主控制寫狀態(tài)
141 說 明:主控制
142 設(shè)計(jì)人:
143 時(shí) 間:
144 -----------------------------------------------------------------------------*/
145 void writeM(unsigned char i)
146 {
147 1 do
148 1 {
149 2 E=0;E1=0;
*** ERROR C202 IN LINE 149 OF 12864.C: 'P1_0': undefined identifier
*** ERROR C202 IN LINE 149 OF 12864.C: 'P2_2': undefined identifier
150 2 RW=0; DI=1; E1=1;_nop_(); //主控制器發(fā)送數(shù)據(jù)//
*** ERROR C202 IN LINE 150 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 150 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 150 OF 12864.C: 'P2_2': undefined identifier
151 2 }
152 1 while(P0&0x80); //判斷主控制器是否數(shù)據(jù)發(fā)送完/忙?//
*** ERROR C202 IN LINE 152 OF 12864.C: 'P0': undefined identifier
153 1 E1=0;
154 1 DI=0;RW=0;E1=1;_nop_();
*** ERROR C202 IN LINE 154 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 154 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 154 OF 12864.C: 'P2_2': undefined identifier
155 1 P1=i;_nop_(); E1=0; //低電平時(shí)發(fā)指令
*** ERROR C202 IN LINE 155 OF 12864.C: 'P1': undefined identifier
*** ERROR C202 IN LINE 155 OF 12864.C: 'P2_2': undefined identifier
156 1 }
157 /*--------------------------------------------------------------------------
158 函數(shù)名:writeS()
159 功 能:從控制寫狀態(tài)
160 說 明:從控制
161 設(shè)計(jì)人:YANGKEZHONG
162 時(shí) 間:2005.7.13
163 -----------------------------------------------------------------------------*/
164 void writeS(unsigned char i)
165 {
C51 COMPILER V6.12 12864 04/05/2008 19:37:37 PAGE 4
166 1 do
167 1 {
168 2 E=0;E2=0;
*** ERROR C202 IN LINE 168 OF 12864.C: 'P1_0': undefined identifier
*** ERROR C202 IN LINE 168 OF 12864.C: 'P2_3': undefined identifier
169 2 RW=0; DI=1; E2=1;_nop_(); //判斷主控制器忙?//
*** ERROR C202 IN LINE 169 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 169 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 169 OF 12864.C: 'P2_3': undefined identifier
170 2 }
171 1 while(P0&0x80);
*** ERROR C202 IN LINE 171 OF 12864.C: 'P0': undefined identifier
172 1 E2=0;
173 1 DI=0;RW=0;E2=1;_nop_();
*** ERROR C202 IN LINE 173 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 173 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 173 OF 12864.C: 'P2_3': undefined identifier
174 1 P1=i;_nop_(); E2=0;
*** ERROR C202 IN LINE 174 OF 12864.C: 'P1': undefined identifier
*** ERROR C202 IN LINE 174 OF 12864.C: 'P2_3': undefined identifier
175 1 }
176 /*--------------------------------------------------------------------------
177 函數(shù)名:readM()
178 功 能:主控制器讀狀態(tài)
179 說 明:主控制
180 設(shè)計(jì)人:YANGKEZHONG
181 時(shí) 間:2005.7.13
182 -----------------------------------------------------------------------------*/
183 void readM(unsigned char i)
184 {
185 1 do
186 1 {
187 2 E=0; E1=0;
*** ERROR C202 IN LINE 187 OF 12864.C: 'P1_0': undefined identifier
*** ERROR C202 IN LINE 187 OF 12864.C: 'P2_2': undefined identifier
188 2 RW=0; DI=1; E1=1; _nop_(); //判斷主控制器忙?//
*** ERROR C202 IN LINE 188 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 188 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 188 OF 12864.C: 'P2_2': undefined identifier
189 2 }
190 1 while(P1&0x80);
*** ERROR C202 IN LINE 190 OF 12864.C: 'P1': undefined identifier
191 1 E1=0;
192 1 DI=0; RW=1; E1=1;_nop_();
*** ERROR C202 IN LINE 192 OF 12864.C: 'P2_0': undefined identifier
*** ERROR C202 IN LINE 192 OF 12864.C: 'P2_1': undefined identifier
*** ERROR C202 IN LINE 192 OF 12864.C: 'P2_2': undefined identifier
193 1 P1=i; _nop_();E1=0; //低電平時(shí)發(fā)數(shù)據(jù)//
*** ERROR C202 IN LINE 193 OF 12864.C: 'P1': undefined identifier
*** ERROR C202 IN LINE 193 OF 12864.C: 'P2_2': undefined identifier
194 1 }
195 /*--------------------------------------------------------------------------
196 函數(shù)名:readS()
197 功 能:從控制器讀狀態(tài)
198 說 明:從控制
199 設(shè)計(jì)人:YANGKEZHONG
200 時(shí) 間:2005.7.13
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -