📄 isd_debug.lst
字号:
C51 COMPILER V7.50 ISD_DEBUG 11/11/2005 06:13:35 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE ISD_DEBUG
OBJECT MODULE PLACED IN ISD_Debug.OBJ
COMPILER INVOKED BY: E:\Keil\C51\BIN\C51.EXE ISD_Debug.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*= nRF_Perf.c ==================================================================
2 *
3 * Development By www.51kaifa.com
4 * Copyright (C) 2005
5 *
6 * 无忧无线SOC开发平台专用测试程序
7 * 版本:1.0
8 *
9 * 2005年7月7日
10 *
11 *===============================================================================
12 */
13
14 #include <Nordic\reg9e5.h>
15 #include "ISD51.h"
16
17 #define HFREQ 0 // 0=433MHz, 1=868/915MHz
18 #define POWER 3 // 0=min power...3 = max power
19
20 bit rx_rqst;
21 char rcv_data;
22 unsigned int syn_count;
23
24 unsigned char SpiReadWrite(unsigned char b)
25 {
26 1 EXIF &= ~0x20; // Clear SPI interrupt
27 1 SPI_DATA = b; // Move byte to send to SPI data register
28 1 while((EXIF & 0x20) == 0x00) // Wait until SPI hs finished transmitting
29 1 ;
30 1 return SPI_DATA;
31 1 }
32
33 SpiWrite(unsigned char b)
34 {
35 1 while((EXIF & 0x20) == 0x00) // Wait until SPI hs finished transmitting
36 1 ;
37 1 EXIF &= ~0x20; // Clear SPI interrupt
38 1 SPI_DATA = b; // Move byte to send to SPI data register
39 1 }
40 /*(
41 void PutChar(char c)
42 {
43 while(!TI)
44 ;
45 TI = 0;
46 SBUF = c;
47 }
48
49 void PutString(const char *s)
50 {
51 while(*s != 0)
52 PutChar(*s++);
53 }
54 */
55
C51 COMPILER V7.50 ISD_DEBUG 11/11/2005 06:13:35 PAGE 2
56 void Init(void)
57 {
58 1 unsigned char tmp;
59 1
60 1 //SPI 设置
61 1
62 1 SPICLK = 0; // Max SPI clock
63 1 SPI_CTRL = 0x02; // Connect intewrnal SPI controller to Radio
64 1
65 1 // Configure Radio:
66 1 RACSN = 0;
67 1 SpiReadWrite(WRC | 0x03); // Write to RF config Rx_deepess 3 (RX payload)
68 1 SpiReadWrite(0x01); // One byte RX payload
69 1 SpiReadWrite(0x01); // One byte TX payload
70 1 RACSN = 1;
71 1
72 1 RACSN = 0;
73 1 SpiReadWrite(RRC | 0x01); // Read RF config Rx_deepess 1
74 1 tmp = SpiReadWrite(0) & 0xf1; // Clear the power and frequency setting bits
75 1 RACSN = 1;
76 1
77 1 RACSN = 0;
78 1 SpiReadWrite(WRC | 0x01); // Write RF config Rx_deepess 1
79 1 // Change power defined by POWER and to 433 or 868/915MHz defined by HFREQ above:
80 1 SpiReadWrite(tmp | (POWER <<2) | (HFREQ << 1));
81 1 RACSN = 1;
82 1
83 1 RACSN = 0;
84 1 SpiReadWrite(RRC | 0x09); // Read RF config Rx_deepess 1
85 1 tmp = SpiReadWrite(0) | 0x04; // Clear the power and frequency setting bits
86 1 RACSN = 1;
87 1
88 1
89 1 RACSN = 0;
90 1 SpiReadWrite(WRC | 0x09); // Write to RF config Rx_deepess 9 (cpu clk)
91 1 SpiReadWrite(tmp); // One byte RX cpu clk
92 1 RACSN = 1;
93 1
94 1 }
95
96 void uart_init(void)
97 {
98 1 TH1 = 0xE6; // 19200@16MHz (when T1M=1 and SMOD=1)
99 1 CKCON |= 0x30; // T1M=1 (/4 timer clock)
100 1 PCON = 0x80; // SMOD=1 (double baud rate)
101 1 SCON = 0x52; // Serial mode1, enable receiver
102 1 TMOD = 0x20; // Timer1 8bit auto reload
103 1 TR1 = 1; // Start timer1
104 1 P0_ALT = 0x06; // Select alternate functions on pins P0.1 and P0.2
105 1 P0_DIR = 0xAA; // P0.1 (RxD) is input
106 1
107 1 }
108
109 void Transmitstring()
110 {
111 1 TRX_CE = 0;
112 1
113 1 RACSN = 0;
114 1 SpiWrite(WTP);
115 1 SpiWrite(0x23);
116 1 RACSN = 1;
117 1
C51 COMPILER V7.50 ISD_DEBUG 11/11/2005 06:13:35 PAGE 3
118 1 TRX_CE = 1;
119 1
120 1
121 1 }
122
123 void DR_ISR(void) interrupt 10
124 {
125 1
126 1 EXIF = EXIF & 0xBF;
127 1
128 1 RACSN = 0;
129 1 SpiReadWrite(RRP);
130 1 rcv_data = SpiReadWrite(0);
131 1 RACSN = 1;
132 1
133 1 if (rcv_data == 0x23)
134 1 {
135 2 rx_rqst=1;
136 2 P06 = ~P06;
137 2 }
138 1
139 1 }
140
141 void main(void)
142 {
143 1
144 1 Init();
145 1 uart_init();
146 1
147 1 EX4 = 1;
148 1 PX4 = 1;
149 1
150 1 EA = 1;
151 1 ISDwait();
152 1
153 1 while(1)
154 1 {
155 2
156 2 syn_count++;
157 2
158 2 if (syn_count==32000)
159 2 {
160 3 TXEN = 1;
161 3 }
162 2 if (syn_count==32767)
163 2 {
164 3 Transmitstring();
165 3 P04 = ~P04;
166 3 syn_count=0;
167 3 TXEN = 0;
168 3 }
169 2
170 2 if (rx_rqst==1)
171 2 {
172 3 rx_rqst=0;
173 3 }
174 2
175 2 }
176 1 }
177
178
179 // End
C51 COMPILER V7.50 ISD_DEBUG 11/11/2005 06:13:35 PAGE 4
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 268 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 3 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -