source: PlatformSupport/CustomPeripherals/pcores/radio_controller_v2_00_a/src/radio_controller.h

Last change on this file was 2394, checked in by murphpo, 10 years ago

updated radio_controller for WARP v2 for software control of antenna switch

File size: 15.2 KB
Line 
1/*****************************************************************************
2* Filename:          radio_controller.h
3* Version:           2.00.a
4* Description:       radio_controller Driver Header File
5*****************************************************************************/
6
7#ifndef RADIO_CONTROLLER_H
8#define RADIO_CONTROLLER_H
9
10/***************************** Include Files *******************************/
11
12#include "xbasic_types.h"
13#include "xstatus.h"
14#include "xil_io.h"
15#include "sleep.h"
16
17int radio_controller_init(u32 ba, u32 rfSel, u8 clkDiv_SPI, u8 clkDiv_TxDelays);
18int radio_controller_TxEnable(u32 ba, u32 rfSel);
19int radio_controller_RxEnable(u32 ba, u32 rfSel);
20int radio_controller_TxRxDisable(u32 ba, u32 rfSel);
21int radio_controller_setCenterFrequency(u32 ba, u32 rfSel, u8 bandSel, u8 chanNum);
22u16 radio_controller_SPI_read(u32 ba, u32 rfSel, u8 regAddr);
23int radio_controller_SPI_setRegBits(u32 ba, u32 rfSel, u8 regAddr, u16 regDataMask, u16 regData);
24int radio_controller_setRadioParam(u32 ba, u32 rfSel, u32 paramID, u32 paramVal);
25int radio_controller_setTxGainSource(u32 ba, u32 rfSel, u8 gainSrc);
26int radio_controller_setRxGainSource(u32 ba, u32 rfSel, u8 gainSrc);
27int radio_controller_setCtrlSource(u32 ba, u32 rfSel, u32 ctrlSrcMask, u8 ctrlSrc);
28int radio_controller_setRxHP(u32 ba, u32 rfSel, u8 mode);
29int radio_controller_setTxGainTarget(u32 ba, u32 rfSel, u8 gainTarget);
30int radio_controller_apply_TxDCO_calibration(u32 rc_ba, u32 eeprom_ba, u32 rfSel);
31int radio_controller_DAC_OffsetAdj(u32 rc_ba, u32 rf_sel, u8 chan, short dc_val);
32
33/************************** Constant Definitions ***************************/
34
35#define RC_USER_SLV_SPACE_OFFSET (0x00000000)
36#define RC_SLV_REG0_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000000)
37#define RC_SLV_REG1_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000004)
38#define RC_SLV_REG2_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000008)
39#define RC_SLV_REG3_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000000C)
40#define RC_SLV_REG4_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000010)
41#define RC_SLV_REG5_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000014)
42#define RC_SLV_REG6_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000018)
43#define RC_SLV_REG7_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000001C)
44#define RC_SLV_REG8_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000020)
45#define RC_SLV_REG9_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000024)
46#define RC_SLV_REG10_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000028)
47#define RC_SLV_REG11_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000002C)
48#define RC_SLV_REG12_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000030)
49#define RC_SLV_REG13_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000034)
50#define RC_SLV_REG14_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000038)
51#define RC_SLV_REG15_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000003C)
52#define RC_SLV_REG16_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000040)
53#define RC_SLV_REG17_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000044)
54#define RC_SLV_REG18_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000048)
55#define RC_SLV_REG19_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000004C)
56#define RC_SLV_REG20_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000050)
57#define RC_SLV_REG21_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000054)
58#define RC_SLV_REG22_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000058)
59#define RC_SLV_REG23_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000005C)
60#define RC_SLV_REG24_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000060)
61#define RC_SLV_REG25_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000064)
62#define RC_SLV_REG26_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000068)
63#define RC_SLV_REG27_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000006C)
64#define RC_SLV_REG28_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000070)
65#define RC_SLV_REG29_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000074)
66#define RC_SLV_REG30_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000078)
67#define RC_SLV_REG31_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000007C)
68#define RC_SLV_REG32_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000080)
69#define RC_SLV_REG33_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000084)
70#define RC_SLV_REG34_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000088)
71#define RC_SLV_REG35_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000008C)
72#define RC_SLV_REG36_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000090)
73#define RC_SLV_REG37_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000094)
74#define RC_SLV_REG38_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x00000098)
75#define RC_SLV_REG39_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x0000009C)
76#define RC_SLV_REG40_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000A0)
77#define RC_SLV_REG41_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000A4)
78#define RC_SLV_REG42_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000A8)
79#define RC_SLV_REG43_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000AC)
80#define RC_SLV_REG44_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000B0)
81#define RC_SLV_REG45_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000B4)
82#define RC_SLV_REG46_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000B8)
83#define RC_SLV_REG47_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000BC)
84#define RC_SLV_REG48_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000C0)
85#define RC_SLV_REG49_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000C4)
86#define RC_SLV_REG50_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000C8)
87#define RC_SLV_REG51_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000CC)
88#define RC_SLV_REG52_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000D0)
89#define RC_SLV_REG53_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000D4)
90#define RC_SLV_REG54_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000D8)
91#define RC_SLV_REG55_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000DC)
92#define RC_SLV_REG56_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000E0)
93#define RC_SLV_REG57_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000E4)
94#define RC_SLV_REG58_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000E8)
95#define RC_SLV_REG59_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000EC)
96#define RC_SLV_REG60_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000F0)
97#define RC_SLV_REG61_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000F4)
98#define RC_SLV_REG62_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000F8)
99#define RC_SLV_REG63_OFFSET (RC_USER_SLV_SPACE_OFFSET + 0x000000FC)
100
101
102/***** Register Masks ********
103 * See comments in user_logic.v for full address map
104*******************************/
105
106//Control source bits: 0=use registers, 1=use hardware ports (usr_* in HDL)
107
108//Per-RF chain masks, shared by registers 0, 2, 3, 11 below
109#define RC_CTRLREGMASK_RFA              0x000000FF
110#define RC_CTRLREGMASK_RFB              0x0000FF00
111#define RC_CTRLREGMASK_RFC              0x00FF0000
112#define RC_CTRLREGMASK_RFD              0xFF000000
113
114//register 0 masks
115#define RC_REG0_TXEN            0x80808080
116#define RC_REG0_RXEN            0x40404040
117#define RC_REG0_RXHP            0x20202020
118#define RC_REG0_SHDN            0x10101010
119
120#define RC_REG0_TXEN_CTRLSRC    0x08080808
121#define RC_REG0_RXEN_CTRLSRC    0x04040404
122#define RC_REG0_RXHP_CTRLSRC    0x02020202
123#define RC_REG0_SHDN_CTRLSRC    0x01010101
124
125#define RC_REG0_ALL_CTRLSRC     0x0F0F0F0F
126
127//register 1 masks
128#define RC_REG1_DLY_PAEN        0x00FF0000
129#define RC_REG1_DLY_TXEN        0x0000FF00
130#define RX_REG1_DLY_PHY         0x000000FF
131
132//register 2 masks
133#define RC_REG2_TXGAIN          0x3F3F3F3F
134#define RC_REG2_TXGAIN_CTRLSRC  0x80808080
135
136//register 3 masks
137#define RC_REG3_RXGAIN_BB       0x1F1F1F1F
138#define RC_REG3_RXGAIN_RF       0x60606060
139#define RC_REG3_RXGAIN_CTRLSRC  0x80808080
140
141//register 4 masks
142#define RC_REG4_CLKDIV_SPI      0x00000070
143#define RC_REG4_CLKDIV_SPI_SHIFT    4
144
145#define RC_REG4_CLKDIV_TXDLY    0x00000003
146#define RC_REG4_CLKDIV_TXDLY_SHIFT  0
147
148#define RC_REG4_CLKDIV_DAC_SPI      0x00070000
149#define RC_REG4_CLKDIV_DAC_SPI_SHIFT    16
150
151//register 5 masks
152#define RC_REG5_RFSEL_RFD       0x80000000
153#define RC_REG5_RFSEL_RFC       0x40000000
154#define RC_REG5_RFSEL_RFB       0x20000000
155#define RC_REG5_RFSEL_RFA       0x10000000
156#define RC_REG5_RFSEL_ALL       (RC_REG5_RFSEL_RFA | RC_REG5_RFSEL_RFB | RC_REG5_RFSEL_RFC | RC_REG5_RFSEL_RFD)
157
158#define RC_REG5_REGADDR         0x000F0000
159#define RF_REG5_REGADDR_SHIFT   16
160#define RC_REG5_REGDATA         0x00003FFF
161
162//register 6 masks
163#define RC_REG6_DACSEL_RFD      0x80000000
164#define RC_REG6_DACSEL_RFC      0x40000000
165#define RC_REG6_DACSEL_RFB      0x20000000
166#define RC_REG6_DACSEL_RFA      0x10000000
167#define RC_REG6_DACSEL_ALL      (RC_REG6_DACSEL_RFA | RC_REG6_DACSEL_RFB | RC_REG6_DACSEL_RFC | RC_REG6_DACSEL_RFD)
168
169#define RC_REG6_REGADDR         0x000F0000 //AD9777 registers have 5 bit addresses, but MSB is always 0
170#define RC_REG6_REGADDR_SHIFT   16
171#define RC_REG6_REGDATA         0x000000FF //AD9777 SPI writes are 8 data bits
172
173//register 7 is DAC SPI Rx (1 byte per RF)
174
175//register 8- Converter aux control
176#define RC_REG8_MASK_RFA        0xFF000000
177#define RC_REG8_MASK_RFB        0x00FF0000
178#define RC_REG8_MASK_RFC        0x0000FF00
179#define RC_REG8_MASK_RFD        0x000000FF
180
181#define RC_REG8_MASK_ANTSW_MODE 0x01010101
182
183#define RC_REG8_MASK_RXADC_DCS      0x80808080
184#define RC_REG8_MASK_RXADC_DFS      0x40404040
185#define RC_REG8_MASK_RXADC_PWDN     0x20202020
186#define RC_REG8_MASK_RSSIADC_CLAMP  0x10101010
187#define RC_REG8_MASK_RSSIADC_HIZ    0x08080808
188#define RC_REG8_MASK_RSSIADC_SLEEP  0x04040404
189#define RC_REG8_MASK_DAC_RESET      0x02020202
190
191//register 9- aux status inputs
192//same per-RF masks as reg8
193#define RC_REG9_MASK_DIP_SW         0xF0F0F0F0
194#define RC_REG9_MASK_DAC_PLL_LOCK   0x08080808
195
196//register 10 is reserved (implemented as 32-bit RW, not tied to external ports)
197
198//easier macros for user code
199#define RC_RFA      RC_REG5_RFSEL_RFA
200#define RC_RFB      RC_REG5_RFSEL_RFB
201#define RC_RFC      RC_REG5_RFSEL_RFC
202#define RC_RFD      RC_REG5_RFSEL_RFD
203#define RC_ANY_RF   RC_REG5_RFSEL_ALL
204
205#define RC_TXEN_CTRLSRC RC_REG0_TXEN_CTRLSRC
206#define RC_RXEN_CTRLSRC RC_REG0_RXEN_CTRLSRC
207#define RC_RXHP_CTRLSRC RC_REG0_RXHP_CTRLSRC
208#define RC_SHDN_CTRLSRC RC_REG0_SHDN_CTRLSRC
209
210
211
212//register 11 masks
213#define RC_REG11_TXEN           0x80808080
214#define RC_REG11_RXEN           0x40404040
215#define RC_REG11_RXHP           0x20202020
216#define RC_REG11_SHDN           0x10101010
217#define RC_REG11_LD             0x08080808
218#define RC_REG11_SPI_ACTIVE     0x04040404
219#define RC_REG11_24PA_ACTIVE    0x02020202
220#define RC_REG11_5PA_ACTIVE     0x01010101
221
222
223//registers 12-24 are mirror regs for RFA
224//registers 25-37 are mirror regs for RFB
225//registers 38-50 are mirror regs for RFC
226//registers 51-63 are mirror regs for RFD
227#define RC_SPI_MIRRORREGS_RFA_BASEADDR      RC_SLV_REG12_OFFSET
228#define RC_SPI_MIRRORREGS_RFB_BASEADDR      RC_SLV_REG25_OFFSET
229#define RC_SPI_MIRRORREGS_RFC_BASEADDR      RC_SLV_REG38_OFFSET
230#define RC_SPI_MIRRORREGS_RFD_BASEADDR      RC_SLV_REG51_OFFSET
231
232#define RC_EEPROM_TXDCO_ADDR_RFA_I          16364   
233#define RC_EEPROM_TXDCO_ADDR_RFA_Q          16366   
234#define RC_EEPROM_TXDCO_ADDR_RFB_I          16368   
235#define RC_EEPROM_TXDCO_ADDR_RFB_Q          16370   
236
237/********** Macros **********/
238#define radio_controller_setCtrlSrc(ba, rfSel, x)   (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
239                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~(RC_REG0_RXEN & rfSel)) | \
240                                                    (RC_REG0_TXEN & rfSel) | (RC_REG0_SHDN & rfSel)))
241
242
243#define radio_controller_setClkDiv_SPI(ba, x)       (Xil_Out32(ba+RC_SLV_REG4_OFFSET, \
244                                                     ((Xil_In32(ba+RC_SLV_REG4_OFFSET)&(~RC_REG4_CLKDIV_SPI)) | \
245                                                     ((x<<RC_REG4_CLKDIV_SPI_SHIFT) & RC_REG4_CLKDIV_SPI))))
246
247#define radio_controller_setClkDiv_TxDelays(ba, x)      (Xil_Out32(ba+RC_SLV_REG4_OFFSET, \
248                                                     ((Xil_In32(ba+RC_SLV_REG4_OFFSET)&(~RC_REG4_CLKDIV_TXDLY)) | \
249                                                     ((x<<RC_REG4_CLKDIV_TXDLY_SHIFT) & RC_REG4_CLKDIV_TXDLY))))
250
251//TxEn, RxEn and SHDN are mutually exclusive in normal operation, so asserting one here forces the others off for the selected RF paths
252// TxEn/RxEn are active high, SHDN is active low
253// TxEn: reg0 <= (current reg0 with selected RxEn deasserted) + (selected TxEn asserted) + (selected SHDN deasserted)
254#define radio_controller_setMode_Tx(ba, rfSel)      (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
255                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~(RC_REG0_RXEN & rfSel)) | \
256                                                    (RC_REG0_TXEN & rfSel) | (RC_REG0_SHDN & rfSel)))
257
258// RxEn: reg0 <= (current reg0 with selected TxEn deasserted) + (selected TxEn asserted) + (selected SHDN deasserted)
259#define radio_controller_setMode_Rx(ba, rfSel)      (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
260                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~(RC_REG0_TXEN & rfSel)) | \
261                                                    (RC_REG0_RXEN & rfSel) | (RC_REG0_SHDN & rfSel)))
262
263// Shutdown: reg0 <= (current reg0 with selected Tx, Rx deasserted) + (selected SHDN asserted)
264#define radio_controller_setMode_shutdown(ba, rfSel)    (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
265                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~((RC_REG0_TXEN | RC_REG0_RXEN | RC_REG0_SHDN) & rfSel))))
266
267// Standby: reg0 <= (current reg0 with selected Tx, Rx, SHDN deasserted)
268#define radio_controller_setMode_standby(ba, rfSel) (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
269                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~((RC_REG0_TXEN | RC_REG0_RXEN) & rfSel)) | \
270                                                    (RC_REG0_SHDN & rfSel)))
271
272// Reset: reg0 <= (current reg0 with selected Tx, Rx, SHDN asserted)
273#define radio_controller_setMode_reset(ba, rfSel)   (Xil_Out32(ba+RC_SLV_REG0_OFFSET, \
274                                                    (Xil_In32(ba+RC_SLV_REG0_OFFSET) & ~(RC_REG0_SHDN & rfSel)) | \
275                                                    ((RC_REG0_TXEN | RC_REG0_RXEN) & rfSel)))
276                                                   
277#define radio_controller_SPI_write(ba, rfsel, regaddr, regdata) (Xil_Out32(ba+RC_SLV_REG5_OFFSET, \
278                                                                (rfsel & RC_REG5_RFSEL_ALL) | \
279                                                                (regdata & RC_REG5_REGDATA) | \
280                                                                ((regaddr << RF_REG5_REGADDR_SHIFT) & RC_REG5_REGADDR)))
281
282                                                           
283#define radio_controller_setTxDelays(ba, dly_GainRamp, dly_PA, dly_TX, dly_PHY) Xil_Out32(ba+RC_SLV_REG1_OFFSET, ( \
284                                                                                ((dly_GainRamp&0xFF)<<24) | ((dly_PA&0xFF)<<16) | ((dly_TX&0xFF)<<8) | (dly_PHY&0xFF)))
285
286#define radio_controller_setTxGainTiming(ba, gainStep, timeStep)        Xil_Out32(ba+RC_SLV_REG4_OFFSET, (Xil_In32(ba+RC_SLV_REG4_OFFSET) & (~(0x0000FF00))) | \
287                                                                        ((gainStep&0xF)<<8) | ((timeStep&0xF)<<12))
288                                                   
289//DAC SPI macros                                                   
290#define radio_controller_DAC_SPI_write(ba, dacsel, regaddr, regdata) (Xil_Out32(ba+RC_SLV_REG6_OFFSET, \
291                                                                (dacsel & RC_REG6_DACSEL_ALL) | \
292                                                                (regdata & RC_REG6_REGDATA) | \
293                                                                ((regaddr << RC_REG6_REGADDR_SHIFT) & RC_REG6_REGADDR)))
294
295#define radio_controller_setClkDiv_DAC_SPI(ba, x)       (Xil_Out32(ba+RC_SLV_REG4_OFFSET, \
296                                                     ((Xil_In32(ba+RC_SLV_REG4_OFFSET)&(~RC_REG4_CLKDIV_DAC_SPI)) | \
297                                                     ((x<<RC_REG4_CLKDIV_DAC_SPI_SHIFT) & RC_REG4_CLKDIV_DAC_SPI))))
298
299#define RC_24GHZ 0
300#define RC_5GHZ  1
301
302#define RC_GAINSRC_SPI  1
303#define RC_GAINSRC_REG  2
304#define RC_GAINSRC_HW   3
305
306#define RC_CTRLSRC_HW   1
307#define RC_CTRLSRC_REG  2
308
309#define RC_RXHP_OFF     0
310#define RC_RXHP_ON      1
311           
312#define RC_INCLUDED_PARAMS_GAIN_CTRL    1
313#define RC_INCLUDED_PARAMS_FILTS        1
314#define RC_INCLUDED_PARAMS_MISC         1
315#define RC_INCLUDED_PARAMS_CALIBRATION  1
316
317#define RC_PARAMID_TXGAINS_SPI_CTRL_EN      1
318#define RC_PARAMID_RXGAINS_SPI_CTRL_EN      2
319#define RC_PARAMID_RXGAIN_RF                3
320#define RC_PARAMID_RXGAIN_BB                4
321#define RC_PARAMID_TXGAIN_RF                5
322#define RC_PARAMID_TXGAIN_BB                6
323#define RC_PARAMID_RSSI_HIGH_BW_EN          7
324#define RC_PARAMID_TXLINEARITY_PADRIVER     8
325#define RC_PARAMID_TXLINEARITY_VGA          9
326#define RC_PARAMID_TXLINEARITY_UPCONV       10
327#define RC_PARAMID_TXLPF_BW                 12
328#define RC_PARAMID_RXLPF_BW                 13
329#define RC_PARAMID_RXLPF_BW_FINE            14
330#define RC_PARAMID_RXHPF_HIGH_CUTOFF_EN     15
331
332#define RC_INVALID_PARAM    -2
333#define RC_INVALID_PARAMID  -3
334#define RC_INVALID_RFSEL    -4
335#endif /** RADIO_CONTROLLER_H */
Note: See TracBrowser for help on using the repository browser.