📄 serial.lst
字号:
C51 COMPILER V8.02 SERIAL 05/03/2007 08:46:59 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE SERIAL
OBJECT MODULE PLACED IN serial.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE serial.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <absacc.h>
3 #include <intrins.h>
4 #define ADC0808_ADDR XBYTE[0x7fff]
5 #define uchar unsigned char
6 void adc_run(void);
7 sbit P2_3 =P2^3;
8 sbit P2_7 =P2^7;
9 sbit P3_2 =P3^2;
10 uchar ad_val;
11 bit ad_over=0;
12 void serial_init(void)
13 {
14 1 SCON=0xf0;
15 1 TMOD=0x20;
16 1 TH1=0xfd;
17 1 TL1=0xfd;
18 1 TR1=1;
19 1 ES=1;
20 1 }
21 void interrupt_init(void)
22 {
23 1 EA=1;
24 1 EX0=1;
25 1
26 1 }
27 void interrupt4(void) interrupt 4 using 2
28 {
29 1 EA=0;
30 1 if(TI)
31 1 TI=0;
32 1
33 1 if(RI)
34 1 {
35 2 RI=0;
36 2 if(SBUF==0x7f) //如果接收到主机的地址吗0x7f
37 2 {
38 3 SBUF=0x11; //发送响应码0x11
39 3 //while(!TI); //必须
40 3 //TI=0;
41 3 SCON=0xd0; //并且把SCON中的SM2置0,允许响应数据中断
42 3
43 3 }
44 2 if(SBUF==0xaa) //如果接收到主机的启动A/D转化的命令0xaa
45 2 {
46 3 SBUF=0x22; //发送响应码0x22
47 3 //while(!TI); //必须
48 3 //TI=0;
49 3 adc_run(); //启动A/D转化
50 3 //while(P3_2)
51 3 {
52 4 }
53 3 // ad_val=P0;//ADC0808_ADDR;
54 3 // ad_over=1;
55 3
C51 COMPILER V8.02 SERIAL 05/03/2007 08:46:59 PAGE 2
56 3 }
57 2 if(SBUF==0xbb) //如果接受到主机的发送转化结果的命令0xbb
58 2 {
59 3 SBUF=0x33; //发送响应码
60 3 //while(!TI); //必须
61 3 //TI=0;
62 3 }
63 2 if(SBUF==0xcc)
64 2 {
65 3 while(!ad_over)
66 3 {
67 4 } P2_3=~P2_3;
68 3 ad_over=0;
69 3 SBUF=ad_val;
70 3 //while(!TI); //必须
71 3 //TI=0;
72 3 SCON=0xf0;//****************等待下一次寻址
73 3 //}
74 3 }
75 2 }
76 1 EA=1;
77 1 }
78 void interrup0(void) interrupt 0 using 3
79 {
80 1 P2_7=1;
81 1 RD=0;
82 1 _nop_();
83 1 _nop_();
84 1 P2_7=0;
85 1 _nop_();
86 1 _nop_();
87 1
88 1 ad_val=P0;
89 1 ad_over=1;
90 1 RD=1;
91 1 P2_7=1;
92 1 }
93
94 void main(void)
95 {
96 1 P2_3=0;
97 1 interrupt_init();
98 1 serial_init();
99 1
100 1 while(1);
101 1 }
102 void adc_run(void)
103 {
104 1
105 1 P2_7=1;
106 1 WR=0;
107 1 _nop_();
108 1 _nop_();
109 1 P2_7=0;
110 1 _nop_();
111 1 _nop_();
112 1 WR=1;
113 1 P2_7=1;
114 1
115 1 }
C51 COMPILER V8.02 SERIAL 05/03/2007 08:46:59 PAGE 3
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 153 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
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 + -