PU2CLR SI4844 Arduino Library 1.1.8
Arduino Library for Si4844 Devices - By Ricardo Lima Caratti
Loading...
Searching...
No Matches
SI4844 Class Reference

SI4844 Class. More...

#include <SI4844.h>

Public Member Functions

void audioMute (uint8_t value)
 Mutes the audio output.
 
void bassTrebleDown ()
 Less treble, more bass.
 
void bassTrebleUp ()
 More treble, less bass.
 
void changeVolume (char)
 Up or down the sound volume level.
 
void convertToChar (uint32_t value, char *strValue, uint8_t len, uint8_t dot, uint8_t separator, bool remove_leading_zeros=true)
 Converts a number to a char array.
 
void debugDevice (uint16_t resetPin, uint16_t interruptPin, uint8_t defaultBand, void(*showFunc)(char *msg))
 Used to debug

 
bool detectDevice ()
 Checks communication with SI4844 via I2C.
 
char * getBandMode ()
 Get the Band Mode.
 
void getCommandResponse (int response_size, uint8_t *response)
 Returns with the command response.

 
bool getDataStatusInterruptFromDevice ()
 Get the Data Status From Device.
 
si4844_firmware_responsegetFirmware (void)
 Get part number, chip revision, firmware, patch, and component revision numbers.
 
uint16_t getFirmwareChipRevision ()
 
uint16_t getFirmwareComponentMajorRevision ()
 
uint16_t getFirmwareComponentMinorRevision ()
 
uint16_t getFirmwareCTS ()
 
uint16_t getFirmwareErr ()
 
uint16_t getFirmwareMajorRevision ()
 
uint16_t getFirmwareMinorRevision ()
 
uint16_t getFirmwarePartNumber ()
 
uint16_t getFirmwareReserved ()
 
char * getFormattedFrequency (uint8_t removeRightDigit=0, uint8_t thousandsSeparator=',')
 Gets Formatted Frequency.
 
float getFrequency (void)
 Get the current frequency of the radio in KHz.
 
uint32_t getFrequencyInteger (void)
 Get the current frequency of the radio in KHz in uint32_t (long integer) .
 
uint16_t getProperty (uint16_t propertyNumber)
 Gets a given property from the SI4844.
 
uint16_t getRawChannelFrequency ()
 Gets the Channel Frequency.
 
si4844_status_responsegetStatus (void)
 Get tune freq, band, and others information, status of the device.
 
uint16_t getStatusBandIndex ()
 Gets the current Band Index Detected.
 
uint16_t getStatusBandMode ()
 Gets the current Band Mode.
 
uint16_t getStatusBCFG0 ()
 Gets Band CFG0 (Band Detection Configuration).
 
uint16_t getStatusBCFG1 ()
 Gets Band CFG1 (Band Properties Priority)
 
uint16_t getStatusCTS ()
 
uint16_t getStatusHostPowerUp ()
 
uint16_t getStatusHostReset ()
 
uint16_t getStatusInformationReady ()
 Gets Information Ready.
 
uint16_t getStatusStationIndicator ()
 Gets Station Indicator.
 
uint16_t getStatusStereo ()
 Gets Stereo indicator.
 
char * getStereoIndicator ()
 Get the Stereo Indicator.
 
uint8_t getVolume ()
 Gets the current audio volume level.
 
uint8_t getVolumeProperty ()
 Gets the current volume value stored in SI4844 device.
 
bool hasStatusChanged (void)
 Checks whether the SI4844 has its status changed.
 
void powerDown (void)
 Power the device down.
 
void powerUp (void)
 Power the device up.
 
void reset (void)
 Resets the SI4844 device.
 
void resetStatus (void)
 set the interrupr status to false. It will turn true after next interrupr

 
uint8_t scanI2CBus (uint8_t *device, uint8_t limit)
 Scans the I2C bus and returns the addresses of the devices found.
 
void sendCommand (uint8_t cmd, int parameter_size, const uint8_t *parameter)
 Sends a given command to the SI4844 device.
 
void setAmSoftMuteMaxAttenuation (uint8_t value)
 Sets AM Soft Mute Max Attenuation..

 
void setAmSoftMuteRate (uint8_t value)
 Sets the attack and decay rates when entering or leaving soft mute.
 
void setAmSoftMuteSlope (uint8_t value)
 Configures attenuation slope during soft mute in dB attenuation per dB SNR below the soft mute SNR threshold.
 
void setAmSoftMuteSnrThreshold (uint8_t value)
 Sets the SNR threshold to engage soft mute.
 
si4844_audiomode_status_response setAudioMode (uint8_t audiomode, uint8_t fm_mono, uint8_t adjpt_attn, uint8_t adjpt_steo, uint8_t opcode)
 Set audio mode.
 
void setAudioMute (bool on)
 Mutes the audio output.
 
void setBand (byte)
 Sets a new band to the device.
 
void setBassTreble (uint8_t bass_treble)
 Set the sound volume level, bass and treble.
 
void setBlendThresholdStereoIndicator (uint16_t value)
 Sets the blend threshold for stereo indicator.
 
void setCrystalOscillatorEnable (uint8_t XOSCEN)
 Sets Crystal Oscillator Enable.
 
void setCrystalOscillatorStabilizationWaitTime (uint8_t XOWAIT)
 Sets Crystal Oscillator Stabilization Wait Time After Reset.
 
void setCustomBand (uint8_t bandIndex, uint16_t botton, uint16_t top, uint8_t bandSpace, uint8_t dfband=0, uint8_t uni_am=0, uint8_t tvreq=0)
 This method allows you to customize the frequency range of a band.
 
void setDefaultBandIndx (uint8_t bandidx)
 
void setFmDeemphasis (uint8_t value)
 Sets de-emphasis time constant.
 
void setFmSoftMuteMaxAttenuation (uint8_t value)
 FM Soft Mute Maximum Attenuation.
 
void setFmSoftMuteRate (uint8_t value)
 Sets the attack and decay rates when entering and leaving soft mute.
 
void setFmSoftMuteSlope (uint8_t value)
 Configures attenuation slope during soft mute in dB attenuation per dB SNR below the soft mute SNR threshold.
 
void setInterruptPin (int interruptPin)
 Sets the MCU Interrupt pin.
 
void setProperty (uint16_t propertyNumber, uint16_t parameter)
 Sends (sets) property to the SI48XX.
 
void setReferenceClockFrequency (uint16_t value)
 Sets the frequency of the REFCLK from the output of the prescaler.
 
void setReferenceClockPrescaler (uint16_t value)
 Sets the number used by the prescaler to divide the external reference clock frequency down to the internal REFCLK.
 
void setResetPin (uint16_t resetPin)
 Sets the MCU RESET pin.
 
void setStatusInterruptFromDevice (bool value)
 Set the Data Status From Device.
 
void setup (uint16_t resetPin, int interruptPin, int8_t defaultBand=0, uint32_t hightClockSpeed=50000)
 Initiates the SI4844 instance and connect the device (SI4844) to Arduino.
 
void setVolume (byte)
 Sets the volume level.
 
void volumeDown (void)
 Decreases the volume level.
 
void volumeUp (void)
 Increases the volume level.
 

Detailed Description

SI4844 Class.

This class implements all functions to help you to control the Si4844 devices.

Member Function Documentation

◆ getFirmwareChipRevision()

uint16_t SI4844::getFirmwareChipRevision ( )
inline

◆ getFirmwareComponentMajorRevision()

uint16_t SI4844::getFirmwareComponentMajorRevision ( )
inline

◆ getFirmwareComponentMinorRevision()

uint16_t SI4844::getFirmwareComponentMinorRevision ( )
inline

◆ getFirmwareCTS()

uint16_t SI4844::getFirmwareCTS ( )
inline

◆ getFirmwareErr()

uint16_t SI4844::getFirmwareErr ( )
inline

◆ getFirmwareMajorRevision()

uint16_t SI4844::getFirmwareMajorRevision ( )
inline

◆ getFirmwareMinorRevision()

uint16_t SI4844::getFirmwareMinorRevision ( )
inline

◆ getFirmwarePartNumber()

uint16_t SI4844::getFirmwarePartNumber ( )
inline

◆ getFirmwareReserved()

uint16_t SI4844::getFirmwareReserved ( )
inline

◆ getStatusCTS()

uint16_t SI4844::getStatusCTS ( )
inline

◆ getStatusHostPowerUp()

uint16_t SI4844::getStatusHostPowerUp ( )
inline

◆ getStatusHostReset()

uint16_t SI4844::getStatusHostReset ( )
inline

◆ setDefaultBandIndx()

void SI4844::setDefaultBandIndx ( uint8_t  bandidx)

The documentation for this class was generated from the following files: