PU2CLR SI4844 Arduino Library 1.1.2
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 setStatusInterruptFromDevice (bool value)
 Set the Data Status From Device.
 
bool getDataStatusInterruptFromDevice ()
 Get the Data Status From Device.
 
void setProperty (uint16_t propertyNumber, uint16_t parameter)
 Sends (sets) property to the SI48XX.
 
uint16_t getProperty (uint16_t propertyNumber)
 Gets a given property from the SI4844.
 
void sendCommand (uint8_t cmd, int parameter_size, const uint8_t *parameter)
 Sends a given command to the SI4844 device.
 
void getCommandResponse (int response_size, uint8_t *response)
 Returns with the command response.

 
void setup (uint16_t resetPin, int interruptPin, byte defaultBand)
 Initiates the SI4844 instance and connect the device (SI4844) to Arduino.
 
void debugDevice (uint16_t resetPin, uint16_t interruptPin, uint8_t defaultBand, void(*showFunc)(char *msg))
 Used to debug

 
void reset (void)
 Resets the SI4844 device.
 
void setBand (byte)
 Sets a new band to the device.
 
void changeVolume (char)
 Up or down the sound volume level.
 
void volumeUp (void)
 Increases the volume level.
 
void volumeDown (void)
 Decreases the volume level.
 
void setVolume (byte)
 Sets the volume level.
 
void setBassTreble (uint8_t bass_treble)
 Set the sound volume level, bass and treble.
 
void bassTrebleUp ()
 More treble, less bass.
 
void bassTrebleDown ()
 Less treble, more bass.
 
void audioMute (uint8_t value)
 Mutes the audio output.
 
void setAudioMute (bool on)
 Mutes the audio output.
 
void setAmSoftMuteMaxAttenuation (uint8_t value)
 Sets AM Soft Mute Max Attenuation..

 
void setFmSoftMuteMaxAttenuation (uint8_t value)
 FM Soft Mute Maximum Attenuation.
 
void setFmDeemphasis (uint8_t value)
 Sets de-emphasis time constant.
 
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 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 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.
 
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.
 
si4844_status_responsegetStatus (void)
 Get tune freq, band, and others information, status of the device.
 
si4844_firmware_responsegetFirmware (void)
 Get part number, chip revision, firmware, patch, and component revision numbers.
 
void setCustomBand (uint8_t bandIndex, uint16_t botton, uint16_t top, uint8_t bandSpace)
 This method allows you to customize the frequency range of a band.
 
void setCustomBand (uint8_t bandIndex, uint16_t botton, uint16_t top, uint8_t bandSpace, uint8_t dfband, uint8_t uni_am, uint8_t tvreq)
 This method allows you to customize the frequency range of a band.
 
void setDefaultBandIndx (uint8_t bandidx)
 
void powerDown (void)
 Power the device down.
 
void powerUp (void)
 Power the device up.
 
float getFrequency (void)
 Get the current frequency of the radio in KHz.
 
bool hasStatusChanged (void)
 Checks whether the SI4844 has its status changed.
 
void resetStatus (void)
 set the interrupr status to false. It will turn true after next interrupr

 
uint8_t getVolume ()
 Gets the current audio volume level.
 
uint8_t getVolumeProperty ()
 Gets the current volume value stored in SI4844 device.
 
char * getBandMode ()
 Get the Band Mode.
 
char * getStereoIndicator ()
 Get the Stereo Indicator.
 
uint16_t getStatusBCFG0 ()
 
uint16_t getStatusBCFG1 ()
 
uint16_t getStatusStereo ()
 
uint16_t getStatusStationIndicator ()
 
uint16_t getStatusInformationReady ()
 
uint16_t getStatusHostPowerUp ()
 
uint16_t getStatusHostReset ()
 
uint16_t getStatusBandMode ()
 
uint16_t getStatusBandIndex ()
 
uint16_t getStatusCTS ()
 
uint16_t getFirmwareReserved ()
 
uint16_t getFirmwareErr ()
 
uint16_t getFirmwareCTS ()
 
uint16_t getFirmwarePartNumber ()
 
uint16_t getFirmwareMajorRevision ()
 
uint16_t getFirmwareMinorRevision ()
 
uint16_t getFirmwareComponentMajorRevision ()
 
uint16_t getFirmwareComponentMinorRevision ()
 
uint16_t getFirmwareChipRevision ()
 
void setResetPin (uint16_t resetPin)
 
void setInterruptPin (int interruptPin)
 
uint8_t scanI2CBus (uint8_t *device, uint8_t limit)
 Scans the I2C bus and returns the addresses of the devices found.
 
bool detectDevice ()
 Checks communication with SI4844 via I2C.
 

Detailed Description

SI4844 Class.

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

Member Function Documentation

◆ setDefaultBandIndx()

void SI4844::setDefaultBandIndx ( uint8_t  bandidx)

◆ getStatusBCFG0()

uint16_t SI4844::getStatusBCFG0 ( )
inline

◆ getStatusBCFG1()

uint16_t SI4844::getStatusBCFG1 ( )
inline

◆ getStatusStereo()

uint16_t SI4844::getStatusStereo ( )
inline

◆ getStatusStationIndicator()

uint16_t SI4844::getStatusStationIndicator ( )
inline

◆ getStatusInformationReady()

uint16_t SI4844::getStatusInformationReady ( )
inline

◆ getStatusHostPowerUp()

uint16_t SI4844::getStatusHostPowerUp ( )
inline

◆ getStatusHostReset()

uint16_t SI4844::getStatusHostReset ( )
inline

◆ getStatusBandMode()

uint16_t SI4844::getStatusBandMode ( )
inline

◆ getStatusBandIndex()

uint16_t SI4844::getStatusBandIndex ( )
inline

◆ getStatusCTS()

uint16_t SI4844::getStatusCTS ( )
inline

◆ getFirmwareReserved()

uint16_t SI4844::getFirmwareReserved ( )
inline

◆ getFirmwareErr()

uint16_t SI4844::getFirmwareErr ( )
inline

◆ getFirmwareCTS()

uint16_t SI4844::getFirmwareCTS ( )
inline

◆ getFirmwarePartNumber()

uint16_t SI4844::getFirmwarePartNumber ( )
inline

◆ getFirmwareMajorRevision()

uint16_t SI4844::getFirmwareMajorRevision ( )
inline

◆ getFirmwareMinorRevision()

uint16_t SI4844::getFirmwareMinorRevision ( )
inline

◆ getFirmwareComponentMajorRevision()

uint16_t SI4844::getFirmwareComponentMajorRevision ( )
inline

◆ getFirmwareComponentMinorRevision()

uint16_t SI4844::getFirmwareComponentMinorRevision ( )
inline

◆ getFirmwareChipRevision()

uint16_t SI4844::getFirmwareChipRevision ( )
inline

◆ setResetPin()

void SI4844::setResetPin ( uint16_t  resetPin)

◆ setInterruptPin()

void SI4844::setInterruptPin ( int  interruptPin)

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