PU2CLR SI4844 Arduino Library 1.1.8
Arduino Library for Si4844 Devices - By Ricardo Lima Caratti
Loading...
Searching...
No Matches
SI4844.h File Reference
#include <Arduino.h>
#include <Wire.h>

Go to the source code of this file.

Classes

class  SI4844
 SI4844 Class. More...
 
union  SI4844_arg_band
 Configures all SI48XX parameters. More...
 
struct  SI4844_arg_band.refined
 
union  si4844_arg_band_index
 Configures band parameter. More...
 
struct  si4844_arg_band_index.refined
 
union  si4844_audiomode
 Audio Mode. More...
 
struct  si4844_audiomode.arg1
 
union  si4844_audiomode_status_response
 Audio Status Response. More...
 
struct  si4844_audiomode_status_response.status
 
union  si4844_device_status
 Device Status (The first byte of the device ststus register) More...
 
struct  si4844_device_status.refined
 
struct  si4844_firmware_info
 Firmware Information. More...
 
union  si4844_firmware_response
 Firmware Response. More...
 
struct  si4844_get_channel_frequency
 
struct  si4844_get_status
 All Device Information (All Status) More...
 
union  si4844_property
 Data type to deal with SET_PROPERTY command. More...
 
struct  si4844_property.raw
 
union  si4844_status
 Status. More...
 
struct  si4844_status.refined
 
union  si4844_status_response
 Status response. More...
 

Macros

#define AM_SOFT_MUTE_MAX_ATTENUATION   0x3302
 
#define AM_SOFT_MUTE_RATE   0x3300
 
#define AM_SOFT_MUTE_SLOPE   0x3301
 
#define AM_SOFT_MUTE_SNR_THRESHOLD   0x3303
 
#define ATDD_AUDIO_MODE   0xE2
 
#define ATDD_GET_STATUS   0xE0
 
#define ATDD_POWER_DOWN   0x11
 
#define ATDD_POWER_UP   0xE1
 
#define ATDD_XOSCEN   0x80
 
#define ATDD_XOWAIT   0x40
 
#define DEVICE_LAST_VALID_INDEX_BAND   40
 
#define FM_BLEND_RSSI_MONO_THRESHOLD   0x1801
 
#define FM_BLEND_RSSI_STEREO_THRESHOLD   0x1800
 
#define FM_DEEMPHASIS   0x1100
 
#define FM_SOFT_MUTE_MAX_ATTENUATION   0x1302
 
#define FM_SOFT_MUTE_RATE   0x1300
 
#define FM_SOFT_MUTE_SLOPE   0x1301
 
#define FM_STEREO_IND_BLEND_THRESHOLD   0x1207
 
#define GET_PROPERTY   0x13
 
#define GET_REV   0x10
 
#define REFCLK_FREQ   0x0201
 
#define REFCLK_PRESCALE   0x0202
 
#define RX_ACTUAL_VOLUME   0x4003
 
#define RX_BASS_TREBLE   0x4002
 
#define RX_HARD_MUTE   0x4001
 
#define RX_VOLUME   0x4000
 
#define SET_PROPERTY   0x12
 
#define SI4844_ADDRESS   0x11
 SI4844 ARDUINO LIBRARY

 

Class Documentation

◆ si4844_firmware_response

union si4844_firmware_response

Firmware Response.

Class Members
uint8_t raw[9]
si4844_firmware_info refined

◆ si4844_get_channel_frequency

struct si4844_get_channel_frequency
Class Members
uint16_t CHFREQ
uint16_t dummy

◆ si4844_property

union si4844_property

Data type to deal with SET_PROPERTY command.

Property Data type (help to deal with SET_PROPERTY command on si473X)

Class Members
struct si4844_property.raw raw
uint16_t value

◆ si4844_property.raw

struct si4844_property.raw
Class Members
uint8_t byteHigh
uint8_t byteLow

Macro Definition Documentation

◆ AM_SOFT_MUTE_MAX_ATTENUATION

#define AM_SOFT_MUTE_MAX_ATTENUATION   0x3302

◆ AM_SOFT_MUTE_RATE

#define AM_SOFT_MUTE_RATE   0x3300

◆ AM_SOFT_MUTE_SLOPE

#define AM_SOFT_MUTE_SLOPE   0x3301

◆ AM_SOFT_MUTE_SNR_THRESHOLD

#define AM_SOFT_MUTE_SNR_THRESHOLD   0x3303

◆ ATDD_AUDIO_MODE

#define ATDD_AUDIO_MODE   0xE2

◆ ATDD_GET_STATUS

#define ATDD_GET_STATUS   0xE0

◆ ATDD_POWER_DOWN

#define ATDD_POWER_DOWN   0x11

◆ ATDD_POWER_UP

#define ATDD_POWER_UP   0xE1

◆ ATDD_XOSCEN

#define ATDD_XOSCEN   0x80

◆ ATDD_XOWAIT

#define ATDD_XOWAIT   0x40

◆ DEVICE_LAST_VALID_INDEX_BAND

#define DEVICE_LAST_VALID_INDEX_BAND   40

◆ FM_BLEND_RSSI_MONO_THRESHOLD

#define FM_BLEND_RSSI_MONO_THRESHOLD   0x1801

◆ FM_BLEND_RSSI_STEREO_THRESHOLD

#define FM_BLEND_RSSI_STEREO_THRESHOLD   0x1800

◆ FM_DEEMPHASIS

#define FM_DEEMPHASIS   0x1100

◆ FM_SOFT_MUTE_MAX_ATTENUATION

#define FM_SOFT_MUTE_MAX_ATTENUATION   0x1302

◆ FM_SOFT_MUTE_RATE

#define FM_SOFT_MUTE_RATE   0x1300

◆ FM_SOFT_MUTE_SLOPE

#define FM_SOFT_MUTE_SLOPE   0x1301

◆ FM_STEREO_IND_BLEND_THRESHOLD

#define FM_STEREO_IND_BLEND_THRESHOLD   0x1207

◆ GET_PROPERTY

#define GET_PROPERTY   0x13

◆ GET_REV

#define GET_REV   0x10

◆ REFCLK_FREQ

#define REFCLK_FREQ   0x0201

◆ REFCLK_PRESCALE

#define REFCLK_PRESCALE   0x0202

◆ RX_ACTUAL_VOLUME

#define RX_ACTUAL_VOLUME   0x4003

◆ RX_BASS_TREBLE

#define RX_BASS_TREBLE   0x4002

◆ RX_HARD_MUTE

#define RX_HARD_MUTE   0x4001

◆ RX_VOLUME

#define RX_VOLUME   0x4000

◆ SET_PROPERTY

#define SET_PROPERTY   0x12

◆ SI4844_ADDRESS

#define SI4844_ADDRESS   0x11

SI4844 ARDUINO LIBRARY

This is an Arduino library for the SI4822, SI4826, SI4827, SI4840, 4844A, and 4844B, BROADCAST AM/FM/SW RADIO RECEIVER IC family from Silicon Labs.

When appropriate, this documentation will use the acronym SI48XX to refer to the following devices: SI4822, SI4826, SI4827, SI4840, SI4844A, and SI4844B.

In most cases, references to the SI4844 device also apply to the other aforementioned devices.

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/SI4844

See also
https://pu2clr.github.io/SI4844/
Si48XX ATDD PROGRAMMING GUIDE - AN610
BROADCAST ANALOG TUNING DIGITAL DISPLAY AM/FM/SW RADIO RECEIVER - Si4844-B20
Si4822/26/27/40/44 A NTENNA , SCHEMATIC , LAYOUT, AND DESIGN GUIDELINES - AN602
Author
PU2CLR - Ricardo Lima Caratti
Date
2019-2020