Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of SX1272Lib by
Diff: sx1272/sx1272-hal.h
- Revision:
- 7:b988b60083a1
- Parent:
- 2:cd1093b6676f
--- a/sx1272/sx1272-hal.h Wed Feb 17 09:17:18 2016 +0000 +++ b/sx1272/sx1272-hal.h Mon Apr 24 09:26:08 2017 +0000 @@ -17,15 +17,16 @@ #include "sx1272.h" /*! - * \brief Radio hardware registers initialization definition + * @brief Radio hardware registers initialization definition * - * \remark Can be automatically generated by the SX1272 GUI (not yet implemented) + * @remark Can be automatically generated by the SX1272 GUI (not yet implemented) */ #define RADIO_INIT_REGISTERS_VALUE \ { \ { MODEM_FSK , REG_LNA , 0x23 },\ { MODEM_FSK , REG_RXCONFIG , 0x1E },\ { MODEM_FSK , REG_RSSICONFIG , 0xD2 },\ + { MODEM_FSK , REG_AFCFEI , 0x01 },\ { MODEM_FSK , REG_PREAMBLEDETECT , 0xAA },\ { MODEM_FSK , REG_OSC , 0x07 },\ { MODEM_FSK , REG_SYNCCONFIG , 0x12 },\ @@ -61,10 +62,10 @@ DigitalInOut AntSwitch; DigitalIn Fake; #endif - + private: static const RadioRegisters_t RadioRegsInit[]; - + public: SX1272MB2xAS( RadioEvents_t *events, PinName mosi, PinName miso, PinName sclk, PinName nss, PinName reset, @@ -76,17 +77,17 @@ #else PinName antSwitch ); #endif - + SX1272MB2xAS( RadioEvents_t *events ); - + virtual ~SX1272MB2xAS( ) { }; - - protected: + +protected: /*! * @brief Initializes the radio I/Os pins interface */ virtual void IoInit( void ); - + /*! * @brief Initializes the radio registers */ @@ -96,7 +97,7 @@ * @brief Initializes the radio SPI */ virtual void SpiInit( void ); - + /*! * @brief Initializes DIO IRQ handlers * @@ -112,6 +113,13 @@ virtual void IoDeInit( void ); /*! + * \brief Sets the radio output power. + * + * @param [IN] power Sets the RF output power + */ + virtual void SetRfTxPower( int8_t power ); + + /*! * @brief Gets the board PA selection configuration * * @param [IN] channel Channel frequency in Hz @@ -134,25 +142,25 @@ /*! * @brief De-initializes the RF Switch I/Os pins interface * - * \remark Needed to decrease the power consumption in MCU lowpower modes + * @remark Needed to decrease the power consumption in MCU lowpower modes */ virtual void AntSwDeInit( void ); /*! * @brief Controls the antena switch if necessary. * - * \remark see errata note + * @remark see errata note * - * @param [IN] rxTx [1: Tx, 0: Rx] + * @param [IN] opMode Current radio operating mode */ - virtual void SetAntSw( uint8_t rxTx ); - - public: + virtual void SetAntSw( uint8_t opMode ); + +public: /*! * @brief Detect the board connected by reading the value of the antenna switch pin */ - virtual uint8_t DetectBoardType( void ); - + virtual uint8_t DetectBoardType( void ); + /*! * @brief Checks if the given RF frequency is supported by the hardware * @@ -160,15 +168,15 @@ * @retval isSupported [true: supported, false: unsupported] */ virtual bool CheckRfFrequency( uint32_t frequency ); - - /*! + + /*! * @brief Writes the radio register at the specified address * * @param [IN]: addr Register address * @param [IN]: data New register value */ virtual void Write ( uint8_t addr, uint8_t data ) ; - + /*! * @brief Reads the radio register at the specified address * @@ -176,7 +184,7 @@ * @retval data Register value */ virtual uint8_t Read ( uint8_t addr ) ; - + /*! * @brief Writes multiple radio registers starting at address * @@ -185,7 +193,7 @@ * @param [IN] size Number of registers to be written */ virtual void Write( uint8_t addr, uint8_t *buffer, uint8_t size ) ; - + /*! * @brief Reads multiple radio registers starting at address * @@ -194,7 +202,7 @@ * @param [IN] size Number of registers to be read */ virtual void Read ( uint8_t addr, uint8_t *buffer, uint8_t size ) ; - + /*! * @brief Writes the buffer contents to the SX1272 FIFO * @@ -210,7 +218,7 @@ * @param [IN] size Number of bytes to be read from the FIFO */ virtual void ReadFifo( uint8_t *buffer, uint8_t size ) ; - + /*! * @brief Reset the SX1272 */