![]() |
PU2CLR Si4735 Arduino Library
1.1.9
Arduino Library for Si47XX Devices - By Ricardo Lima Caratti
|
#include <Arduino.h>
#include <Wire.h>
Go to the source code of this file.
Data Structures | |
union | si473x_powerup |
Power Up arguments data type. More... | |
union | si473x_gpio |
Data type for Enables output for GPO1, GPO2 and GPO3. More... | |
union | si473x_gpio_ien |
Data type for Configuring the sources for the GPO2/INT interrupt pin. More... | |
union | si47x_frequency |
Represents how the frequency is stored in the si4735. More... | |
union | si47x_antenna_capacitor |
Antenna Tuning Capacitor data type manupulation. More... | |
union | si47x_set_frequency |
AM Tune frequency data type command (AM_TUNE_FREQ command) More... | |
union | si47x_seek |
Seek frequency (automatic tuning) More... | |
union | si47x_status |
Status response data representation. More... | |
union | si47x_response_status |
Response status command. More... | |
union | si47x_firmware_information |
Data representation for Firmware Information (GET_REV) More... | |
union | si47x_firmware_query_library |
Firmware Query Library ID response. More... | |
union | si47x_tune_status |
Seek station status. More... | |
union | si47x_property |
Data type to deal with SET_PROPERTY command. More... | |
union | si47x_rqs_status |
Radio Signal Quality data representation. More... | |
union | si47x_rds_command |
Data type for RDS Status command and response information. More... | |
union | si47x_rds_status |
Response data type for current channel and reads an entry from the RDS FIFO. More... | |
union | si47x_rds_int_source |
FM_RDS_INT_SOURCE property data type. More... | |
union | si47x_rds_config |
Data type for FM_RDS_CONFIG Property. More... | |
union | si47x_rds_blocka |
Block A data type. More... | |
union | si47x_rds_blockb |
Block B data type. More... | |
union | si47x_rds_date_time |
union | si47x_agc_status |
union | si47x_agc_overrride |
union | si47x_bandwidth_config |
union | si47x_ssb_mode |
union | si4735_digital_output_format |
Digital audio output format data structure (Property 0x0102. DIGITAL_OUTPUT_FORMAT). More... | |
struct | si4735_digital_output_sample_rate |
Digital audio output sample structure (Property 0x0104. DIGITAL_OUTPUT_SAMPLE_RATE). More... | |
class | SI4735 |
SI4735 Class. More... | |
struct | si473x_powerup.arg |
struct | si473x_gpio.arg |
struct | si473x_gpio_ien.arg |
struct | si47x_frequency.raw |
struct | si47x_antenna_capacitor.raw |
struct | si47x_set_frequency.arg |
struct | si47x_seek.arg |
struct | si47x_status.refined |
struct | si47x_response_status.resp |
struct | si47x_firmware_information.resp |
struct | si47x_firmware_query_library.resp |
struct | si47x_tune_status.arg |
struct | si47x_property.raw |
struct | si47x_rqs_status.resp |
struct | si47x_rds_command.arg |
struct | si47x_rds_status.resp |
struct | si47x_rds_int_source.refined |
struct | si47x_rds_config.arg |
struct | si47x_rds_blocka.refined |
struct | si47x_rds_blocka.raw |
struct | si47x_rds_blockb.group0 |
struct | si47x_rds_blockb.group2 |
struct | si47x_rds_blockb.refined |
struct | si47x_rds_blockb.raw |
struct | si47x_rds_date_time.refined |
struct | si47x_agc_status.refined |
struct | si47x_agc_overrride.arg |
struct | si47x_bandwidth_config.param |
struct | si47x_ssb_mode.param |
struct | si4735_digital_output_format.refined |
#define POWER_UP_FM 0 |
SI4735 ARDUINO LIBRARY
This is an Arduino library for the SI47XX, BROADCAST AM/FM/SW RADIO RECEIVER IC family from Silicon Labs.
This library is intended to provide an easier interface for controlling the SI47XX by using Arduino platform.
The communication used by this library is I2C.
This file contains: const (#define), Defined Data type and Methods declarations
You can see a complete documentation on https://github.com/pu2clr/SI4735
The are more than 20 examples on https://github.com/pu2clr/SI4735/tree/master/examples
#define POWER_UP_AM 1 |
#define POWER_UP_WB 3 |
#define POWER_PATCH 15 |
#define SI473X_ADDR_SEN_LOW 0x11 |
#define SI473X_ADDR_SEN_HIGH 0x63 |
#define POWER_UP 0x01 |
#define GET_REV 0x10 |
#define POWER_DOWN 0x11 |
#define SET_PROPERTY 0x12 |
#define GET_PROPERTY 0x13 |
#define GET_INT_STATUS 0x14 |
#define FM_TUNE_FREQ 0x20 |
#define FM_SEEK_START 0x21 |
#define FM_TUNE_STATUS 0x22 |
#define FM_AGC_STATUS 0x27 |
#define FM_AGC_OVERRIDE 0x28 |
#define FM_RSQ_STATUS 0x23 |
#define FM_RDS_STATUS 0x24 |
#define FM_RDS_INT_SOURCE 0x1500 |
#define FM_RDS_INT_FIFO_COUNT 0x1501 |
#define FM_RDS_CONFIG 0x1502 |
#define FM_RDS_CONFIDENCE 0x1503 |
#define FM_BLEND_STEREO_THRESHOLD 0x1105 |
#define FM_BLEND_MONO_THRESHOLD 0x1106 |
#define FM_BLEND_RSSI_STEREO_THRESHOLD 0x1800 |
#define FM_BLEND_RSSI_MONO_THRESHOLD 0x1801 |
#define FM_BLEND_SNR_STEREO_THRESHOLD 0x1804 |
#define FM_BLEND_SNR_MONO_THRESHOLD 0x1805 |
#define FM_BLEND_MULTIPATH_STEREO_THRESHOLD 0x1808 |
#define FM_BLEND_MULTIPATH_MONO_THRESHOLD 0x1809 |
#define AM_TUNE_FREQ 0x40 |
#define AM_SEEK_START 0x41 |
#define AM_TUNE_STATUS 0x42 |
#define AM_RSQ_STATUS 0x43 |
#define AM_AGC_STATUS 0x47 |
#define AM_AGC_OVERRIDE 0x48 |
#define GPIO_CTL 0x80 |
#define GPIO_SET 0x81 |
#define SSB_TUNE_FREQ 0x40 |
#define SSB_TUNE_STATUS 0x42 |
#define SSB_RSQ_STATUS 0x43 |
#define SSB_AGC_STATUS 0x47 |
#define SSB_AGC_OVERRIDE 0x48 |
#define DIGITAL_OUTPUT_FORMAT 0x0102 |
#define DIGITAL_OUTPUT_SAMPLE_RATE 0x0104 |
#define REFCLK_FREQ 0x0201 |
#define REFCLK_PRESCALE 0x0202 |
#define AM_DEEMPHASIS 0x3100 |
#define AM_CHANNEL_FILTER 0x3102 |
#define AM_AUTOMATIC_VOLUME_CONTROL_MAX_GAIN 0x3103 |
#define AM_MODE_AFC_SW_PULL_IN_RANGE 0x3104 |
#define AM_MODE_AFC_SW_LOCK_IN_RANGE 0x3105 |
#define AM_RSQ_INTERRUPTS 0x3200 |
#define AM_RSQ_SNR_HIGH_THRESHOLD 0x3201 |
#define AM_RSQ_SNR_LOW_THRESHOLD 0x3202 |
#define AM_RSQ_RSSI_HIGH_THRESHOLD 0x3203 |
#define AM_RSQ_RSSI_LOW_THRESHOLD 0x3204 |
#define AM_SOFT_MUTE_RATE 0x3300 |
#define AM_SOFT_MUTE_SLOPE 0x3301 |
#define AM_SOFT_MUTE_MAX_ATTENUATION 0x3302 |
#define AM_SOFT_MUTE_SNR_THRESHOLD 0x3303 |
#define AM_SOFT_MUTE_RELEASE_RATE 0x3304 |
#define AM_SOFT_MUTE_ATTACK_RATE 0x3305 |
#define AM_SEEK_BAND_BOTTOM 0x3400 |
#define AM_SEEK_BAND_TOP 0x3401 |
#define AM_SEEK_FREQ_SPACING 0x3402 |
#define AM_SEEK_SNR_THRESHOLD 0x3403 |
#define AM_SEEK_RSSI_THRESHOLD 0x3404 |
#define AM_AGC_ATTACK_RATE 0x3702 |
#define AM_AGC_RELEASE_RATE 0x3703 |
#define AM_FRONTEND_AGC_CONTROL 0x3705 |
#define AM_NB_DETECT_THRESHOLD 0x3900 |
#define AM_NB_INTERVAL 0x3901 |
#define AM_NB_RATE 0x3902 |
#define AM_NB_IIR_FILTER 0x3903 |
#define AM_NB_DELAY 0x3904 |
#define RX_VOLUME 0x4000 |
#define RX_HARD_MUTE 0x4001 |
#define GPO_IEN 0x0001 |
#define SSB_BFO 0x0100 |
#define SSB_MODE 0x0101 |
#define SSB_RSQ_INTERRUPTS 0x3200 |
#define SSB_RSQ_SNR_HI_THRESHOLD 0x3201 |
#define SSB_RSQ_SNR_LO_THRESHOLD 0x3202 |
#define SSB_RSQ_RSSI_HI_THRESHOLD 0x3203 |
#define SSB_RSQ_RSSI_LO_THRESHOLD 0x3204 |
#define SSB_SOFT_MUTE_RATE 0x3300 |
#define SSB_SOFT_MUTE_MAX_ATTENUATION 0x3302 |
#define SSB_SOFT_MUTE_SNR_THRESHOLD 0x3303 |
#define SSB_RF_AGC_ATTACK_RATE 0x3700 |
#define SSB_RF_AGC_RELEASE_RATE 0x3701 |
#define SSB_RF_IF_AGC_ATTACK_RATE 0x3702 |
#define SSB_RF_IF_AGC_RELEASE_RATE 0x3703 |
#define LSB_MODE 1 |
#define USB_MODE 2 |
#define SI473X_RDS_OUTPUT_ONLY 0b00000000 |
#define SI473X_ANALOG_AUDIO 0b00000101 |
#define SI473X_DIGITAL_AUDIO1 0b00001011 |
#define SI473X_DIGITAL_AUDIO2 0b10110000 |
#define SI473X_ANALOG_DIGITAL_AUDIO 0b10110101 |
#define FM_CURRENT_MODE 0 |
#define AM_CURRENT_MODE 1 |
#define SSB_CURRENT_MODE 2 |
#define MAX_DELAY_AFTER_SET_FREQUENCY 30 |
#define MAX_DELAY_AFTER_POWERUP 10 |
#define MIN_DELAY_WAIT_SEND_LOOP 300 |