📄 rt240128.lst
字号:
C51 COMPILER V7.05 RT240128 08/27/2006 23:31:34 PAGE 1
C51 COMPILER V7.05, COMPILATION OF MODULE RT240128
OBJECT MODULE PLACED IN RT240128.OBJ
COMPILER INVOKED BY: D:\SilabIDE\IDEfiles\C51\BIN\C51.exe RT240128.c DB OE
stmt level source
*** WARNING C500 IN LINE 1 OF RT240128.C: MISSING DEVICE (SECURITY KEY NOT FOUND)
1 /****************************************************************************
2 **
3 ** 文件名: RT240128.c
4 ** 功能: 液晶模块RT240128驱动;
5 ** 创建时间:2005.08.05
6
7 ** 修改时间:2005.12.01
8 ** 修改说明:
9
10 ** 作者: 李立学
11 ** 版权申明:可以拷贝,可以修改,但必须保留修改时间和作者信息
12 **
13 ****************************************************************************/
14
15
16 #include "LZK.H"
*** ERROR C141 IN LINE 73 OF LZK.H: syntax error near '/', expected '='
*** ERROR C202 IN LINE 73 OF LZK.H: 'R0': undefined identifier
17
18
19 /***********************************************************************
20 *** 常量声明
21 **********************************************************************/
22 uint8 code DCB_HEX_TAB[8] = {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
23
24 uint8 xdata CURS_X = 16;
25 uint8 xdata CURS_Y = 16;
26
27
28
29 /***********************************************************************
30 * 名称:LCD_nCS()
31 * 功能:LCD片选
32 * 入口参数:bCMD:位变量,“0”= LCD Selected.
33 * 出口参数:无
34 * 说明:LCD片选有效前使nMCS = “1”,避免总线冲突.
35 ***********************************************************************/
36 void LCD_nCS(bit bCMD)
37 {
38 1 if(bCMD) // LCD_nCS Output "1", Invalid
39 1 {
40 2 LCD_nCS0 = 1;
*** ERROR C202 IN LINE 40 OF RT240128.C: 'LCD_nCS0': undefined identifier
41 2
42 2 SFRPAGE = 0x0f; // P4 SFR PAGE.
43 2 ucP4DATA = ucP4DATA & 0xf7; // nMCS = '0'.
44 2 P4 = ucP4DATA;
45 2 }
46 1 else // LCD_nCS Output "0", Valid
47 1 {
48 2 SFRPAGE = 0x0f; // P4 SFR PAGE.
49 2 ucP4DATA = ucP4DATA | 0x08; // nMCS = '1'.
50 2 P4 = ucP4DATA;
51 2
C51 COMPILER V7.05 RT240128 08/27/2006 23:31:34 PAGE 2
52 2 LCD_nCS0 = 0;
*** ERROR C202 IN LINE 52 OF RT240128.C: 'LCD_nCS0': undefined identifier
53 2 }
54 1 }
55 /***********************************************************************
56 * 名称:LCD_Reset()
57 * 功能:对LCM复位,对相关I/O口初始化
58 * 入口参数:无
59 * 出口参数:无
60 * 说明:
61 ***********************************************************************/
62 void LCD_Reset(void)
63 {
64 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
65 1
66 1 PanelLE = 0;
*** ERROR C202 IN LINE 66 OF RT240128.C: 'PanelLE': undefined identifier
67 1 nReInLE = 1;
*** ERROR C202 IN LINE 67 OF RT240128.C: 'nReInLE': undefined identifier
68 1 ReOutLE = 0;
*** ERROR C202 IN LINE 68 OF RT240128.C: 'ReOutLE': undefined identifier
69 1 PulseLE = 0;
*** ERROR C202 IN LINE 69 OF RT240128.C: 'PulseLE': undefined identifier
70 1
71 1 LCD_nCS(0); // LCD nCS0 Output "0", Valid.
72 1
73 1 SFRPAGE = 0x0f; // P5 SFR PAGE.
74 1 P5MDOUT = 0xff; // P5口设置为推挽输出方式.
75 1 P5MDOUT = 0xff; // P5口设置为推挽输出方式.
76 1
77 1 ucPanDATA = ucPanDATA & 0xf7; // LCD_nRST(EBD.3) = 0.
*** ERROR C202 IN LINE 77 OF RT240128.C: 'ucPanDATA': undefined identifier
78 1 P5 = ucPanDATA;
*** ERROR C202 IN LINE 78 OF RT240128.C: 'ucPanDATA': undefined identifier
79 1
80 1 PanelLE = 1;
*** ERROR C202 IN LINE 80 OF RT240128.C: 'PanelLE': undefined identifier
81 1 PanelLE = 1;
*** ERROR C202 IN LINE 81 OF RT240128.C: 'PanelLE': undefined identifier
82 1 PanelLE = 0;
*** ERROR C202 IN LINE 82 OF RT240128.C: 'PanelLE': undefined identifier
83 1
84 1 DmS(10);
85 1
86 1 SFRPAGE = 0x0f; // P5 SFR PAGE.
87 1 P5MDOUT = 0xff; // P5口设置为推挽输出方式.
88 1 P5MDOUT = 0xff; // P5口设置为推挽输出方式.
89 1
90 1 ucPanDATA = ucPanDATA | 0x08; // LCD_nRST(EBD.3) = 1.
*** ERROR C202 IN LINE 90 OF RT240128.C: 'ucPanDATA': undefined identifier
91 1 P5 = ucPanDATA;
*** ERROR C202 IN LINE 91 OF RT240128.C: 'ucPanDATA': undefined identifier
92 1
93 1 PanelLE = 1;
*** ERROR C202 IN LINE 93 OF RT240128.C: 'PanelLE': undefined identifier
94 1 PanelLE = 1;
*** ERROR C202 IN LINE 94 OF RT240128.C: 'PanelLE': undefined identifier
95 1 PanelLE = 0;
*** ERROR C202 IN LINE 95 OF RT240128.C: 'PanelLE': undefined identifier
96 1
97 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
98 1 }
C51 COMPILER V7.05 RT240128 08/27/2006 23:31:34 PAGE 3
99
100 /***********************************************************************
101 * 名称:LCD_WriteCommand()
102 * 功能:写命令子程序。(发送命令前,不检查液晶模块的状态)
103 * 入口参数:ucCMD (要写入LCM的命令字)
104 * 出口参数:无
105 * 说明:函数会设置LCM数据总线为输出方式
106 ***********************************************************************/
107 void LCD_WriteCommand(uint8 ucCMD)
108 {
109 1 LCD_CnD = 1;
*** ERROR C202 IN LINE 109 OF RT240128.C: 'LCD_CnD': undefined identifier
110 1
111 1 LCD_nCS(0); // LCD nCS0 Output "0", Valid.
112 1 LCD_COMMAND = ucCMD;
113 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
114 1 }
115
116 /***********************************************************************
117 * 名称:LCD_WriteData()
118 * 功能:写数据子程序。(发送数据前,不检查液晶模块的状态)
119 * 入口参数:ucDATA (要写入LCM的数据)
120 * 出口参数:无
121 * 说明:函数会设置LCM数据总线为输出方式
122 ***********************************************************************/
123 void LCD_WriteData(uint8 ucDATA)
124 {
125 1 LCD_CnD = 0;
*** ERROR C202 IN LINE 125 OF RT240128.C: 'LCD_CnD': undefined identifier
126 1
127 1 LCD_nCS(0); // LCD nCS0 Output "0", Valid.
128 1 LCD_COMMAND = ucDATA;
129 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
130 1 }
131
132 /***********************************************************************
133 * 名称:LCD_ReadState()
134 * 功能:读取状态字子程序。
135 * 入口参数:无
136 * 出口参数:返回值即为读出的状态字
137 * 说明:函数会设置LCM数据总线为输入方式
138 ***********************************************************************/
139 uint8 LCD_ReadState(void)
140 {
141 1 uint8 ucTMP;
142 1
143 1 LCD_CnD = 1;
*** ERROR C202 IN LINE 143 OF RT240128.C: 'LCD_CnD': undefined identifier
144 1
145 1 LCD_nCS(0); // LCD nCS0 Output "0", Valid.
146 1 ucTMP = LCD_STATUS;
147 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
148 1
149 1 return ucTMP;
150 1 }
151
152 /***********************************************************************
153 * 名称:LCD_ReadData()
154 * 功能:读取数据子程序。
155 * 入口参数:无
156 * 出口参数:返回值即为读出的数据
157 * 说明:函数会设置LCM数据总线为输入方式
C51 COMPILER V7.05 RT240128 08/27/2006 23:31:34 PAGE 4
158 ***********************************************************************/
159 uint8 LCD_ReadData(void)
160 {
161 1 uint8 ucTMP;
162 1
163 1 LCD_CnD = 0;
*** ERROR C202 IN LINE 163 OF RT240128.C: 'LCD_CnD': undefined identifier
164 1
165 1 LCD_nCS(0); // LCD nCS0 Output "0", Valid.
166 1 ucTMP = LCD_DATA;
167 1 LCD_nCS(1); // LCD nCS0 Output "1", Invalid.
168 1
169 1 return ucTMP;
170 1 }
171
172 /***********************************************************************
173 * 名称:LCD_TestStaBit01()
174 * 功能:判断读写指令和读写数据是否允许。
175 * 入口参数:无
176 * 出口参数:返回0表示禁止,否则表示允许
177 ***********************************************************************/
178 bit LCD_TestStaBit01(void)
179 {
180 1 uint8 i;
181 1
182 1 for(i=100; i>0; i--)
183 1 {
184 2 if( (LCD_ReadState() & 0x03) == 0x03 )
185 2 break;
186 2 }
187 1 if(i>0)
188 1 return 1;
189 1 else
190 1 return 0;
191 1 }
192
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -