📄 master.lst
字号:
C51 COMPILER V8.02 MASTER 08/29/2008 16:11:26 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MASTER
OBJECT MODULE PLACED IN .\Bin\master.obj
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE master.c BROWSE DEBUG OBJECTEXTEND OBJECT(.\Bin\master.obj)
line level source
1 #include<reg52.h>
2 #include<def.h>
3 #include<nRF24L01.h>
4
5
6
7 sbit LED2 =P0^5;
8 sbit LED1 =P0^6;
9
10 sbit KEY1 =P2^4;//P2^1;
11 sbit KEY2 =P2^5;
12 sbit KEY3 =P2^3;
13 sbit KEY4 =P2^2;
14 sbit KEY5 =P2^0;
15 sbit KEY6 =P2^1;
16 sbit FORWARD =P1^0;//P3^5;
17 sbit BACK =P1^1;
18 sbit LEFT =P1^3;
19 sbit RIGHT =P1^2;
20
21 void delay(unsigned int s)
22 {
23 1 unsigned int i;
24 1 for(i=0; i<s; i++);
25 1 for(i=0; i<s; i++);
26 1 }
27
28
29 unsigned char old=0xff,new=0xff;
30 unsigned char bdata keycheck[2]={0xff,0xff};
31
32 unsigned char checkkeys_0()
33 {
34 1 old=new;
35 1 new=0xff;
36 1 if(KEY1==0)new&=0x7f;
37 1 if(KEY2==0)new&=0xbf;
38 1 if(KEY3==0)new&=0xdf;
39 1 if(KEY4==0)new&=0xef;
40 1 if(KEY5==0)new&=0xf7;
41 1 if(KEY6==0)new&=0xfb;
42 1 if(FORWARD==0)new&=0xfd;
43 1 if(BACK==0)new&=0xfe;
44 1 old&=(~new);
45 1 if(old)
46 1 {
47 2 inerDelay_us(10000);
48 2 new=0xff;
49 2 if(KEY1==0)new&=0x7f;
50 2 if(KEY2==0)new&=0xbf;
51 2 if(KEY3==0)new&=0xdf;
52 2 if(KEY4==0)new&=0xef;
53 2 if(KEY5==0)new&=0xf7;
54 2 if(KEY6==0)new&=0xfb;
55 2 if(FORWARD==0)new&=0xfd;
C51 COMPILER V8.02 MASTER 08/29/2008 16:11:26 PAGE 2
56 2 if(BACK==0)new&=0xfe;
57 2 return old&(~new);
58 2 }
59 1 return 0;
60 1 }
61
62 unsigned char checkkeys_1()
63 {
64 1 old=new;
65 1 new=0xff;
66 1 if(LEFT==0)new&=0x7f;
67 1 if(RIGHT==0)new&=0xbf;
68 1 // if(KEY3==0)new&=0xdf;
69 1 // if(KEY4==0)new&=0xef;
70 1 // if(KEY5==0)new&=0xf7;
71 1 // if(KEY6==0)new&=0xfb;
72 1 // if(FORWARD==0)new&=0xfd;
73 1 // if(BACK==0)new&=0xfe;
74 1 old&=(~new);
75 1 if(old)
76 1 {
77 2 inerDelay_us(10000);
78 2 new=0xff;
79 2 if(LEFT==0)new&=0x7f;
80 2 if(RIGHT==0)new&=0xbf;
81 2 // if(KEY3==0)new&=0xdf;
82 2 // if(KEY4==0)new&=0xef;
83 2 // if(KEY5==0)new&=0xf7;
84 2 // if(KEY6==0)new&=0xfb;
85 2 // if(FORWARD==0)new&=0xfd;
86 2 // if(BACK==0)new&=0xfe;
87 2 return old&(~new);
88 2 }
89 1 return 0;
90 1 }
91
92
93
94 void main()
95 {
96 1
97 1
98 1 TMOD = 0x11; //设置计数器工作方式为16位装载 ,计数器1波特率发生器2400bps@12MHz
99 1 IE = 0xff;
100 1 SCON=0x50;
101 1 TCLK=1;
102 1 RCLK=1;
103 1 RCAP2H=0xff;
104 1 RCAP2L=0xFD;//115200Bps
105 1 TR2=1;
106 1
107 1 init_io() ;
108 1
109 1
110 1 while(1)
111 1 {
112 2 keycheck[0]=checkkeys_0();
113 2 keycheck[1]=checkkeys_1();
114 2 if(keycheck[0] || keycheck[1]) nRF24L01_TxPacket(keycheck);
115 2 delay(1000);
116 2 }
117 1 }
C51 COMPILER V8.02 MASTER 08/29/2008 16:11:26 PAGE 3
118
119
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 281 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 ----
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 + -