PU2CLR RDA5807 Arduino Library  1.0.1
Arduino Library for RDA5807 Devices - By Ricardo Lima Caratti
Union, Structure and Defined Data Types

rda Defined Data Types More...

Data Structures

union  rda_reg00
 Register 0x00. More...
 
struct  rda_reg00.refined
 
union  rda_reg01
 Register 0x01 - Dummy. More...
 
struct  rda_reg01.refined
 
union  rda_reg02
 Register 0x02 - Basic setup: RESET configuration;. More...
 
struct  rda_reg02.refined
 
union  rda_reg03
 Register 0x03. More...
 
struct  rda_reg03.refined
 
union  rda_reg04
 Register 0x04. More...
 
struct  rda_reg04.refined
 
union  rda_reg05
 Register 0x05. More...
 
struct  rda_reg05.refined
 
union  rda_reg06
 Register 0x06. More...
 
struct  rda_reg06.refined
 
union  rda_reg07
 Register 0x07. More...
 
struct  rda_reg07.refined
 
union  rda_reg08
 Register 0x08 - Direct Frequency. More...
 
struct  rda_reg08.refined
 
union  rda_reg0a
 Register 0x0A - Device current status. More...
 
struct  rda_reg0a.refined
 
union  rda_reg0b
 Register 0x0B. More...
 
struct  rda_reg0b.refined
 
union  rda_reg0c
 Register 0x0C. More...
 
struct  rda_reg0c.refined
 
union  rda_reg0d
 Register 0x0D. More...
 
struct  rda_reg0d.refined
 
union  rda_reg0e
 Register 0x0E. More...
 
struct  rda_reg0e.refined
 
union  rda_reg0f
 Register 0x0F. More...
 
struct  rda_reg0f.refined
 
union  rds_blockb
 RDS Block B data type. More...
 
struct  rds_blockb.group0
 
struct  rds_blockb.group2
 
struct  rds_blockb.refined
 
union  rds_date_time
 
struct  rds_date_time.refined
 
union  word16_to_bytes
 Converts 16 bits word to two bytes. More...
 
struct  word16_to_bytes.refined
 
class  RDA5807
 KT0915 Class. More...
 

Detailed Description

rda Defined Data Types

Defined Data Types is a way to represent the rda registers information

The information shown here was extracted from Datasheet:

rda stereo FM digital tuning radio documentation.


Data Structure Documentation

◆ rda_reg00

union rda_reg00

Register 0x00.

Data Fields
struct rda_reg00 refined
uint16_t raw

◆ rda_reg00.refined

struct rda_reg00.refined
Data Fields
uint8_t CHIPID: 8 Chip ifdef.
uint8_t DUMMY: 8

◆ rda_reg01

union rda_reg01

Register 0x01 - Dummy.

It is not documented by the RDA.

Data Fields
struct rda_reg01 refined
uint16_t raw

◆ rda_reg01.refined

struct rda_reg01.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rda_reg02

union rda_reg02

Register 0x02 - Basic setup: RESET configuration;.

Clock type configuration; seek operation; Sterio/Mono; Bass; and Audio configuration

The RDA5807M is RESET itself when power up. You also can use soft reset by triggering SOFT_RESET bit to 1.

Seek begins in the direction specified by SEEKUP and ends when a channel is found, or the entire band has been searched.

The SEEK bit is set low and the STC bit is set high when the seek operation completes.

RCLK NON-CALIBRATE MODE. if 0=RCLK clock is always supply; if 1=RCLK clock is not always supply when FM work ( when 1, RDA5807M can’t directly support -20 °C ~70 °C temperature.

Only suppory ±20°C temperature swing from tune point).

Clock CLK_MODE table

Value Clock
000 32.768kHz
001 12Mhz
101 24Mhz
010 13Mhz
110 26Mhz
011 19.2Mhz
111 38.4Mhz
Data Fields
struct rda_reg02 refined
uint16_t raw

◆ rda_reg02.refined

struct rda_reg02.refined
Data Fields
uint8_t ENABLE: 1 Power Up Enable; 0 = Disabled; 1 = Enabled.
uint8_t SOFT_RESET: 1 Soft reset; If 0, not reset; If 1, reset.
uint8_t NEW_METHOD: 1 New Demodulate Method Enable, can improve 0 the receive sensitivity about 1dB.
uint8_t RDS_EN: 1 RDS/RBDS enable; If 1, rds/rbds enable.
uint8_t CLK_MODE: 3 See table above.
uint8_t SKMODE: 1 Seek Mode; 0 = wrap at the upper or lower band limit and continue seeking; 1 = stop seeking at the upper or lower band limit.
uint8_t SEEK: 1 Seek; 0 = Disable stop seek; 1 = Enable;.
uint8_t SEEKUP: 1 Seek Up; 0 = Seek down; 1 = Seek up.
uint8_t RCLK_DIRECT_IN: 1 RCLK clock use the directly input mode. 1 = enable.
uint8_t NON_CALIBRATE: 1 0=RCLK clock is always supply; 1=RCLK clock is not always supply when FM work
uint8_t BASS: 1 Bass Boost; 0 = Disabled; 1 = Bass boost enabled.
uint8_t MONO: 1 Mono Select; 0 = Stereo; 1 = Force mono.
uint8_t DMUTE: 1 Mute Disable; 0 = Mute; 1 = Normal operation.
uint8_t DHIZ: 1 Audio Output High-Z Disable; 0 = High impedance; 1 = Normal operation.

◆ rda_reg03

union rda_reg03

Register 0x03.

Receiver configuratio

The tune operation begins when the TUNE bit is set high. The STC bit is set high when the tune operation completes.

The tune bit is reset to low automatically when the tune operation completes

Channel space table

Value Description
00 100KHz
01 200KHz
10 50KHz
11 25KHz

FM band table

Value Description
00 87–108 MHz (US/Europe)
01 76–91 MHz (Japan)
10 76–108 MHz (world wide)
11 65 –76 MHz (East Europe) or 50-65MHz (see bit 9 of gegister 0x06)

Channel select table

BAND Description
0 Frequency = Channel Spacing (kHz) x CHAN+ 87.0 MHz
1 or 2 Frequency = Channel Spacing (kHz) x CHAN + 76.0 MHz
3 Frequency = Channel Spacing (kHz) x CHAN + 65.0 MHz

IMPORTANT: CHAN is updated after a seek operation.

Data Fields
struct rda_reg03 refined
uint16_t raw

◆ rda_reg03.refined

struct rda_reg03.refined
Data Fields
uint16_t SPACE: 2 See Channel space table above.
uint16_t BAND: 2 Seet band table above.
uint16_t TUNE: 1 Tune; 0 = Disable; 1 = Enable.
uint16_t DIRECT_MODE: 1 Directly Control Mode, Only used when test.
uint16_t CHAN: 10 Channel Select.

◆ rda_reg04

union rda_reg04

Register 0x04.

Receiver properties

Volume scale is logarithmic When 0000, output mute and output impedance is very large

Setting STCIEN = 1 will generate a low pulse on GPIO2 when the interrupt occurs.

Data Fields
struct rda_reg04 refined
uint16_t raw

◆ rda_reg04.refined

struct rda_reg04.refined
Data Fields
uint8_t GPIO1: 2 General Purpose I/O 1. when gpio_sel=01; 00 = High impedance; 01 = Reserved; 10 = Low; 11 = High.
uint8_t GPIO2: 2 General Purpose I/O 2. when gpio_sel=01; 00 = High impedance; 01 = Reserved; 10 = Low; 11 = High.
uint8_t GPIO3: 2 General Purpose I/O 1. when gpio_sel=01; 00 = High impedance; 01 = Mono/Stereo indicator (ST); 10 = Low; 11 = High.
uint8_t I2S_ENABLE: 1 I2S enable; 0 = disabled; 1 = enabled.
uint8_t RSVD1: 1
uint8_t AFCD: 1 AFC disable; If 0, afc work; If 1, afc disabled.
uint8_t SOFTMUTE_EN: 1 If 1, softmute enable.
uint8_t RDS_FIFO_CLR: 1 1 = clear RDS fifo
uint8_t DE: 1 De-emphasis; 0 = 75 μs; 1 = 50 μs.
uint8_t RDS_FIFO_EN: 1 1 = RDS fifo mode enable.
uint8_t RBDS: 1 1 = RBDS mode enable; 0 = RDS mode only
uint8_t STCIEN: 1 Seek/Tune Complete Interrupt Enable; 0 = Disable Interrupt; 1 = Enable Interrupt;.
uint8_t RSVD2: 1

◆ rda_reg05

union rda_reg05

Register 0x05.

Data Fields
struct rda_reg05 refined
uint16_t raw

◆ rda_reg05.refined

struct rda_reg05.refined
Data Fields
uint8_t VOLUME: 4 DAC Gain Control Bits (Volume); 0000 = min volume; 1111 = max volume.
uint8_t LNA_ICSEL_BIT: 2 Lna working current bit: 00=1.8mA; 01=2.1mA; 10=2.5mA; 11=3.0mA.
uint8_t LNA_PORT_SEL: 2 LNA input port selection bit: 00: no input; 01: LNAN; 10: LNAP; 11: dual port input.
uint8_t SEEKTH: 4 Seek SNR Threshold value.
uint8_t RSVD2: 1
uint8_t SEEK_MODE: 2 Default value is 00; When = 10, will add the RSSI seek mode.
uint8_t INT_MODE: 1 If 0, generate 5ms interrupt; If 1, interrupt last until read reg0CH action occurs.

◆ rda_reg06

union rda_reg06

Register 0x06.

I2S_SW_CNT values table

Value Description
0b1000 WS_STEP_48
0b0111 WS_STEP=44.1kbps
0b0110 WS_STEP=32kbps
0b0101 WS_STEP=24kbps
0b0100 WS_STEP=22.05kbps
0b0011 WS_STEP=16kbps
0b0010 WS_STEP=12kbps
0b0001 WS_STEP=11.025kbps
0b0000 WS_STEP=8kbps
Data Fields
struct rda_reg06 refined
uint16_t raw

◆ rda_reg06.refined

struct rda_reg06.refined
Data Fields
uint8_t R_DELY: 1 If 1, R channel data delay 1T.
uint8_t L_DELY: 1 If 1, L channel data delay 1T.
uint8_t SCLK_O_EDGE: 1 If 1, invert sclk output when as master.
uint8_t SW_O_EDGE: 1 If 1, invert ws output when as master.
uint8_t I2S_SW_CNT: 4 Only valid in master mode. See table above.
uint8_t WS_I_EDGE: 1 If 0, use normal ws internally; If 1, inverte ws internally.
uint8_t DATA_SIGNED: 1 If 0, I2S output unsigned 16-bit audio data. If 1, I2S output signed 16-bit audio data.
uint8_t SCLK_I_EDGE: 1 If 0, use normal sclk internally;If 1, inverte sclk internally.
uint8_t WS_LR: 1 Ws relation to l/r channel; If 0, ws=0 ->r, ws=1 ->l; If 1, ws=0 ->l, ws=1 ->r.
uint8_t SLAVE_MASTER: 1 I2S slave or master; 1 = slave; 0 = master.
uint8_t OPEN_MODE: 2 Open reserved register mode; 11=open behind registers writing function others: only open behind registers reading function.
uint8_t RSVD: 1

◆ rda_reg07

union rda_reg07

Register 0x07.

Data Fields
struct rda_reg07 refined
uint16_t raw

◆ rda_reg07.refined

struct rda_reg07.refined
Data Fields
uint8_t FREQ_MODE: 1 If 1, then freq setting changed. Freq = 76000(or 87000) kHz + freq_direct (08H) kHz.
uint8_t SOFTBLEND_EN: 1 If 1, Softblend enable.
uint8_t SEEK_TH_OLD: 6 Seek threshold for old seek mode, Valid when Seek_Mode=001.
uint8_t RSVD1: 1
uint8_t MODE_50_60: 1 1 = 65~76 MHz; 0 = 50~76MHz
uint8_t TH_SOFRBLEND: 5 Threshold for noise soft blend setting, unit 2dB (default 0b10000).
uint8_t RSVD2: 1

◆ rda_reg08

union rda_reg08

Register 0x08 - Direct Frequency.

Valid when freq_mode = 1

Freq = 7600(or 8700) kHz + freq_direct (08H) kHz.

Value to be stores is frequency - 7600 or 8700

Data Fields
struct rda_reg08 refined
uint16_t raw

◆ rda_reg08.refined

struct rda_reg08.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rda_reg0a

union rda_reg0a

Register 0x0A - Device current status.

The seek fail flag (SF) is set when the seek operation fails to find a channel with an RSSI level greater than SEEKTH[5:0].

The seek/tune complete (STC) flag is set when the seek or tune operation completes.

Channel table

BAND Description
0 Frequency = Channel Spacing (kHz) x CHAN+ 87.0 MHz
1 or 2 Frequency = Channel Spacing (kHz) x CHAN + 76.0 MHz
3 Frequency = Channel Spacing (kHz) x CHAN + 65.0 MHz
Data Fields
struct rda_reg0a refined
uint16_t raw

◆ rda_reg0a.refined

struct rda_reg0a.refined
Data Fields
uint16_t READCHAN: 10 See Channel table . See table above.
uint16_t ST: 1 Stereo Indicator; 0 = Mono; 1 = Stereo.
uint16_t BLK_E: 1 When RDS enable: 1 = Block E has been found; 0 = no Block E has been found.
uint16_t RDSS: 1 RDS Synchronization; 0 = RDS decoder not synchronized(default); 1 = RDS decoder synchronized; Available only in RDS Verbose mode.
uint16_t SF: 1 Seek Fail. 0 = Seek successful; 1 = Seek failure;.
uint16_t STC: 1 Seek/Tune Complete. 0 = Not complete; 1 = Complete;.
uint16_t RDSR: 1 RDS ready; 0 = No RDS/RBDS group ready(default); 1 = New RDS/RBDS group ready.

◆ rda_reg0b

union rda_reg0b

Register 0x0B.

Current RDS and device status

Errors Level table (Block Errors Level of RDS_DATA_0 and RDS_DATA_1. Always read as Errors Level of RDS BLOCKs A and B (in RDS mode ) or E (in RBDS mode when ABCD_E flag is 1).

Value Description
00 0 errors requiring correction
01 1~2 errors requiring correction
10 3~5 errors requiring correction
10 6+ errors or error in checkword, correction not possible
Data Fields
struct rda_reg0b refined
uint16_t raw

◆ rda_reg0b.refined

struct rda_reg0b.refined
Data Fields
uint8_t BLERB: 2 Block Errors Level of RDS_DATA_1.
uint8_t BLERA: 2 Block Errors Level of RDS_DATA_0.
uint8_t ABCD_E: 1 1 = the block id of register 0cH,0dH,0eH,0fH is E; 0 = the block id of register 0cH, 0dH, 0eH,0fH is A, B, C, D
uint8_t RSVD1: 2
uint8_t FM_READY: 1 1=ready; 0=not ready.
uint8_t FM_TRUE: 1 1 = the current channel is a station; 0 = the current channel is not a station.
uint8_t RSSI: 7 RSSI; 000000 = min; 111111 = max; RSSI scale is logarithmic.

◆ rda_reg0c

union rda_reg0c

Register 0x0C.

BLOCK A ( in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)

Data Fields
struct rda_reg0c refined
uint16_t RDSA BLOCK A ( in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)

◆ rda_reg0c.refined

struct rda_reg0c.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rda_reg0d

union rda_reg0d

Register 0x0D.

BLOCK B ( in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)

Data Fields
struct rda_reg0d refined
uint16_t RDSB

◆ rda_reg0d.refined

struct rda_reg0d.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rda_reg0e

union rda_reg0e

Register 0x0E.

BLOCK C ( in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)

Data Fields
struct rda_reg0e refined
uint16_t RDSC

◆ rda_reg0e.refined

struct rda_reg0e.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rda_reg0f

union rda_reg0f

Register 0x0F.

BLOCK D ( in RDS mode) or BLOCK E (in RBDS mode when ABCD_E flag is 1)

Data Fields
struct rda_reg0f refined
uint16_t RDSD

◆ rda_reg0f.refined

struct rda_reg0f.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ rds_blockb

union rds_blockb

RDS Block B data type.

For GCC on System-V ABI on 386-compatible (32-bit processors), the following stands:

1) Bit-fields are allocated from right to left (least to most significant). 2) A bit-field must entirely reside in a storage unit appropriate for its declared type. Thus a bit-field never crosses its unit boundary. 3) Bit-fields may share a storage unit with other struct/union members, including members that are not bit-fields. Of course, struct members occupy different parts of the storage unit. 4) Unnamed bit-fields' types do not affect the alignment of a structure or union, although individual bit-fields' member offsets obey the alignment constraints.

See also
also https://en.wikipedia.org/wiki/Radio_Data_System
Data Fields
struct rds_blockb group0
struct rds_blockb group2
struct rds_blockb refined
uint16_t blockB

◆ rds_blockb.group0

struct rds_blockb.group0
Data Fields
uint8_t address: 2
uint8_t DI: 1
uint8_t MS: 1
uint8_t TA: 1
uint8_t programType: 5
uint8_t trafficProgramCode: 1
uint8_t versionCode: 1
uint8_t groupType: 4

◆ rds_blockb.group2

struct rds_blockb.group2
Data Fields
uint8_t address: 4
uint8_t textABFlag: 1
uint8_t programType: 5
uint8_t trafficProgramCode: 1
uint8_t versionCode: 1
uint8_t groupType: 4

◆ rds_blockb.refined

struct rds_blockb.refined
Data Fields
uint8_t content: 4
uint8_t textABFlag: 1
uint8_t programType: 5
uint8_t trafficProgramCode: 1
uint8_t versionCode: 1
uint8_t groupType: 4

◆ rds_date_time

union rds_date_time

Group RDS type 4A ( RDS Date and Time) When group type 4A is used by the station, it shall be transmitted every minute according to EN 50067. This Structure uses blocks 2,3 and 5 (B,C,D)

ATTENTION: To make it compatible with 8, 16 and 32 bits platforms and avoid Crosses boundary, it was necessary to split minute and hour representation.

Data Fields
struct rds_date_time refined
uint8_t raw[6]

◆ rds_date_time.refined

struct rds_date_time.refined
Data Fields
uint8_t offset: 5
uint8_t offset_sense: 1
uint8_t minute1: 2
uint8_t minute2: 4
uint8_t hour1: 4
uint8_t hour2: 1
uint32_t mjd: 17

◆ word16_to_bytes

union word16_to_bytes

Converts 16 bits word to two bytes.

Data Fields
struct word16_to_bytes refined
uint16_t raw

◆ word16_to_bytes.refined

struct word16_to_bytes.refined
Data Fields
uint8_t lowByte
uint8_t highByte

◆ RDA5807

class RDA5807

KT0915 Class.

This class implements all functions that will help you to control the KT0915 devices.

Author
PU2CLR - Ricardo Lima Caratti

Public Member Functions

void setDelayAfterCrystalOn (uint8_t ms_value)
 Set the Delay After Crystal On (default 500ms) More...
 
void setI2CBusAddrs (int directAccess, int fullAccess)
 Sets alternatives I2C bus address. More...
 
void getStatusRegisters ()
 Gets all current device status and RDS information registers (From 0x0A to 0x0F) More...
 
void * getStatus (uint8_t reg)
 Gets the register content of a given status register (from 0x0A to 0x0F) More...
 
void setAllRegisters ()
 Sets values to the device registers from 0x02 to 0x07. More...
 
void setRegister (uint8_t reg, uint16_t value)
 Sets a given value to a specific device register. More...
 
void setGpio (uint8_t gpioPin, uint8_t gpioSetup=0, int mcuPin=-1)
 Set the Device GPIO pins. More...
 
void waitAndFinishTune ()
 Waits for Seek or Tune finish. More...
 
void softReset ()
 Resets the device. More...
 
void powerUp ()
 Powers the receiver on. More...
 
void powerDown ()
 Power the receiver off. More...
 
void setup (uint8_t clock_type=CLOCK_32K, uint8_t oscillator_type=OSCILLATOR_TYPE_CRYSTAL)
 Starts the device. More...
 
void setFrequency (uint16_t frequency)
 Sets the frequency. More...
 
uint16_t getFrequency ()
 Gets the current frequency. More...
 
void setFrequencyUp ()
 Increments the current frequency. More...
 
void setFrequencyDown ()
 Decrements the current frequency. More...
 
uint16_t getRealFrequency ()
 Gets the current frequency bases on the current channel. More...
 
uint16_t getRealChannel ()
 Gets the current channel stored in 0x0A status register. More...
 
void setChannel (uint16_t channel)
 Sets the channel. More...
 
void seek (uint8_t seek_mode, uint8_t direction)
 Seek function. More...
 
void setSeekThreshold (uint8_t value)
 Sets RSSI Seek Threshold. More...
 
void setBand (uint8_t band=1)
 Sets the FM band. See table below. More...
 
void setSpace (uint8_t space=0)
 Sets the FM channel space. More...
 
int getRssi ()
 Gets the current Rssi. More...
 
void setSoftmute (bool value)
 Sets Soft Mute Enable or disable. More...
 
void setMono (bool value)
 Sets audio Mono or stereo. More...
 
bool isStereo ()
 Gets the current Stereo status. More...
 
uint8_t getDeviceId ()
 Gets the Device identification. More...
 
void setMute (bool value)
 Sets Audio mute or unmute. More...
 
void setVolume (uint8_t value)
 Sets the audio volume level. More...
 
uint8_t getVolume ()
 Gets the current audio volume level. More...
 
void setVolumeUp ()
 Increments the audio volume. More...
 
void setVolumeDown ()
 Decrements the audio volume. More...
 
void setFmDeemphasis (uint8_t de)
 Sets De-emphasis. More...
 
void setRDS (bool value)
 Sets the RDS operation. More...
 
void setRBDS (bool value)
 Sets the RBDS operation. More...
 
void clearRdsFifo ()
 Clears RDS/RBDS FIFO. More...
 
bool getRdsReady ()
 Returns true if RDS Ready. More...
 
uint8_t getRdsFlagAB (void)
 Returns the current Text Flag A/B
More...
 
uint8_t getRdsVersionCode (void)
 Gets the version code (extracted from the Block B) More...
 
uint16_t getRdsGroupType ()
 Return the group type. More...
 
uint8_t getRdsProgramType (void)
 Returns the Program Type (extracted from the Block B) More...
 
void getNext2Block (char *c)
 Process data received from group 2B. More...
 
void getNext4Block (char *c)
 Process data received from group 2A. More...
 
char * getRdsText (void)
 Gets the RDS Text when the message is of the Group Type 2 version A. More...
 
char * getRdsText0A (void)
 Gets the station name and other messages. More...
 
char * getRdsText2A (void)
 Gets the Text processed for the 2A group. More...
 
char * getRdsText2B (void)
 Gets the Text processed for the 2B group. More...
 
char * getRdsTime ()
 Gets the RDS time and date when the Group type is 4. More...
 
bool getRdsSync ()
 Get the Rds Sync. More...
 

Protected Attributes

int deviceAddressDirectAccess = I2C_ADDR_DIRECT_ACCESS
 
int deviceAddressFullAccess = I2C_ADDR_FULL_ACCESS
 
int resetPin
 
uint16_t currentFrequency
 
uint8_t currentFMBand = 0
 
uint8_t currentFMSpace = 0
 
uint8_t currentVolume = 0
 
int gpio1Control = -1
 Can be used to add control to the system via GPIO1 pin. More...
 
int gpio2Control = -1
 Can be used to add control to the system via GPIO2 pin. More...
 
int gpio3Control = -1
 Can be used to add control to the system via GPIO3 pin. More...
 
uint8_t clockType = CLOCK_32K
 
uint8_t oscillatorType = OSCILLATOR_TYPE_CRYSTAL
 
uint16_t maxDelayAftarCrystalOn = MAX_DELAY_AFTER_OSCILLATOR
 

Member Function Documentation

◆ setDelayAfterCrystalOn()

void RDA5807::setDelayAfterCrystalOn ( uint8_t  ms_value)
inline

Set the Delay After Crystal On (default 500ms)

Parameters
ms_valueValue in milliseconds

Field Documentation

◆ deviceAddressDirectAccess

int RDA5807::deviceAddressDirectAccess = I2C_ADDR_DIRECT_ACCESS
protected

Referenced by setI2CBusAddrs().

◆ deviceAddressFullAccess

int RDA5807::deviceAddressFullAccess = I2C_ADDR_FULL_ACCESS
protected

Referenced by setI2CBusAddrs().

◆ resetPin

int RDA5807::resetPin
protected

◆ currentFrequency

uint16_t RDA5807::currentFrequency
protected

◆ currentFMBand

uint8_t RDA5807::currentFMBand = 0
protected

◆ currentFMSpace

uint8_t RDA5807::currentFMSpace = 0
protected

◆ currentVolume

uint8_t RDA5807::currentVolume = 0
protected

◆ gpio1Control

int RDA5807::gpio1Control = -1
protected

Can be used to add control to the system via GPIO1 pin.

◆ gpio2Control

int RDA5807::gpio2Control = -1
protected

Can be used to add control to the system via GPIO2 pin.

◆ gpio3Control

int RDA5807::gpio3Control = -1
protected

Can be used to add control to the system via GPIO3 pin.

◆ clockType

uint8_t RDA5807::clockType = CLOCK_32K
protected

◆ oscillatorType

uint8_t RDA5807::oscillatorType = OSCILLATOR_TYPE_CRYSTAL
protected

◆ maxDelayAftarCrystalOn

uint16_t RDA5807::maxDelayAftarCrystalOn = MAX_DELAY_AFTER_OSCILLATOR
protected