📄 lcd12864_b.lst
字号:
C51 COMPILER V6.23a LCD12864_B 04/11/2008 15:30:39 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE LCD12864_B
OBJECT MODULE PLACED IN lcd12864_B.OBJ
COMPILER INVOKED BY: F:\Keil\C51\BIN\c51.exe lcd12864_B.c OPTIMIZE(9,SPEED) BROWSE DEBUG OBJECTEXTEND CODE
stmt level source
1 //=====================================================================
2 // LCD12864 液晶显示技术II
3 // Make Time: 2008-4-8
4 //=======================================================================
5
6 #include <reg52.h>
7 #include <string.h>
8 #include <math.h>
9
10 #define uchar unsigned char
11 #define uint unsigned int
12 #define ulong unsigned long
13
14 //=======引脚定义==================
15
16 sbit lck = P3^5;//锁存信号
17
18 //======常用命令及参数定义==========
19 #define DISPON 0x3f
20 #define DISPOFF 0x3e
21 #define DISPFIRST 0xc0
22 #define SETX 0x40
23 #define SETY 0xb8
24 #define LCDBUZY 0x80
25 #define L 0x00
26 #define R 0x40
27 #define LIMIT 0x80
28 #define LINE 16 // 设置最多一行可以显示多少字符(1~~16)
29
30
31
32 //========全局变量===============
33 code uchar pixel[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
34 uchar cbyte;
35 uchar charNum=1; //record the character number in the screen
36 uchar data statu;
37 bit xy; // the position variable
38
39
40
41
42 //=========函数声明============
43 void WrL(uchar x);
44 void WrR(uchar x);
45 void Lcmcls(void);
46 void delay1s(void);
47 void Lcminit (void);
48 void delay(unsigned int time);
49 void VtoH8x16change(uchar *hzbuf);
50 void Puthalf(uchar *strch,uchar row,uchar col);
51 void Wrdata(uchar x,uchar row,uchar col);
52 void Locatexy(uchar row,uchar col);
53 void vWrite8x16Character(uchar *ch,uchar row,uchar col,bit flag);
54 void vWrite8x16String(uchar *str,uchar col, uchar row, bit flag);
55
C51 COMPILER V6.23a LCD12864_B 04/11/2008 15:30:39 PAGE 2
56
57 extern uchar code picture1[];
58 extern uchar code picture2[];
59 extern uchar code picture3[];
60 extern uchar code picture4[];
61 extern uchar code char_Table[95][16];
62
63
64
65 struct //时间结构体
66 {
67 unsigned char hour; //0~23
68 unsigned char min; //0~59
69 unsigned char sec; //0~59
70 unsigned int msec; //0~999
71 unsigned int speeder; // define the speed yourself in interrupt program
72 unsigned long allsec; //3600*hour+60*min+sec
73
74 }time;
75
76
77 //=========数据读取====================
78 uchar RDdata(uchar row,uchar col)
79 {
80 1 uchar rdata;
81 1 Locatexy(row,col);//定位显示位置
82 1
83 1 if(statu==0)
84 1 {
85 2
86 2 P0=0xFF;//P0口送FF,准备读
87 2 lck = 0;
88 2 P1 = 0x2a;//ELCD=1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -