📄 lcd_driver_user.lst
字号:
169 1 uiTemp = (unsigned int)Dis_Y_MAX;
170 1 Set_Dot_Addr_LCD(0,0);
171 1 for(i=0;i<=uiTemp;i++) //往LCD中填充初始化的显示数据
172 1 {
173 2 for(j=0;j<=Dis_X_MAX;j++)
174 2 {
175 3 LCD_DataWrite(Data);
176 3 }
177 2 }
178 1 }
C51 COMPILER V8.16 LCD_DRIVER_USER 12/22/2008 00:11:06 PAGE 4
179 //========================================================================
180 // 函数: void LCD_PortInit(void)
181 // 描述: 与LCD连接的端口初始化代码
182 // 参数: 无
183 // 返回: 无
184 // 备注: Mz 通用版LCD驱动程序 标准子函数
185 // 版本:
186 // 2007/01/09 First version
187 // 注意:
188 //========================================================================
189 void LCD_PortInit(void)
190 {
191 1 LCD_Ctrl_GPIO();
192 1 LCD_Ctrl_Out();
193 1 LCD_Ctrl_Set(LCD_CS+LCD_RE+LCD_A0+LCD_RW+LCD_RD);
194 1
195 1 LCD_Data_GPIO();
196 1 LCD_Data_Out();
197 1 }
198 //========================================================================
199 // 函数: void LCD_Init(void)
200 // 描述: LCD初始化程序,在里面会完成LCD初始所需要设置的许多寄存器,具体如果
201 // 用户想了解,建议查看DataSheet当中各个寄存器的意义
202 // 参数: 无
203 // 返回: 无
204 // 备注: Mz 通用版LCD驱动程序 标准子函数
205 // 版本:
206 // 2006/10/15 First version
207 // 2007/01/09 V1.2
208 //========================================================================
209 //延时程序
210 void TimeDelay(WORD Time)
211 {
212 1 WORD i;
213 1 while(Time > 0)
214 1 {
215 2 for(i = 0;i < 800;i++)
216 2 {
217 3 _nop_();
218 3 }
219 2 Time --;
220 2 }
221 1 }
222 /*
223 FLASH Initial_Tab[]={
224 0x0005,0xCF90,0x000A,0x3A05,0x0016,0x9F80,0x0017,0x0A0F,
225 0x0001,0xe300,0x0002,0x0200,0x0003,0x7664,0x0004,0x0447,
226 0x0005,0x4002,0x000A,0x4008,0x000B,0xD400,0x000D,0x123A,
227 0x000E,0x2CC0,0x000F,0x0000,0x0016,0x9F80,0x0017,0x2212,
228 0x001E,0x00dd,0x0030,0x0507,0x0031,0x0004,0x0032,0x0707,
229 0x0033,0x0000,0x0034,0x0000,0x0035,0x0307,0x0036,0x0700,
230 0x0037,0x0000,0x003A,0x140B,0x003B,0x140B,0xffff
231 };*/
232 void LCD_Init(void)
233 {
234 1 // FLASH *Init_String;
235 1 //LCD驱动所使用到的端口的初始化
236 1 LCD_PortInit();
237 1 //根据LCD显示的配置,设置LCD的数据地址指针自动增加特性
238 1 //end
239 1 LCD_RE_CLR();
240 1 TimeDelay(5);
C51 COMPILER V8.16 LCD_DRIVER_USER 12/22/2008 00:11:06 PAGE 5
241 1 LCD_RE_SET();
242 1 LCD_RegWrite(0x03);
243 1 LCD_DataWrite((1<<7)|// //设置背光控制使能
244 1 (0x60<<0)); //设置背光亮度等级为60(0~127)
245 1
246 1 LCD_RegWrite(0x04); //写系统寄存器
247 1 // LCD_DataWrite((0<<7)| //当前显示页
248 1 // (0<<6) | //当前读写页设置
249 1 // (1<<0)); //显示开关
250 1 LCD_DataWrite(MzT35_Ctrl_Reg);
251 1
252 1 /* Init_String = Initial_Tab;
253 1 while(Init_String!=0xffff)
254 1 {
255 1 LCD_RegWrite(0x05);LCD_DataWrite(*Init_String++);
256 1 LCD_RegWrite(0x06);LCD_DataWrite(*Init_String++);
257 1 }*/
258 1
259 1 LCD_Fill(LCD_INITIAL_COLOR);
260 1 }
261 //========================================================================
262 // 函数: void LCD_DisLayerSet(BYTE layer)
263 // 描述: 当前显示图层设置
264 // 参数: layer 0: 图层0设置为当前显示图层
265 // 2: 图层1设置为当前显示图层
266 // 返回: 无
267 // 备注: Mz 通用版LCD驱动程序 非标准子函数
268 // 版本:
269 // 2008/12/15 First version
270 //========================================================================
271 void LCD_DisLayerSet(BYTE layer)
272 {
273 1 if(layer==0)
274 1 {
275 2 MzT35_Ctrl_Reg &= ~0x80;
276 2
277 2 }
278 1 else
279 1 {
280 2 MzT35_Ctrl_Reg |= 0x80;
281 2 }
282 1 LCD_RegWrite(0x04); //写系统寄存器
283 1 LCD_DataWrite(MzT35_Ctrl_Reg);
284 1 }
285 //========================================================================
286 // 函数: void LCD_OSLayerSet(BYTE layer)
287 // 描述: 当前操作图层设置
288 // 参数: layer 0: 图层0设置为当前操作图层
289 // 2: 图层1设置为当前操作图层
290 // 返回: 无
291 // 备注: Mz 通用版LCD驱动程序 非标准子函数
292 // 版本:
293 // 2008/12/15 First version
294 //========================================================================
295 void LCD_OSLayerSet(BYTE layer)
296 {
297 1 if(layer==0)
298 1 {
299 2 MzT35_Ctrl_Reg &= ~0x40;
300 2
301 2 }
302 1 else
C51 COMPILER V8.16 LCD_DRIVER_USER 12/22/2008 00:11:06 PAGE 6
303 1 {
304 2 MzT35_Ctrl_Reg |= 0x40;
305 2 }
306 1 LCD_RegWrite(0x04); //写系统寄存器
307 1 // LCD_DataWrite((0<<7)| //当前显示页
308 1 // (0<<6) | //当前读写页设置
309 1 // (1<<0)); //显示开关
310 1 LCD_DataWrite(MzT35_Ctrl_Reg);
311 1 }
312 //========================================================================
313 // 函数: void LCD_BackLightSet(BYTE light)
314 // 描述: 设置背光亮度
315 // 参数: light 0~127
316 // 返回: 无
317 // 备注: Mz 通用版LCD驱动程序 非标准子函数
318 // 版本:
319 // 2008/12/15 First version
320 //========================================================================
321 void LCD_BackLightSet(BYTE light)
322 {
323 1 if(light>0x7f) light = 0x7f;
324 1 light |= 0x80;
325 1 LCD_RegWrite(0x03);
326 1 LCD_DataWrite(light);
327 1 }
328
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 391 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = 1 8
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -