📄 ir.lst
字号:
C51 COMPILER V7.50 IR 01/02/2009 14:29:39 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE IR
OBJECT MODULE PLACED IN ir.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ir.c LARGE BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <REG52.H>
2 unsigned char gIrArr[6];
3
4 #define TIME_0_00MS 0x0000
5 #define TIME_1_00MS 0x039a
6 #define TIME_1_13MS 0x0480
7 #define TIME_2_00MS 0x0733
8 #define TIME_2_50MS 0x0900
9 #define TIME_13_2MS 0x2ecd
10 #define TIME_20_0MS 0x47ff
11 #define TIME1_LOAD (0xffff - TIME_20_0MS)
12
13 bit running;
14 long Irbuf;
15 unsigned char Irdat;
16 bit Irok;
17
18
19 void int1_isr(void) interrupt 2 //遥控使用外部中断0,接P3.2口
20 {
21 1 unsigned int timer;
22 1 static char x=0x03;
23 1 TR0 = 0;
24 1 timer = ((TH0 << 8) | TL0) - TIME1_LOAD;
25 1 TH0 = TIME1_LOAD >> 8;
26 1 TL0 = TIME1_LOAD & 0xff;
27 1 x=(x ^ 0xff);
28 1 *((char xdata *)0xd000)=x;
29 1 TR0=1;
30 1 if (timer > TIME_1_00MS && timer < TIME_1_13MS) //data 0
31 1 Irbuf = (Irbuf << 1) & 0xfffffffe;
32 1 else if (timer > TIME_2_00MS && timer < TIME_2_50MS) //data 1
33 1 Irbuf = (Irbuf << 1) | 0x00000001;
34 1 else if (timer == TIME_0_00MS || timer > TIME_13_2MS)
35 1 Irbuf = 0x0000;
36 1 else
37 1 ;
38 1 if (((Irbuf >> 8) & 0xff) == ((~(Irbuf >> 0)) & 0xff))
39 1 {
40 2 Irdat = (Irbuf>>8) & 0xff;
41 2 gIrArr[0]=(Irdat / 100) + 0x30;
42 2
43 2 gIrArr[1]=((Irdat % 100) / 10) + 0x30;
44 2 gIrArr[2]=(Irdat % 10) +0x30;
45 2 gIrArr[3]='\n';
46 2 gIrArr[4]='\r';
47 2 }
48 1 }
49
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 340 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 12 ----
C51 COMPILER V7.50 IR 01/02/2009 14:29:39 PAGE 2
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = 2 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -