如何在CC254x上获取BLE 37个通信信道的RSSI?
BLE是有3个广告信道、37个通信信道么?CC254x
使用协议栈可能实现么?
如果不能获取分离的,不使用协议栈,CC254x相关的寄存器是啥?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
能否给点参考代码?
某文档里面:
25.5 Frequency and Channel Programming
For normal transmit and receive tasks, the carrier frequency is set by using the PRF_CHAN.FREQ register.
The carrier frequency is 2379 + n MHz, where n is the value of this register, and n can be from 0 to 116.
This gives a frequency range from 2379 MHz to 2495 MHz. Note that this frequency range extends
beyond the ISM band.
If PRF_CHAN.FREQ is set to 127, and for the RX and TX test commands, the frequency must be
programmed directly in hardware registers. In this case, the synthesizer frequency is set by programming
the 7-bit frequency word located in FREQCTRL.FREQ[6:0]. The synthesizer frequency is given by
2379 + n MHz, where n is the value of FREQCTRL.FREQ[6:0], and is programmable in 1-MHz steps.
The device supports synthesizer frequencies in the range from 2379 MHz to 2495 MHz. The usable
settings for FREQ[6:0] is consequently 0 to 116.
In RX, the system operates on a low intermediate frequency (IF) of 1 MHz for data rates up to 1 Mbps,
and on a zero IF for 2 Mbps. In TX, the system supports operating on low IF or zero IF. The IF to be used
for TX can be programmed in the register MDMTEST1.TX_TONE. The receiver may operate on a positive
or negative IF when the data rate is 1 Mbps and lower; this is controlled with MDMTEST1.RX_IF.
When the symbol rate is 1 Mbps or lower and the LLE programs the frequency, it uses a ±1 MHz IF on
TX. For both RX and TX, a negative IF is used when PRF_CHAN.FREQ < 62, and a positive IF is used
when PRF_CHAN.FREQ ≥ 62
When the symbol rate is 2 Mbps and the LLE programs the frequency, it uses an IF on TX as specified in
PRF_RADIO_CONF.TXIF. This IF may be zero, or ±1 MHz, ±2 MHz, or ±3 MHz. The recommended
setting is ±1 MHz. A negative IF is used when PRF_CHAN.FREQ < 62, and a positive IF is used when
PRF_CHAN.FREQ ≥ 62.
For all data rates, the setting of MDMCTRL1.PHASE_INVERT is taken into account by the LLE when finding
the setting for MDMTEST1.TX_TONE. The FREQCTRL register is programmed corresponding to the
programmed IF in order to operate on the channel specified by PRF_CHAN.FREQ.