Arduino Radio Library
0.9
A set of Arduino libraries to control diverse FM radio receiver chips in Arduino projects.
|
Library to control the SI4703 radio chip. More...
#include <SI4703.h>
Public Member Functions | |
SI4703 () | |
bool | init () |
initialize library and the chip. More... | |
void | term () |
terminate all radio functions. More... | |
void | setVolume (uint8_t newVolume) |
Control the volume output of the radio chip in the range 0..15. More... | |
void | setMono (bool switchOn) |
Control the mono mode of the radio chip. More... | |
void | setMute (bool switchOn) |
Switch mute mode. More... | |
void | setSoftMute (bool switchOn) |
Switch soft mute mode. More... | |
void | setBand (RADIO_BAND newBand) |
Set the current band. More... | |
void | setFrequency (RADIO_FREQ newF) |
Change the frequency in the chip. More... | |
RADIO_FREQ | getFrequency (void) |
Retrieve the real frequency from the chip after automatic tuning. More... | |
void | seekUp (bool toNextSender=true) |
Start a seek upwards from the current frequency. More... | |
void | seekDown (bool toNextSender=true) |
Start a seek downwards from the current frequency. More... | |
void | checkRDS () |
Check if RDS Data is available and good. More... | |
virtual void | getRadioInfo (RADIO_INFO *info) |
Retrieve some information about the current radio function of the chip. More... | |
virtual void | getAudioInfo (AUDIO_INFO *info) |
Retrieve some information about the current audio function of the chip. More... | |
void | debugScan () |
void | debugStatus () |
Send the current values of all registers to the Serial port. More... | |
void | _readRegisters () |
void | _saveRegisters () |
virtual uint8_t | getVolume () |
Retrieve the current output volume in the range 0..15. More... | |
virtual bool | getMute () |
Retrieve the current mute mode setting. More... | |
virtual bool | getSoftMute () |
Retrieve the current soft mute mode setting. More... | |
virtual void | setBassBoost (bool switchOn) |
Control the bass boost mode of the radio chip. More... | |
virtual bool | getBassBoost () |
Retrieve the current bass boost mode setting. More... | |
virtual RADIO_FREQ | getMinFrequency () |
Get the minimum frequency of the current selected band. More... | |
virtual RADIO_FREQ | getMaxFrequency () |
Get the maximum frequency of the current selected band. More... | |
virtual RADIO_FREQ | getFrequencyStep () |
Get resolution of the current selected band. More... | |
virtual RADIO_BAND | getBand () |
Retrieve the current band setting. More... | |
virtual void | setBandFrequency (RADIO_BAND newBand, RADIO_FREQ newFreq) |
Set Band and Frequency in one call. More... | |
virtual bool | getMono () |
Retrieve the current mono mode setting. More... | |
virtual void | clearRDS () |
Clear RDS data in the attached RDS Receiver by sending 0,0,0,0. More... | |
virtual void | attachReceiveRDS (receiveRDSFunction newFunction) |
Register a RDS processor function. More... | |
virtual void | formatFrequency (char *s, uint8_t length) |
Format the current frequency for display and printing. More... | |
virtual void | debugEnable (bool enable=true) |
Enable sending debug information to the Serial port. More... | |
virtual void | debugRadioInfo () |
Print out all radio information. More... | |
virtual void | debugAudioInfo () |
Print out all audio information. More... | |
Public Attributes | |
const uint8_t | MAXVOLUME = 15 |
max volume level for radio implementations. More... | |
Protected Member Functions | |
void | _printHex4 (uint16_t val) |
Prints a register as 4 character hexadecimal code with leading zeros. More... | |
Protected Attributes | |
bool | _debugEnabled |
Set by debugEnable() and controls debugging functionality. More... | |
uint8_t | _volume |
Last set volume level. More... | |
bool | _bassBoost |
Last set bass Boost effect. More... | |
bool | _mono |
Last set mono effect. More... | |
bool | _mute |
Last set mute effect. More... | |
bool | _softMute |
Last set softMute effect. More... | |
RADIO_BAND | _band |
Last set band. More... | |
RADIO_FREQ | _freq |
Last set frequency. More... | |
RADIO_FREQ | _freqLow |
Lowest frequency of the current selected band. More... | |
RADIO_FREQ | _freqHigh |
Highest frequency of the current selected band. More... | |
RADIO_FREQ | _freqSteps |
Resulution of the tuner. More... | |
receiveRDSFunction | _sendRDS |
Registered RDS Function that is called on new available data. More... | |
Private Member Functions | |
void | _write16 (uint16_t val) |
uint16_t | _read16 (void) |
void | _seek (bool seekUp=true) |
Seeks out the next available station. More... | |
void | _waitEnd () |
wait until the current seek and tune operation is over. More... | |
Private Attributes | |
uint16_t | registers [16] |
Library to control the SI4703 radio chip.
SI4703::SI4703 | ( | ) |
|
protectedinherited |
Prints a register as 4 character hexadecimal code with leading zeros.
|
private |
void SI4703::_readRegisters | ( | ) |
void SI4703::_saveRegisters | ( | ) |
|
private |
Seeks out the next available station.
|
private |
wait until the current seek and tune operation is over.
|
private |
|
virtualinherited |
Register a RDS processor function.
|
virtual |
Check if RDS Data is available and good.
In the general radio implementation there is no chip for RDS. This function needs to be implemented for radio chips with RDS receiving functionality.
Reimplemented from RADIO.
|
virtualinherited |
Clear RDS data in the attached RDS Receiver by sending 0,0,0,0.
Send a 0.0.0.0 to the RDS receiver if there is any attached. This is to point out that there is a new situation and all existing data should be invalid from now on.
|
virtualinherited |
Print out all audio information.
|
virtualinherited |
Enable sending debug information to the Serial port.
|
virtualinherited |
Print out all radio information.
void SI4703::debugScan | ( | ) |
|
virtual |
Send the current values of all registers to the Serial port.
Reimplemented from RADIO.
|
virtualinherited |
Format the current frequency for display and printing.
|
virtual |
Retrieve some information about the current audio function of the chip.
Return current audio settings.
Reimplemented from RADIO.
|
virtualinherited |
Retrieve the current band setting.
|
virtualinherited |
Retrieve the current bass boost mode setting.
Retrieve the current bass boost mode setting. The base implementation returns only the value in the internal variable.
|
virtual |
Retrieve the real frequency from the chip after automatic tuning.
Reimplemented from RADIO.
|
virtualinherited |
Get resolution of the current selected band.
|
virtualinherited |
Get the maximum frequency of the current selected band.
|
virtualinherited |
Get the minimum frequency of the current selected band.
|
virtualinherited |
Retrieve the current mono mode setting.
The base implementation returns only the value in the internal variable.
|
virtualinherited |
Retrieve the current mute mode setting.
The base implementation returns only the value in the internal variable.
|
virtual |
Retrieve some information about the current radio function of the chip.
Retrieve all the information related to the current radio receiving situation.
Reimplemented from RADIO.
|
virtualinherited |
Retrieve the current soft mute mode setting.
The base implementation returns only the value in the internal variable.
|
virtualinherited |
Retrieve the current output volume in the range 0..15.
|
virtual |
|
virtual |
Start a seek downwards from the current frequency.
Reimplemented from RADIO.
|
virtual |
Start a seek upwards from the current frequency.
Reimplemented from RADIO.
|
virtual |
|
virtualinherited |
Set Band and Frequency in one call.
|
virtualinherited |
Control the bass boost mode of the radio chip.
Control the bass boost mode of the radio chip. The base implementation ony stores the value to the internal variable.
switchOn | true to switch bassBoost mode on, false to switch bassBoost mode off. |
|
virtual |
|
virtual |
Control the mono mode of the radio chip.
The base implementation ony stores the value to the internal variable.
Reimplemented from RADIO.
|
virtual |
Switch mute mode.
Reimplemented from RADIO.
|
virtual |
Switch soft mute mode.
Reimplemented from RADIO.
|
virtual |
Control the volume output of the radio chip in the range 0..15.
Reimplemented from RADIO.
|
virtual |
|
protectedinherited |
Last set band.
|
protectedinherited |
Last set bass Boost effect.
|
protectedinherited |
Set by debugEnable() and controls debugging functionality.
|
protectedinherited |
Last set frequency.
|
protectedinherited |
Highest frequency of the current selected band.
|
protectedinherited |
Lowest frequency of the current selected band.
|
protectedinherited |
Resulution of the tuner.
|
protectedinherited |
Last set mono effect.
|
protectedinherited |
Last set mute effect.
|
protectedinherited |
Registered RDS Function that is called on new available data.
|
protectedinherited |
Last set softMute effect.
|
protectedinherited |
Last set volume level.
const uint8_t SI4703::MAXVOLUME = 15 |
max volume level for radio implementations.
|
private |