📄 1601.lst
字号:
C51 COMPILER V7.50 1601 02/11/2009 16:16:23 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 1601
OBJECT MODULE PLACED IN 1601.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 1601.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /************************************************************************
2 *文件名:1601。C *
3 *功能: 1601LCD驱动程序。 *
4 *作者: 杨乐 *
5 *日期: 2009年1月21日 *
6 ************************************************************************/
7 #include<REG52.h>
8 #include<intrins.h>
9 #include<string.h>
10 #include"lcd.h"
11 /************************************************************************
12 *作者: 杨乐 *
13 *函数名: write_data *
14 *功能: 写入数据 *
15 *入口参数:无 *
16 *返回值: 无 *
17 *日期: 2009年1月21日 *
18 ************************************************************************/
19 void write_data(unsigned char i)/*写入数据*/
20 {
21 1 P0 = i;
22 1 RS =1;
23 1 RW =0;
24 1 E =0;
25 1 read_busy();
26 1 E =1;
27 1 }
28 /************************************************************************
29 *作者: 杨乐 *
30 *函数名: initi *
31 *功能: LCD初始化 *
32 *入口参数:无 *
33 *返回值: 无 *
34 *日期: 2009年1月21日 *
35 ************************************************************************/
36 void initi(void)
37 {
38 1 unsigned char c[] = {0x01,0x38,0x0c,0x06};
39 1 unsigned char i;
40 1 for(i=0;i<4;i++)
41 1 write_cmd(c[i]);
42 1 }
43 /************************************************************************
44 *作者: 杨乐 *
45 *函数名: write_cmd *
46 *功能: 写入指令 *
47 *入口参数:无 *
48 *返回值: 无 *
49 *日期: 2009年1月21日 *
50 ************************************************************************/
51 void write_cmd(unsigned char i)
52 {
53 1 P0 = i;
54 1 RS =0 ;
55 1 RW =0;
C51 COMPILER V7.50 1601 02/11/2009 16:16:23 PAGE 2
56 1 E =0;
57 1 read_busy();
58 1 E =1;
59 1 }
60 /************************************************************************
61 *作者: 杨乐 *
62 *函数名: read_busy *
63 *功能: 忙判别 *
64 *入口参数:无 *
65 *返回值: 无 *
66 *日期: 2009年1月21日 *
67 ************************************************************************/
68 void read_busy(void)
69 {
70 1 do
71 1 {
72 2 P0 &= 0xff;
73 2 RS =0;
74 2 RW =1;
75 2 E =0;
76 2 delay(50);
77 2 E =1;
78 2 }
79 1 while (p0_7 ==1);
80 1 }
81 /************************************************************************
82 *作者: 杨乐 *
83 *函数名: delay *
84 *功能: 延时 *
85 *入口参数:unsigned char x *
86 *返回值: 无 *
87 *日期: 2009年1月21日 *
88 ************************************************************************/
89 void delay(unsigned char x)
90 {
91 1 unsigned char j;
92 1 while((x--)!=0)
93 1 for(j=0;j<150;j++);
94 1 }
95 /************************************************************************
96 *作者: 杨乐 *
97 *函数名: display *
98 *功能: 在指定位置显示字符 *
99 *入口参数:unsigned char add,unsigned char *p *
100 *返回值: 无 *
101 *日期: 2009年1月21日 *
102 ************************************************************************/
103 void display(unsigned char add,unsigned char p[])
104 {
105 1 unsigned char i=0;
106 1 write_cmd(add);
107 1 while(p[i]!='\0')
108 1 {
109 2 write_data(p[i]);
110 2 // write_cmd(0x10);
111 2 i++;
112 2 }
113 1
114 1 }
115
116
117
C51 COMPILER V7.50 1601 02/11/2009 16:16:23 PAGE 3
118
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 143 ----
CONSTANT SIZE = 4 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
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 + -