📄 u1.lst
字号:
C51 COMPILER V6.12 U1 12/18/2007 07:51:28 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE U1
OBJECT MODULE PLACED IN .\u1.OBJ
COMPILER INVOKED BY: E:\单片机软件资料\c51\C51\BIN\C51.EXE .\u1.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg51.h>
2
3 void init_com();
4
5 void changeinto();
6 bit read_flag=0;
7 unsigned char astring;
8 static unsigned char xianshichar;
9
10 void main()
11 {
12 1 init_com();
13 1
14 1 EA=1; ES=1; //开中断,允许串行口中断
15 1 REN=1; //允许串口中断
16 1
17 1 P0=0;
18 1
19 1 while(1)
20 1 {
21 2 if(read_flag) //如果取数标志已置位,就将读到的字符串从串口发出
22 2 { changeinto();
23 3 read_flag=0; //取数标志清0
24 3 P0=xianshichar;
25 3
26 3 }
27 2 }
28 1 }
29
30 void init_com( void )
31 {
32 1 TMOD=0x20; /*晶振11.0592,波特率2400,方式3*/
33 1 TL1=0x0f3;
34 1 TH1=0x0f3;
35 1 SCON=0xd8; /*串口接受字符RI置位,允许串口接收*/
36 1 PCON=0x00;
37 1 TR1=1;
38 1 }
39
40
41 //串口接收中断
42 void serial () interrupt 4 using 3
43 {
44 1 unsigned char ch;
45 1 ch=SBUF;
46 1 if(RI) //确实有接收中断了
47 1 {
48 2 RI = 0;
49 2 astring=ch;
50 2
51 2 read_flag=1;
52 2
53 2 }
54 1 }
55 void changeinto()
C51 COMPILER V6.12 U1 12/18/2007 07:51:28 PAGE 2
56 {
57 1 switch(astring)
58 1 { case 0x0: xianshichar=0x7e;break;
59 2 case 0x1: xianshichar=0x48;break;
60 2 case 0x2: xianshichar=0x3d;break;
61 2 case 0x3: xianshichar=0x6d;break;
62 2 case 0x4: xianshichar=0x4b;break;
63 2 case 0x5: xianshichar=0x67;break;
64 2 case 0x6: xianshichar=0x77;break;
65 2 case 0x7: xianshichar=0x4e;break;
66 2 case 0x8: xianshichar=0x7f;break;
67 2 case 0x9: xianshichar=0x6f;break;
68 2 default: break;
69 2
70 2 }
71 1 }
72
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 146 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -