⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rf_library.h

📁 reference about wireless design which is helpful to everyone
💻 H
字号:
/** \page page_cc2511_rf_library CC2511 RF Library
  * \brief Simple radio framework intended to be used between CC2511 USB Dongle and CC2510 external devices.
 *
 * This RF framework will set up the radio and provide simple framework for
 * binding one or multiple CC2510 external devices to a CC2511 USB Dongle, and transferring data between the devices. \n
 *
 * The framework:
 * \li Use acknowledge messages and sequence bit for guarantied lossless, error free data transfer.
 * \li Is completely interrupt driven and has a set of hooks / callback functions that notify the main
 * application when data is received or another RF event occurs.
 * \li Use a 32 bit addresses to identify the different devices. (24 bit network address and 8 bit node address)
 * \li Addresses are distributed by the CC2511 USB Dongle when a CC2510 remote unit send a bind request to it.
 * \li Have kiss-binding, e.g. will only bind to devices close to the CC2511 USB Dongle. No need for a button on the dongle.
 * \li Power saving on the remote devices is easily implemented.
 *
 * Only communication between one or multiple CC2510 remote device(s) and a CC2511 USB Dongle is supported.
 * Communication between CC2510 remote devices is not supported.
 *
 * The framework leave the CC2511 USB Dongle in RX all the time, only replying to messages from the other devices.
 * While the remote devices initiates all the communication. This makes it easy to save power on the remote unit. \n
 * This is done under the assumption that the dongle, which is connected to a PC has an "unlimited" power supply,
 * while the remote unit may be battery powered.
 *
 * The packet format is fixed, and the same for all packets. See figure below \image html Packet_format.gif
 * The different byte fields are defined in the \c RF_PACKET struct.
 *
 * The RF framework will require exclusive use of the following resources on the CC2510 / CC2511.
 * \li DMA channel 0.
 * \li Timer 2 and the Timer 2 interrupt.
 * \li Radio and the RF interrupt.
 * \li The CLKCON.TICKSPD must not be changed after initializing the RF modules.
 *
 * None of the interrupts in the RF framework are time critical, if they are delayed nothing will crash.
 * However if interrupts are delayed packets may be lost and have to be retransmitted, resulting in a lower throughput.
 *
 * The RF framework consists of two modules:
 * \li RF USB Dongle protocol for CC2511 (rfud), this module should be implemented on the CC2511 USB Dongle.
 * \li RF Remote Unit protocol for CC2510 (rfru), this module should be implemented on the CC2510 external device
 *
 * To use the framework:
 * \li On the CC2510 see \ref module_rfru "RF Remote Unit protocol for CC2510 (rfru)".
 * \li On the CC2511 USB Dongle see \ref module_rfud "RF USB Dongle protocol for CC2511 (rfud)".
 * @{
 * @}
 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -