📄 12864.lst
字号:
C51 COMPILER V7.01 12864 04/10/2006 11:29:10 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE 12864
OBJECT MODULE PLACED IN E:\ZHAOM\程序\HD61202\12864\12864.OBJ
COMPILER INVOKED BY: d:\wave\keil\C51\BIN\C51.EXE E:\ZHAOM\程序\HD61202\12864\12864.C DB SB OE OT(2)
stmt level source
1 #include<reg51.h>
2 #include<stdio.h>
3 #define uchar unsigned char
4 uchar data Column;/*定义列*/
5 uchar data Page;/*定义页*/
6 uchar *p;/*建立数组指针*/
7 uchar data i,j,k,Disp_Page;
8 uchar data z;/*汉字数组的页,为实际点阵列数除以8*/
9 uchar data y;/*汉字数组的列,为实际点阵行数*/
10 uchar q;/*判忙*/
11 sbit E=P3^4;/*读写使能信号,1有效*/
12 sbit R_W=P3^3;/*读写选择信号;1为读选通,0为写选通*/
13 sbit D_I=P3^2;/*数据指令选择信号;1为数据操作,0为写指令或读状态*/
14 sbit CSB=P3^6;
15 sbit CSA=P3^5;/*芯片片选信号*/
16 char code Hanzi[126][3]= /*汉字数组*/
17 {
18 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,
19 0x7E,0x00,0x20,0x7E,0x00,0x60,0x07,0x00,0xF1,0x2F,0x00,0xFF,0x7F,0x00,0xFF,0xFF,
20 0x01,0xFE,0xFF,0x01,0xD8,0xFF,0x00,0xD8,0xD7,0x01,0x88,0xF0,0x01,0x80,0xFF,0x01,
21 0x80,0x7F,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
22 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x01,0x00,0x80,0x03,0x00,0xC0,0xC3,
23 0x03,0xE0,0xC9,0x03,0xE0,0xDC,0x00,0xF0,0xCE,0x01,0xFE,0x5F,0x01,0xFE,0xFF,0x03,
24 0xFC,0xFF,0x03,0xFC,0x27,0x00,0x70,0xA7,0x00,0x30,0xE0,0x01,0x00,0xC0,0x01,0x00,
25 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
26 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0xE0,0x7F,0x00,
27 0xE0,0xE3,0x00,0xC8,0xF7,0x00,0xEC,0xFE,0x00,0xEC,0xBF,0x00,0xEC,0xBF,0x01,0xEC,
28 0xBF,0x01,0x04,0x9F,0x01,0x1C,0xC7,0x01,0xF8,0xFF,0x01,0xF0,0xFF,0x00,0x80,0x7F,
29 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
30 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x80,0x01,0x00,0x98,0x01,0x78,
31 0xB8,0x01,0xF8,0xD9,0x00,0xF0,0xFD,0x00,0xFE,0xFF,0x00,0xFE,0xF7,0x00,0xFE,0xFF,
32 0x00,0xFA,0xFF,0x00,0x7E,0xCE,0x00,0x3C,0xCE,0x00,0x18,0xC0,0x00,0x00,0xC0,0x01,
33 0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
34 0x00,0x00,0x00,0x00,0x00,0x80,0x03,0x00,0x80,0x1F,0x00,0x80,0x3F,0x00,0xC0,0x3E,
35 0x00,0xCC,0x3F,0x00,0xFE,0x7F,0x00,0xFC,0xFF,0x00,0xF8,0xDF,0x00,0x20,0xDF,0x00,
36 0x20,0xDF,0x00,0xE0,0xC7,0x00,0xE0,0xC3,0x00,0xC0,0x01,0x00,0x00,0x00,0x00,0x00,
37 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
38 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x30,0x3E,0x00,
39 0x3C,0x6E,0x00,0x3E,0xC7,0x00,0xFC,0x83,0x01,0xF6,0x81,0x01,0xFF,0xFF,0x01,0xDF,
40 0xFF,0x01,0x8E,0x7F,0x00,0x86,0x03,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,
41 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
42 };
43 void WCom_L(uchar);/*写左半屏指令*/
44 void WCom_R(uchar);/*写右半屏指令*/
45 void Clearlcd();/*清屏*/
46 void Imim();/*初始化*/
47 void Dat_L(uchar);/*送左半屏显示*/
48 void Dat_R(uchar);/*送右半屏显示*/
49 void Delay();/*延时*/
50 void W_byte();/*写一个字节*/
51 void Hanz();/*写汉字*/
52 /********************主程序********************/
53 void main()
54 {
55 1 uchar data asd;
C51 COMPILER V7.01 12864 04/10/2006 11:29:10 PAGE 2
56 1 Delay();
57 1 Delay();
58 1 Delay();/*延时*/
59 1 Imim();/*初始化*/
60 1 p=Hanzi;/*指针指向数组的首地址*/
*** WARNING C182 IN LINE 60 OF E:\ZHAOM\程序\HD61202\12864\12864.C: pointer to different objects
61 1 Page=2; /*自定义,液晶上显示汉字的起始页*/
62 1 Column=1;/*自定义,液晶上显示汉字的起始列*/
63 1 y=126;
64 1 z=3;
65 1 Hanz();/*写汉字程序*/
66 1 loop:
67 1 goto loop;
68 1 }
*** WARNING C280 IN LINE 55 OF E:\ZHAOM\程序\HD61202\12864\12864.C: 'asd': unreferenced local variable
69
70 /********************写左半屏指令子程序********************/
71 void WCOM_L(uchar d) /*写指令程序*/
72 {
73 1 CSA=1;/*左半屏片选*/
74 1 R_W=1;
75 1 D_I=0;/*读状态指令*/
76 1 Loop1:
77 1 P1=0xFF;
78 1 E=1;/*使能*/
79 1 q=P1;
80 1 E=0;
81 1 if(q&0x80)
82 1 {
83 2 goto Loop1;
84 2 }/*判断左半屏是否忙*/
85 1 R_W=0;/*写数据*/
86 1 P1=d;
87 1 E=1;
88 1 E=0;
89 1 CSA=0;
90 1 CSB=0;/*屏处于未选状态*/
91 1 }
92 /********************写右半屏指令子程序********************/
93 void WCOM_R(uchar d) /*写指令程序*/
94 {
95 1 CSB=1;/*右半屏片选*/
96 1 R_W=1;
97 1 D_I=0;
98 1 Loop2:
99 1 P1=0xFF;
100 1 E=1;/*使能*/
101 1 q=P1;
102 1 E=0;
103 1 if(q&0x80)
104 1 {
105 2 goto Loop2;
106 2 }/*判断右半屏是否忙*/
107 1 R_W=0;/*写数据*/
108 1 P1=d;
109 1 E=1;
110 1 E=0;
111 1 CSA=0;
112 1 CSB=0;/*屏处于未选状态*/
113 1 }
114 /********************送左半屏显示字符子程序********************/
115 void Dat_L(uchar d)
C51 COMPILER V7.01 12864 04/10/2006 11:29:10 PAGE 3
116 {
117 1 CSA=1;/*右半屏片选*/
118 1 R_W=1;
119 1 D_I=0;
120 1 Loop1:
121 1 P1=0xFF;
122 1 E=1;/*使能*/
123 1 q=P1;
124 1 E=0;
125 1 if(q&0x80)
126 1 {
127 2 goto Loop1;
128 2 }/*判忙*/
129 1 D_I=1;
130 1 R_W=0;/*写数据指令*/
131 1 P1=d;
132 1 E=1;
133 1 E=0;
134 1 CSA=0;
135 1 CSB=0;
136 1 }
137 /********************送右半屏显示字符子程序********************/
138 void Dat_R(uchar d)
139 {
140 1 CSB=1;/*右半屏片选*/
141 1 R_W=1;
142 1 D_I=0;
143 1 Loop2:
144 1 P1=0xFF;
145 1 E=1;/*使能*/
146 1 q=P1;
147 1 E=0;
148 1 if(q&0x80)
149 1 {
150 2 goto Loop2;
151 2 }/*判忙*/
152 1 D_I=1;
153 1 R_W=0;/*写数据指令*/
154 1 P1=d;
155 1 E=1;
156 1 E=0;
157 1 CSA=0;
158 1 CSB=0;
159 1 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -