📄 send.lst
字号:
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE SEND
OBJECT MODULE PLACED IN send.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE send.c BROWSE DEBUG OBJECTEXTEND CODE
line level source
1 #include"send.h"
2
3 unsigned int i,j,m,n,k,s;
4 unsigned char keyvol; //键值存放
5
6 send_delay1ms(unsigned int t)
7 {
8 1 for(i=0;i<t;i++)
9 1 for(j=0;j<120;j++)
10 1 ;
11 1 }
12
13 send_clearmen()
14 {
15 1 remoteout=0;
16 1 IE=0x00;
17 1 IP=0x01;
18 1 TMOD=0x22;
19 1 TH1=0xf3;
20 1 TL1=0xf3;
21 1 EA=1;
22 1 }
23
24 sed()
25 {
26 1 ET1=1;TR1=1;send_delay1ms(3);ET1=0;TR1=0;remoteout=0;
27 1 for(m=keyvol;m>0;m--)
28 1 {
29 2 send_delay1ms(1);
30 2 ET1=1;TR1=1;send_delay1ms(1);ET1=0;TR1=0;remoteout=0;
31 2 }
32 1 send_delay1ms(10);
33 1 }
34
35 tx()
36 {
37 1 switch(keyvol)
38 1 {
39 2 case 0:keyvol=keyvol+1;sed();break;
40 2 case 1:keyvol=keyvol+1;sed();break;
41 2 case 2:keyvol=keyvol+1;sed();break;
42 2 case 3:keyvol=keyvol+1;sed();break;
43 2 default:break;
44 2 }
45 1 }
46
47 keywork()
48 {
49 1 if(Key1==0)
50 1 {LED=ON;
51 2 send_delay1ms(10);
52 2 while(Key1==0);
53 2 LED=OFF;
54 2 keyvol=0;
55 2 tx();
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 2
56 2 }
57 1 if(Key2==0)
58 1 {LED=ON;
59 2 send_delay1ms(10);
60 2 while(Key2==0);
61 2 LED=OFF;
62 2 keyvol=1;
63 2 tx();
64 2 }
65 1 if(Key3==0)
66 1 {LED=ON;
67 2 send_delay1ms(10);
68 2 while(Key3==0);
69 2 LED=OFF;
70 2 keyvol=2;
71 2 tx();
72 2 }
73 1 if(Key4==0)
74 1 {LED=ON;
75 2 send_delay1ms(10);
76 2 while(Key4==0);
77 2 LED=OFF;
78 2 keyvol=3;
79 2 tx();
80 2 }
81 1 remoteout=1;
82 1 }
83
84 main()
85 {
86 1 remoteout=1;
87 1 send_clearmen();
88 1 while(1)
89 1 {
90 2 keywork();
91 2 }
92 1 }
93 void time_intt1(void) interrupt 3
94 {
95 1 remoteout=~remoteout;
96 1 }
97 //
98 //
99 //*********************结束**************************//
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 3
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION L?0043 (BEGIN)
0000 L?0044:
0000 C2B0 CLR LED
0002 7F0A MOV R7,#0AH
0004 7E00 MOV R6,#00H
; FUNCTION _send_delay1ms (BEGIN)
; SOURCE LINE # 6
;---- Variable 't' assigned to Register 'R6/R7' ----
; SOURCE LINE # 7
; SOURCE LINE # 8
0006 E4 CLR A
0007 F500 R MOV i,A
0009 F500 R MOV i+01H,A
000B ?C0001:
000B C3 CLR C
000C E500 R MOV A,i+01H
000E 9F SUBB A,R7
000F E500 R MOV A,i
0011 9E SUBB A,R6
0012 501D JNC ?C0007
; SOURCE LINE # 9
0014 E4 CLR A
0015 F500 R MOV j,A
0017 F500 R MOV j+01H,A
0019 ?C0004:
0019 0500 R INC j+01H
001B E500 R MOV A,j+01H
001D 7002 JNZ ?C0037
001F 0500 R INC j
0021 ?C0037:
0021 6478 XRL A,#078H
0023 4500 R ORL A,j
0025 70F2 JNZ ?C0004
0027 ?C0003:
0027 0500 R INC i+01H
0029 E500 R MOV A,i+01H
002B 70DE JNZ ?C0001
002D 0500 R INC i
002F ?C0038:
002F 80DA SJMP ?C0001
; SOURCE LINE # 11
0031 ?C0007:
0031 22 RET
; FUNCTION _send_delay1ms (END)
; FUNCTION send_clearmen (BEGIN)
; SOURCE LINE # 13
; SOURCE LINE # 14
; SOURCE LINE # 15
0000 C2B5 CLR remoteout
; SOURCE LINE # 16
0002 E4 CLR A
0003 F5A8 MOV IE,A
; SOURCE LINE # 17
0005 75B801 MOV IP,#01H
; SOURCE LINE # 18
0008 758922 MOV TMOD,#022H
; SOURCE LINE # 19
000B 758DF3 MOV TH1,#0F3H
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 4
; SOURCE LINE # 20
000E 758BF3 MOV TL1,#0F3H
; SOURCE LINE # 21
0011 D2AF SETB EA
; SOURCE LINE # 22
0013 22 RET
; FUNCTION send_clearmen (END)
; FUNCTION sed (BEGIN)
; SOURCE LINE # 24
; SOURCE LINE # 25
; SOURCE LINE # 26
0000 D2AB SETB ET1
0002 D28E SETB TR1
0004 7F03 MOV R7,#03H
0006 7E00 MOV R6,#00H
0008 120000 R LCALL _send_delay1ms
000B C2AB CLR ET1
000D C28E CLR TR1
000F C2B5 CLR remoteout
; SOURCE LINE # 27
0011 8E00 R MOV m,R6
0013 850000 R MOV m+01H,keyvol
0016 ?C0009:
0016 D3 SETB C
0017 E500 R MOV A,m+01H
0019 9400 SUBB A,#00H
001B E500 R MOV A,m
001D 9400 SUBB A,#00H
001F 401E JC ?C0010
; SOURCE LINE # 28
; SOURCE LINE # 29
0021 7F01 MOV R7,#01H
0023 7E00 MOV R6,#00H
0025 120000 R LCALL _send_delay1ms
; SOURCE LINE # 30
0028 D2AB SETB ET1
002A D28E SETB TR1
002C 120000 R LCALL _send_delay1ms
002F C2AB CLR ET1
0031 C28E CLR TR1
0033 C2B5 CLR remoteout
; SOURCE LINE # 31
0035 E500 R MOV A,m+01H
0037 1500 R DEC m+01H
0039 70DB JNZ ?C0009
003B 1500 R DEC m
003D ?C0039:
003D 80D7 SJMP ?C0009
003F ?C0010:
; SOURCE LINE # 32
003F 7F0A MOV R7,#0AH
0041 7E00 MOV R6,#00H
0043 020000 R LJMP _send_delay1ms
; FUNCTION sed (END)
; FUNCTION tx (BEGIN)
; SOURCE LINE # 35
; SOURCE LINE # 36
; SOURCE LINE # 37
0000 E500 R MOV A,keyvol
0002 14 DEC A
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 5
0003 600C JZ ?C0016
0005 14 DEC A
0006 6009 JZ ?C0016
0008 14 DEC A
0009 6006 JZ ?C0016
000B 2403 ADD A,#03H
000D 7007 JNZ ?C0019
; SOURCE LINE # 38
; SOURCE LINE # 39
000F ?C0014:
000F 8000 SJMP ?C0042
; SOURCE LINE # 40
; SOURCE LINE # 41
0011 ?C0016:
0011 ?C0041:
; SOURCE LINE # 42
0011 ?C0042:
0011 0500 R INC keyvol
0013 120000 R LCALL sed
; SOURCE LINE # 43
; SOURCE LINE # 44
; SOURCE LINE # 45
0016 ?C0019:
0016 22 RET
; FUNCTION tx (END)
; FUNCTION keywork (BEGIN)
; SOURCE LINE # 47
; SOURCE LINE # 48
; SOURCE LINE # 49
0000 20930E JB Key1,?C0020
; SOURCE LINE # 50
; SOURCE LINE # 51
0003 120000 R LCALL L?0043
0006 ?C0021:
; SOURCE LINE # 52
0006 3093FD JNB Key1,?C0021
0009 ?C0022:
; SOURCE LINE # 53
0009 D2B0 SETB LED
; SOURCE LINE # 54
000B E4 CLR A
000C F500 R MOV keyvol,A
; SOURCE LINE # 55
000E 120000 R LCALL tx
; SOURCE LINE # 56
0011 ?C0020:
; SOURCE LINE # 57
0011 20940E JB Key2,?C0023
; SOURCE LINE # 58
; SOURCE LINE # 59
0014 120000 R LCALL L?0043
0017 ?C0024:
; SOURCE LINE # 60
0017 3094FD JNB Key2,?C0024
001A ?C0025:
; SOURCE LINE # 61
001A D2B0 SETB LED
; SOURCE LINE # 62
001C 750001 R MOV keyvol,#01H
; SOURCE LINE # 63
001F 120000 R LCALL tx
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 6
; SOURCE LINE # 64
0022 ?C0023:
; SOURCE LINE # 65
0022 20950E JB Key3,?C0026
; SOURCE LINE # 66
; SOURCE LINE # 67
0025 120000 R LCALL L?0044
0028 ?C0027:
; SOURCE LINE # 68
0028 3095FD JNB Key3,?C0027
002B ?C0028:
; SOURCE LINE # 69
002B D2B0 SETB LED
; SOURCE LINE # 70
002D 750002 R MOV keyvol,#02H
; SOURCE LINE # 71
0030 120000 R LCALL tx
; SOURCE LINE # 72
0033 ?C0026:
; SOURCE LINE # 73
0033 20960E JB Key4,?C0029
; SOURCE LINE # 74
; SOURCE LINE # 75
0036 120000 R LCALL L?0044
0039 ?C0030:
; SOURCE LINE # 76
0039 3096FD JNB Key4,?C0030
003C ?C0031:
; SOURCE LINE # 77
003C D2B0 SETB LED
; SOURCE LINE # 78
003E 750003 R MOV keyvol,#03H
; SOURCE LINE # 79
0041 120000 R LCALL tx
; SOURCE LINE # 80
0044 ?C0029:
; SOURCE LINE # 81
0044 D2B5 SETB remoteout
; SOURCE LINE # 82
0046 22 RET
; FUNCTION keywork (END)
; FUNCTION main (BEGIN)
; SOURCE LINE # 84
; SOURCE LINE # 85
; SOURCE LINE # 86
0000 D2B5 SETB remoteout
; SOURCE LINE # 87
0002 120000 R LCALL send_clearmen
0005 ?C0033:
; SOURCE LINE # 88
; SOURCE LINE # 89
; SOURCE LINE # 90
0005 120000 R LCALL keywork
; SOURCE LINE # 91
0008 80FB SJMP ?C0033
; FUNCTION main (END)
; FUNCTION time_intt1 (BEGIN)
; SOURCE LINE # 93
; SOURCE LINE # 95
0000 B2B5 CPL remoteout
C51 COMPILER V7.50 SEND 01/10/2008 11:32:25 PAGE 7
; SOURCE LINE # 96
0002 32 RETI
; FUNCTION time_intt1 (END)
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 247 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 13 ----
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 + -