📄 rs232_display.lst
字号:
C51 COMPILER V7.07 RS232_DISPLAY 02/15/2007 15:21:22 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE RS232_DISPLAY
OBJECT MODULE PLACED IN RS232_display.OBJ
COMPILER INVOKED BY: D:\Program Files\keil\C51\BIN\C51.EXE RS232_display.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //RS232接收显示实验
2 #include "reg51.h"
3
4 unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
5
6 unsigned char dat; //定义全局变量
7
8 //串行口初始化程序
9 void Init_Com(void)
10 {
11 1 TMOD = 0x20;
12 1 PCON = 0x00;
13 1 SCON = 0x50;
14 1 TH1 = 0xFd;
15 1 TL1 = 0xFd;
16 1 TR1 = 1;
17 1 }
18
19 //LED数码管延时程序
20 void delay(void)
21 {
22 1 int k;
23 1 for(k=0;k<600;k++);
24 1 }
25
26 //串行中断服务程序
27 serial()interrupt 4 using 1
28 {
29 1 if(RI)
30 1 RI=0;
31 1 dat=SBUF;
32 1 }
33
34 //LED数码管显示程序
35 void display(int k)
36 {
37 1 P2=0xfe; //位选
38 1 P0=tab[k/1000]; //显示千位数字
39 1 delay(); //延时
40 1 P2=0xfd; //位选
41 1 P0=tab[k%1000/100]; //显示百位数字
42 1 delay(); //延时
43 1 P2=0xfb; //位选
44 1 P0=tab[k%100/10]; //显示十位数字
45 1 delay(); //延时
46 1 P2=0xf7; //位选
47 1 P0=tab[k%10]; //显示个位数字
48 1 delay(); //延时
49 1 P2=0xff; //位选
50 1 }
51
52 //主程序
53 void main()
54 {
55 1 P2=0xff;
C51 COMPILER V7.07 RS232_DISPLAY 02/15/2007 15:21:22 PAGE 2
56 1 P0=0xff;
57 1 P1=0xff;
58 1 EA=1;
59 1 ES=1;
60 1 Init_Com();
61 1 while(1)
62 1 {
63 2 display(dat); //显示数据
64 2 }
65 1 }
66
67
68
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 177 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
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 + -