PU2CLR Si4735 Arduino Library  2.0.0
Arduino Library for Si47XX Devices - By Ricardo Lima Caratti
MCU Configuration

Sets some MCU configurations (Arduino, DUE, SMT32, ESP32 etc);. More...

Functions

void SI4735::setI2CLowSpeedMode (void)
 Sets I2C bus to 10KHz. More...
 
void SI4735::setI2CStandardMode (void)
 Sets I2C bus to 100KHz. More...
 
void SI4735::setI2CFastMode (void)
 Sets I2C bus to 400KHz. More...
 
void SI4735::setI2CFastModeCustom (long value=500000)
 Sets the I2C bus to a given value. ATTENTION: use this function with cation. More...
 
void SI4735::setAudioMuteMcuPin (int8_t pin)
 Sets the Audio Mute Mcu Pin. More...
 
void SI4735::setHardwareAudioMute (bool on)
 Sets the Hardware Audio Mute. More...
 
virtual void SI4735::setMcuControl (bool value)
 Enables MCU control resource. More...
 
virtual void SI4735::setMcuWakeUpPin (uint8_t pin)
 Sets pin used to wake the MCU up. More...
 
virtual void SI4735::mcuWakeUp ()
 Sets the pin that controls some MCU features. You might do something with that. More...
 
virtual void SI4735::mcuSleepDown ()
 You might want to do something when MCU wakes up. More...
 
virtual void SI4735::setMcuClockSpeed (uint32_t clock)
 Sets the Mcu Clock Speed if the platform supports this resource. More...
 

Detailed Description

Sets some MCU configurations (Arduino, DUE, SMT32, ESP32 etc);.

Function Documentation

◆ setI2CLowSpeedMode()

void SI4735::setI2CLowSpeedMode ( void  )
inline

Sets I2C bus to 10KHz.

The functions below modify the clock frequency for I2C communication. 100KHz is usually the baseline. Use one of these funcition if you have problem on you default configuration.

◆ setI2CStandardMode()

void SI4735::setI2CStandardMode ( void  )
inline

Sets I2C bus to 100KHz.


◆ setI2CFastMode()

void SI4735::setI2CFastMode ( void  )
inline

Sets I2C bus to 400KHz.

◆ setI2CFastModeCustom()

void SI4735::setI2CFastModeCustom ( long  value = 500000)
inline

Sets the I2C bus to a given value. ATTENTION: use this function with cation.


Parameters
valuein Hz. For example: The values 500000 sets the bus to 500KHz.

◆ setAudioMuteMcuPin()

void SI4735::setAudioMuteMcuPin ( int8_t  pin)
inline

Sets the Audio Mute Mcu Pin.


This function sets the mcu digital pin you want to use to control the external audio mute circuit.

Some users may be uncomfortable with the loud popping of the speaker during some transitions caused by some SI47XX commands.

This problem occurs during the transition from the power down to power up.

Every time the user changes the mode (FM to AM or AM to FM) the power down and power up commands are required by the Si47XX devices.

If you have a extra circuit in your receiver to mute the audio on amplifier input, you can configure a MCU pin to control it by using this function.

See also
setHardwareAudioMute
Parameters
pinif 0 ou greater sets the MCU digital pin will be used to control de external circuit.

◆ setHardwareAudioMute()

void SI4735::setHardwareAudioMute ( bool  on)
inline

Sets the Hardware Audio Mute.

Turns the Hardware audio mute on or off

See also
setAudioMuteMcuPin
Parameters
onTrue or false

Referenced by SI4735::powerDown(), SI4735::radioPowerUp(), and SI4735::setup().

◆ setMcuControl()

void SI4735::setMcuControl ( bool  value)
virtual

Enables MCU control resource.

Todo:

If enabled, the user can make, for example, the MCU sleep or do something when it wakes up.

ATTENTION: This function is virtual and should be implemented in derived class

Parameters
valueIf true, Enable MCU control; If false (default), no MCU control.

References SI4735::controlMcu.

◆ setMcuWakeUpPin()

void SI4735::setMcuWakeUpPin ( uint8_t  pin)
virtual

Sets pin used to wake the MCU up.

Todo:

The MCU should have a pin used to contol its condition.

ATTENTION: This function is virtual and should be implemented in derived class

Parameters
pinMCU pin used to control the MCU

◆ mcuWakeUp()

void SI4735::mcuWakeUp ( )
virtual

Sets the pin that controls some MCU features. You might do something with that.

Todo:

You might want to do something when MCU wakes up.

ATTENTION: This function is virtual and should be implemented in derived class

◆ mcuSleepDown()

void SI4735::mcuSleepDown ( )
virtual

You might want to do something when MCU wakes up.

Todo:

You can handle something after MCU wakes up.

ATTENTION: This function is virtual and should be implemented in derived class

◆ setMcuClockSpeed()

void SI4735::setMcuClockSpeed ( uint32_t  clock)
virtual

Sets the Mcu Clock Speed if the platform supports this resource.

Todo:
See how to adjust the clock speed of the MCU

If the MCU platform support, this function sets the CPU clock speed. ATTENTION: This function is virtual and should be implemented in derived class

Parameters
paramCPU parameter