📄 red.lst
字号:
C51 COMPILER V7.04 RED 08/28/2004 16:16:03 PAGE 1
C51 COMPILER V7.04, COMPILATION OF MODULE RED
OBJECT MODULE PLACED IN red.OBJ
COMPILER INVOKED BY: f:\Keil\C51\Bin\c51.exe red.c DB SB OE ROM(LARGE) SMALL OT(6,SPEED) WL(2) RB(0)
stmt level source
1 #include<reg51.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4
5
6 uint th0,tl0;
7 uint time;
8
9 sbit k0=P1^0;
10 sbit k1=P1^1;
11 sbit k2=P1^2;
12 sbit k3=P1^3;
13 sbit set=P0^0;
14
15 void t0_ser() interrupt 1 using 0 //T0 interrupt 发射频率控制器
16 {TH0=th0;
17 1 TL0=tl0;
18 1 set=set^1;
19 1
20 1 }
21
22
23 void t1_ser() interrupt 3 using 1 //T1定时100ms 作为发射时间控制器
24 {if(time!=1) {time++;
25 2 TH1=-50000/256;
26 2 TL1=-50000%256;
27 2 }
28 1
29 1 else{TR0=0;
30 2 EA=0;
31 2 TR1=0;
32 2 time=0;
33 2 set=1;}
34 1 }
35
36
37 main()
38 {
39 1 uint i,j;
40 1 TMOD=0x11;
41 1 IP=0x08;
42 1 ET0=1;
43 1 ET1=1;
44 1 time=0;
45 1 P2=0xff;
46 1 P1=0xff;
47 1 while(1)
48 1 {
49 2
50 2
51 2
52 2 if(P1!=0xff){
53 3
54 3 i=P1^0xff;
55 3 i=i&0x0f;
C51 COMPILER V7.04 RED 08/28/2004 16:16:03 PAGE 2
56 3 switch(i)
57 3 { case 8: {th0=-500/256; EA=1;
58 5 tl0=-500%256;
59 5 TH0=-500/256;
60 5 TL0=-500%256; //k3 1khz 0.5ms
61 5 TH1=-50000/256;
62 5 TL1=-50000%256;
63 5 TR0=1;TR1=1;
64 5 break;
65 5 }
66 4 case 4: {th0=-1000/256; EA=1;
67 5 tl0=-1000%256;
68 5 TH0=-1000/256;
69 5 TL0=-1000%256; //k2 500hz 1ms
70 5 TH1=-50000/256;
71 5 TL1=-50000%256;
72 5 TR0=1;TR1=1;
73 5 break;
74 5 }
75 4
76 4 case 2: { th0=-5000/256; EA=1;
77 5 tl0=-5000%256;
78 5 TH0=-5000/256;
79 5 TL0=-5000%256; //k1 100hz 5ms
80 5 TH1=-50000/256;
81 5 TL1=-50000%256;
82 5 TR0=1;TR1=1;
83 5 break;
84 5 }
85 4 case 1: { th0=-10000/256; EA=1;
86 5 tl0=-10000%256;
87 5 TH0=-10000/256;
88 5 TL0=-10000%256; //k0 50hz 10ms
89 5 TH1=-50000/256;
90 5 TL1=-50000%256;
91 5 TR0=1;TR1=1;
92 5 break;
93 5 }
94 4 }
95 3 }
96 2
97 2 }
98 1 }
*** WARNING C280 IN LINE 39 OF RED.C: 'j': unreferenced local variable
C51 COMPILER V7.04 RED 08/28/2004 16:16:03 PAGE 3
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
th0. . . . . . . . . . . . . . . . . . PUBLIC DATA U_INT 0000H 2
tl0. . . . . . . . . . . . . . . . . . PUBLIC DATA U_INT 0002H 2
IP . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B8H 1
main . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
i. . . . . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
j. . . . . . . . . . . . . . . . . . AUTO DATA U_INT 0000H 2
time . . . . . . . . . . . . . . . . . PUBLIC DATA U_INT 0004H 2
TMOD . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0089H 1
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TH0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008CH 1
set. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0080H 1
TH1. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008DH 1
t0_ser . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
TL0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008AH 1
t1_ser . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
TL1. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008BH 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 240 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 6 2
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -