📄 main.lst
字号:
C51 COMPILER V7.08 MAIN 12/11/2005 15:43:14 PAGE 1
C51 COMPILER V7.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 //= main.c (nRF9E5 DEMO) ===================================================================
2
3
4 #include "reg9e5.h"
5 #include "util.h"
6 #include "uart.h"
7 #include "radio.h"
8 #include "lm35.h"
9 //#include "isd51.h"
10 void ReceiveFile(void);
11 void send_data(unsigned char num);
12 void TransmitFile(void);
13 unsigned char idata buf[25];
14 sbit ID_CHANGE_EN = P0^7; //如果P0_7==0; 进入ID修改程序!
15 sbit KEY = P0^4;
16 sbit LEDR = P0^5;
17 sbit LEDG = P0^6;
18 unsigned char aaa,SQC;
19 /*unsigned char bbb;
20 unsigned char ccc;
21 unsigned char ddd,EEE;
22 unsigned char conter; //how many pack is have
23 unsigned int bh;
24 */
25 extern unsigned char hopIdx;
26 extern unsigned char Buf_1[],Counter,NewData;
27 void Init(void)
28 {
29 1 unsigned char cklf;
30 1
31 1 SPICLK = 0; // Max SPI clock
32 1 SPI_CTRL = 0x02; // Connect internal SPI controller to Radio
33 1 // Switch to 16MHz clock:
34 1 RACSN = 0;
35 1 SpiReadWrite(RRC | 0x09);
36 1 cklf = SpiReadWrite(0) | 0x04;
37 1 RACSN = 1;
38 1 RACSN = 0;
39 1 SpiReadWrite(WRC | 0x09);
40 1 SpiReadWrite(cklf);
41 1 RACSN = 1;
42 1 P0_DIR = 0x9f;
43 1 InitTimer();
44 1 EA = 1;
45 1 }
46
47 void main(void)
48 {
49 1
50 1 unsigned char i;
51 1 Init();
52 1 InitADC();
53 1 InitUart();
54 1 while(1)
55 1 {
C51 COMPILER V7.08 MAIN 12/11/2005 15:43:14 PAGE 2
56 2 for(i=0;i<4;)//接收来自计算机的命令
57 2 {
58 3 while(1)
59 3 {
60 4 if(RI==1)
61 4 {
62 5 RI=0;
63 5 Buf_1[i]=SBUF;
64 5 if(Buf_1[0]==0x40)
65 5 {i++;}
66 5 break;
67 5 }
68 4 };
69 3
70 3 }
71 2 if(Buf_1[2]==0xaa)//受到命令,开始查询从机
72 2 {
73 3 TransmitFile();
74 3 }
75 2 }
76 1 }
77
78 //---------------------------------RECVIER-----------------------------
79 //----------------------------------------------------------------------------------------------
80 void TransmitFile(void)
81 {
82 1 // unsigned int temp;
83 1 unsigned char i;
84 1 unsigned char BUF_KUCUN[5]={0,0,0,0,0};
85 1
86 1 for(i=1;i<4;i++)
87 1 {
88 2 for (aaa=0;aaa<100;aaa++)
89 2 {
90 3 Delay100us(50);
91 3 }
92 2 LEDR=1;
93 2 LEDG=1;
94 2 for (aaa=0;aaa<100;aaa++)
95 2 {
96 3 Delay100us(50);
97 3 }
98 2 LEDR=0;
99 2 LEDG=0;
100 2 buf[0] = 0x40;
101 2 buf[1] = 0x02;
102 2 buf[2] = i; //要查询的ID
103 2 buf[3] = 0x0d;
104 2 InitTransmitter(4, 0);
105 2 TransmitPacket(buf);
106 2 InitReceiver(4, 0);
107 2 if (ReceivePacket(buf) == 1)
108 2 {
109 3 if(buf[2]==i)
110 3 {
111 4 BUF_KUCUN[0]++;
112 4 BUF_KUCUN[i]=i;
113 4 }
114 3 }
115 2
116 2 }
117 1 sPutChar(0X40);
C51 COMPILER V7.08 MAIN 12/11/2005 15:43:14 PAGE 3
118 1 Delay100us(50);
119 1 sPutChar(BUF_KUCUN[0]);//采集到的个数
120 1 Delay100us(50);
121 1 sPutChar(BUF_KUCUN[1]);//
122 1 Delay100us(50);
123 1 sPutChar(BUF_KUCUN[2]);//
124 1 Delay100us(50); //-----采集到的ID,现在只有三个ID,存储在1-3中
125 1 sPutChar(BUF_KUCUN[3]);//其中数据若为零表示没有采集到该ID
126 1 Delay100us(50);
127 1 //sPutChar(BUF_KUCUN[4]);//
128 1 //Delay100us(50);
129 1 sPutChar(0x0d);
130 1
131 1 }
132
133
134 //-------------------------send all---------------------------------------
135
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 293 ----
CONSTANT SIZE = 5 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 7
IDATA SIZE = 25 ----
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 + -