📄 display_1602.lst
字号:
C51 COMPILER V8.05a DISPLAY_1602 02/13/2009 00:44:25 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE DISPLAY_1602
OBJECT MODULE PLACED IN display_1602.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE display_1602.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg52.h>
2 #define uint unsigned int
3 #define uchar unsigned char
4 #define IO P1
5 sbit rs=P3^6;
6 sbit en=P3^7;
7
8 void write_cmd(uchar cmd); //写命令
9 void write_data(uchar data1); //写数据
10 void initial_1602(); //初始化
11 void delay(uint z); //延时
12 void display_1602(uchar num_char,uchar line,uchar address,uchar data1);
13 //说明:display_1602(num_char=1显示数字,line=1在第一行显示,address显示地址偏移量,data1显示数字或字符)
14 // num_char=0显示字符, line=2在第二行显示,
15
16 void main()
17 {
18 1 initial_1602();
19 1 display_1602(1,1,7,156);
20 1 while(1);
21 1 }
22
23 void initial_1602()
24 {
25 1 en=0;
26 1 write_cmd(0x38); // 16X2 5X8显示
27 1 write_cmd(0x0c); //开显示 NO光标 NO闪烁
28 1 write_cmd(0x06); //地址指针自动加一,不移动
29 1 write_cmd(0x01); //清屏
30 1 write_cmd(0x90); //数据指针设置
31 1 }
32
33 void write_cmd(uchar cmd_data)
34 {
35 1 rs=0;
36 1 IO=cmd_data; delay(1); //P2为数据口
37 1 en=1; delay(1);
38 1 en=0;
39 1 }
40
41 void write_data(uchar data1)
42 {
43 1 rs=1;
44 1 IO=data1; delay(1); //P2为数据口
45 1 en=1; delay(1);
46 1 en=0;
47 1 }
48 void display_1602(uchar num_char,uchar line,uchar address,uchar data1)
49 {
50 1 uchar shi,ge,bai;
51 1 if(line==1) write_cmd(0x80+address);
52 1 if(line==2)write_cmd(0x80+0x40+address);
53 1 if(num_char==1) //显示数据
54 1 {
55 2 bai=data1/100;
C51 COMPILER V8.05a DISPLAY_1602 02/13/2009 00:44:25 PAGE 2
56 2 shi=data1%100/10;
57 2 ge=data1%10;
58 2 write_data(0x30+bai);
59 2 write_data(0x30+shi);
60 2 write_data(0x30+ge);
61 2 }
62 1 if(num_char==0) write_data(data1);
63 1 }
64 void delay(uint z)
65 {
66 1 uint x,y;
67 1 for(x=z;x>0;x--)
68 1 for(y=50;y>0;y--);
69 1 }
70
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 204 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 6
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 + -