📄 ocm12864.lst
字号:
C51 COMPILER V8.02 OCM12864 12/03/2008 23:43:43 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE OCM12864
OBJECT MODULE PLACED IN ocm12864.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ocm12864.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*************************LCD12864驱动程序 应用电路 ******************************************/
2
3 #include <reg51.h>
4 #define uint unsigned int
5 #define uchar unsigned char
6 #define disp_off 0x3e //显示关标志位
7 #define disp_on 0x3f //显示开标志位
8 #define disp_x 0xb8
9 #define disp_z 0xc0
10 #define disp_y 0x40
11 #define command 0 //传送命令或数据选择
12 #define data 1 //
13
14
15 /*-------------------------端口定义说明---------------------------------*/
16
17 #define data_port P2 //单片机P2口为并行数据端口<--> LCD
18 sbit di =P3^7; //H:写数据(数据送入显示),L:写指令(数据送入命令)对应RS引脚
19 sbit rw =P3^6; // 读/写选择 H 读数据 L写数据
20 sbit e =P3^5; //读写使能 读/写使能 高电平有效 下降沿锁定数据
21 sbit cs1=P3^4; //cs1=H,选择左半屏
22 sbit cs2=P3^3; //cs2=H,选择右半屏
23 sbit rst=P3^2; //Lcm reset,低有效 复位信号
24 sbit bf =P2^7; //检测LCD忙引脚
25 sbit res=P2^4; //检测是否处于复位状态 为H处于复位 为L正常
26
27 unsigned char b=0;
28 unsigned char mir=0; //1/100秒
29 unsigned char second=0; //秒
30 unsigned char minite=0; //分
31 unsigned char hour=1; //时
32 unsigned char year=8;
33 unsigned char month=12;
34 unsigned char date=3;
35 unsigned char week=4;
36 unsigned char Temper=20;
37
38 unsigned char setnumber=1;
39 unsigned char setminite=0;
40 unsigned char sethour=12;
41 unsigned char setoff_on=1;
42 unsigned char settimeoff_on=0;
43 unsigned char settempoff_on=0;
44 unsigned char setdateoff_on=0;
45 unsigned char setdelayoff_on=0;
46 unsigned char falg=1;
47
48
49 /*---------------------------------------------------------------------------*/
50
51 uchar code digital1[]={ /*-- 楷体_GB231212; 此字体下对应的点阵为:宽x高=8x16 --*/
52 /*-- 数字: 0 --*/
53 0x00,0x00,0xF0,0x08,0x08,0x18,0xE0,0x00,0x00,0x00,0x0F,0x10,0x20,0x10,0x0F,0x00,
54
55 /*-- 数字: 1 --*/
C51 COMPILER V8.02 OCM12864 12/03/2008 23:43:43 PAGE 2
56 0x00,0x00,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x10,0x00,0x00,0x00,
57
58 /*-- 数字: 2 --*/
59 0x00,0x30,0x08,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x18,0x14,0x13,0x10,0x08,0x00,
60
61 /*-- 数字: 3 --*/
62 0x00,0x00,0x10,0x08,0x88,0x78,0x00,0x00,0x00,0x00,0x10,0x20,0x20,0x11,0x0E,0x00,
63
64 /*-- 数字: 4 --*/
65 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x1F,0x02,0x00,
66
67 /*-- 数字: 5 --*/
68 0x00,0x00,0x70,0x48,0xC8,0x88,0x00,0x00,0x00,0x10,0x10,0x20,0x10,0x0F,0x00,0x00,
69
70 /*-- 数字: 6 --*/
71 0x00,0x00,0xE0,0x90,0x88,0x80,0x00,0x00,0x00,0x07,0x18,0x20,0x20,0x19,0x06,0x00,
72
73 /*-- 数字: 7 --*/
74 0x00,0x10,0x08,0x08,0x88,0x78,0x00,0x00,0x00,0x00,0x00,0x18,0x07,0x00,0x00,0x00,
75
76 /*-- 数字: 8 --*/
77 0x00,0x00,0x78,0x88,0x88,0x78,0x00,0x00,0x00,0x0C,0x12,0x21,0x21,0x1E,0x00,0x00,
78
79 /*-- 数字: 9 --*/
80 0x00,0x60,0x98,0x08,0x08,0xF8,0xC0,0x00,0x00,0x00,0x21,0x12,0x09,0x07,0x00,0x00,
81
82 /*-- 文字: --*/
83 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
84
85 uchar code point[]={
86 /*-- 文字: : --*/
87 0x00,0x00,0x3C,0x3C,0x3C,0x3C,0x00,0x00,0x00,0x00,0x3C,0x3C,0x3C,0x3C,0x00,0x00,
88
89 /*-- 文字: - --*/
90 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
91
92 /*-- 文字: . --*/
93 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00};
94
95 /*---------------------------------------------------------------------------*/
96
97 uchar code digital2[]={ /*-- 楷体_GB231212; 此字体下对应的点阵为:宽x高=16x16 --*/
98
99 /*-- 文字: 一 --*/
100 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
101 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00,
102 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
103
104 /*-- 文字: 二 --*/
105 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
106 0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,0x00,0x00,
107 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00,
108
109 /*-- 文字: 三 --*/
110 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
111 0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00,
112 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
113
114 /*-- 文字: 四 --*/
115 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
116 0x00,0xFE,0x02,0x02,0x02,0xFE,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,
117 0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x22,0x7F,0x00,0x00,
C51 COMPILER V8.02 OCM12864 12/03/2008 23:43:43 PAGE 3
118
119 /*-- 文字: 五 --*/
120 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
121 0x00,0x02,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0xC2,0x82,0x02,0x00,0x00,0x00,
122 0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x30,0x20,0x00,
123
124 /*-- 文字: 六 --*/
125 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
126 0x10,0x10,0x10,0x10,0x10,0x91,0x12,0x1E,0x94,0x10,0x10,0x10,0x10,0x10,0x10,0x00,
127 0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x00,0x01,0x02,0x0C,0x78,0x30,0x00,0x00,
128
129 /*-- 文字: 日 --*/
130 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
131 0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,
132 0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00};
133
134
135 /*---------------------------------------------------------------------------*/
136
137 uchar code timepoint[]={/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
138 /*-- 文字: 时 --*/
139 0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00,
140 0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
141
142 /*-- 文字: 分 --*/
143 0x80,0x40,0x20,0x98,0x87,0x82,0x80,0x80,0x83,0x84,0x98,0x30,0x60,0xC0,0x40,0x00,
144 0x00,0x80,0x40,0x20,0x10,0x0F,0x00,0x00,0x20,0x40,0x3F,0x00,0x00,0x00,0x00,0x00,
145
146 /*-- 文字: 秒 --*/
147 0x12,0x12,0xD2,0xFE,0x91,0x11,0xC0,0x38,0x10,0x00,0xFF,0x00,0x08,0x10,0x60,0x00,
148 0x04,0x03,0x00,0xFF,0x00,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00,
149
150 /*-- 文字: 年 --*/
151 0x00,0x00,0x00,0x10,0xE8,0x24,0x27,0x24,0xFC,0x12,0x12,0x10,0x00,0x00,0x00,0x00,
152 0x02,0x02,0x02,0x02,0x01,0x01,0x01,0x01,0x7F,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
153
154 /*-- 文字: 月 --*/
155 0x00,0x00,0x00,0x00,0x00,0xFC,0x24,0x92,0x92,0x02,0xFE,0x00,0x00,0x00,0x00,0x00,
156 0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x10,0x20,0x1F,0x00,0x00,0x00,0x00,0x00,
157
158 /*-- 文字: 日 --*/
159 0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,
160 0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,
161
162 /*-- 文字: 星 --*/
163 0x00,0x00,0x00,0x00,0x8E,0x32,0x2A,0xEA,0xAA,0x91,0x91,0x0F,0x00,0x00,0x00,0x00,
164 0x00,0x24,0x22,0x21,0x21,0x25,0x25,0x3F,0x12,0x12,0x10,0x10,0x10,0x10,0x00,0x00,
165
166 /*-- 文字: 期 --*/
167 0x00,0x00,0x08,0x08,0xFE,0xA8,0x04,0xFF,0x04,0x00,0xF8,0x24,0x04,0xFC,0x00,0x00,
168 0x02,0x22,0x12,0x0A,0x07,0x02,0x06,0x49,0x21,0x18,0x07,0x01,0x10,0x3F,0x00,0x00};
169
170 /*---------------------------------------------------------------------------*/
171
172 uchar code setdisp[]={/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
173 /*-- 文字: 时 --*/
174 0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00,
175 0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
176
177 /*-- 文字: 间 --*/
178 0x00,0xF8,0x01,0x06,0x00,0xF0,0x92,0x92,0x92,0x92,0xF2,0x02,0x02,0xFE,0x00,0x00,
179 0x00,0xFF,0x00,0x00,0x00,0x07,0x04,0x04,0x04,0x04,0x07,0x40,0x80,0x7F,0x00,0x00,
C51 COMPILER V8.02 OCM12864 12/03/2008 23:43:43 PAGE 4
180
181 /*-- 文字: 日 --*/
182 0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,
183 0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,
184
185 /*-- 文字: 期 --*/
186 0x00,0x04,0xFF,0x54,0x54,0x54,0xFF,0x04,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x00,
187 0x42,0x22,0x1B,0x02,0x02,0x0A,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3F,0x00,0x00,
188
189 /*-- 文字: 温 --*/
190 0x10,0x21,0x86,0x70,0x00,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00,0x00,
191 0x02,0xFE,0x01,0x40,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x40,0x00,
192
193 /*-- 文字: 度 --*/
194 0x00,0x00,0xFC,0x04,0x24,0x24,0xFC,0xA5,0xA6,0xA4,0xFC,0x24,0x24,0x24,0x04,0x00,
195 0x80,0x60,0x1F,0x80,0x80,0x42,0x46,0x2A,0x12,0x12,0x2A,0x26,0x42,0xC0,0x40,0x00,
196
197 /*-- 文字: 定 --*/
198 0x00,0x10,0x0C,0xA4,0x24,0x24,0x25,0xE6,0x24,0x24,0x24,0x24,0x14,0x0C,0x04,0x00,
199 0x40,0x20,0x18,0x07,0x08,0x10,0x20,0x7F,0x42,0x42,0x42,0x42,0x40,0x40,0x00,0x00,
200
201 /*-- 文字: 时 --*/
202 0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00,
203 0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
204
205 /*-- 文字: 设 --*/
206 0x40,0x41,0xCE,0x04,0x00,0x80,0x40,0xBE,0x82,0x82,0x82,0xBE,0xC0,0x40,0x40,0x00,
207 0x00,0x00,0x7F,0x20,0x90,0x80,0x40,0x43,0x2C,0x10,0x10,0x2C,0x43,0xC0,0x40,0x00,
208
209 /*-- 文字: 定 --*/
210 0x00,0x10,0x0C,0xA4,0x24,0x24,0x25,0xE6,0x24,0x24,0x24,0x24,0x14,0x0C,0x04,0x00,
211 0x40,0x20,0x18,0x07,0x08,0x10,0x20,0x7F,0x42,0x42,0x42,0x42,0x40,0x40,0x00,0x00,
212
213 /*-- 文字: 开 --*/
214 0x40,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x00,
215 0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
216
217 /*-- 文字: 关 --*/
218 0x00,0x10,0x10,0x10,0x11,0x1E,0x14,0xF0,0x10,0x18,0x17,0x12,0x18,0x10,0x00,0x00,
219 0x01,0x81,0x41,0x21,0x11,0x09,0x05,0x03,0x05,0x09,0x31,0x61,0xC1,0x41,0x01,0x00,
220
221 /*-- 文字: ℃ --*/
222 0x00,0x02,0x05,0xE2,0x18,0x04,0x02,0x02,0x02,0x02,0x02,0x02,0x04,0x1E,0x00,0x00,
223 0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x18,0x00,0x00};
224
225 //-------------------------------------------------------------------------*/
226
227 uchar code Company[]={ /*-- 楷体_GB231212; 此字体下对应的点阵为:宽x高=16x16 --*/
228
229 /*-- 文字: 超 --*/
230 0x80,0x80,0x90,0x90,0xFF,0x48,0x48,0x40,0x28,0x98,0xA4,0xA4,0x9C,0x00,0x00,0x00,
231 0x10,0x08,0x06,0x04,0x07,0x09,0x09,0x10,0x17,0x34,0x24,0x26,0x21,0x20,0x20,0x00,
232
233 /*-- 文字: 超 --*/
234 0x80,0x80,0x90,0x90,0xFF,0x48,0x48,0x40,0x28,0x98,0xA4,0xA4,0x9C,0x00,0x00,0x00,
235 0x10,0x08,0x06,0x04,0x07,0x09,0x09,0x10,0x17,0x34,0x24,0x26,0x21,0x20,0x20,0x00,
236
237 /*-- 文字: 电 --*/
238 0x00,0x00,0xF0,0x10,0x90,0x90,0xFF,0x48,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x00,
239 0x00,0x00,0x00,0x03,0x02,0x02,0x1F,0x21,0x21,0x21,0x20,0x20,0x20,0x1C,0x00,0x00,
240
241 /*-- 文字: 子 --*/
C51 COMPILER V8.02 OCM12864 12/03/2008 23:43:43 PAGE 5
242 0x00,0x40,0x40,0x40,0x44,0x44,0x44,0x72,0xCA,0x26,0x22,0x20,0x20,0x20,0x00,0x00,
243 0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x20,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
244
245 /*-- 文字: 开 --*/
246 0x00,0x80,0x80,0x84,0x84,0xFC,0x44,0x44,0xFE,0x22,0x22,0x20,0x20,0x20,0x00,0x00,
247 0x00,0x20,0x10,0x08,0x06,0x01,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
248
249 /*-- 文字: 发 --*/
250 0x00,0x00,0x20,0x38,0x20,0xE0,0xB8,0x96,0x90,0x90,0x14,0x08,0x00,0x00,0x00,0x00,
251 0x10,0x10,0x08,0x24,0x23,0x12,0x14,0x08,0x0C,0x13,0x30,0x20,0x20,0x20,0x20,0x00,
252
253 /*-- 文字: 网 --*/
254 0x00,0x00,0xFC,0x24,0x44,0x84,0x74,0x04,0x44,0x82,0x72,0x02,0xFE,0x00,0x00,0x00,
255 0x00,0x00,0x1F,0x02,0x01,0x00,0x05,0x02,0x01,0x00,0x11,0x22,0x1F,0x00,0x00,0x00,
256 };
257
258 //-------------------------------------------------------------------------*/
259
260 void delay (uint us) //延时子程序
261 {
262 1 while(us--);
263 1 }
264
265
266 void chk_busy (void) //测试LCD是否处于忙状态
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -