67 uint16_t decode_time_check;
1099 vs1053b_interface_debug_print(
"vs1053b: vs1053b_set_lower_limit_frequency_in_1000_hz/vs1053b_get_lower_limit_frequency_in_1000_hz test.\n");
1480 clk = rand() % 0x400;
1508 decode_time = rand() % 100;
1536 rate = rand() % 0xFFF;
1537 if ((rate % 2) != 0)
1565 rate = rand() % 0xFFF;
1566 if ((rate % 2) != 0)
1668 left = rand() % 256;
1669 right = rand() % 256;
1713 buf[0] = rand() % 256;
1714 buf[1] = rand() % 256;
1739 buf[0] = rand() % 256;
1740 buf[1] = rand() % 256;
1765 buf[0] = rand() % 256;
1766 buf[1] = rand() % 256;
1791 buf[0] = rand() % 256;
1792 buf[1] = rand() % 256;
1988 vs1053b_interface_debug_print(
"vs1053b: vs1053b_lower_limit_frequency_in_1000_hz_convert_to_register/vs1053b_lower_limit_frequency_in_1000_hz_convert_to_data test.\n");
2010 vs1053b_interface_debug_print(
"vs1053b: vs1053b_lower_limit_frequency_in_10_hz_convert_to_register/vs1053b_lower_limit_frequency_in_10_hz_convert_to_data test.\n");
driver vs1053b register test header file
uint8_t vs1053b_get_version(vs1053b_handle_t *handle, uint8_t *version)
get version
uint8_t vs1053b_set_iis_mclk(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable iis mclk
uint8_t vs1053b_set_swing(vs1053b_handle_t *handle, uint8_t swing)
set swing
uint8_t vs1053b_get_overload_indicator(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get overload indicator status
uint8_t vs1053b_set_treble_control(vs1053b_handle_t *handle, uint8_t db)
set treble control
uint8_t vs1053b_set_ad_clock(vs1053b_handle_t *handle, vs1053b_ad_clock_t ad_clock)
set ad clock
uint8_t vs1053b_set_clock_multiplier(vs1053b_handle_t *handle, vs1053b_clock_multiplier_t multiplier)
set clock multiplier
uint8_t vs1053b_get_diff(vs1053b_handle_t *handle, vs1053b_diff_t *diff)
get the audio differential
uint8_t vs1053b_get_lower_limit_frequency_in_1000_hz(vs1053b_handle_t *handle, uint8_t *step)
get lower limit frequency in 1000 hz
uint8_t vs1053b_set_reference_voltage(vs1053b_handle_t *handle, vs1053b_reference_voltage_t voltage)
set reference voltage
uint8_t vs1053b_get_end_fill_byte(vs1053b_handle_t *handle, uint16_t *byte)
get end fill byte
uint8_t vs1053b_get_iis(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get iis status
uint8_t vs1053b_get_ear_speaker_high_setting(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get ear speaker high setting status
uint8_t vs1053b_set_analog_internal_power_down(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable analog internal power down
uint8_t vs1053b_vol_convert_to_data(vs1053b_handle_t *handle, uint8_t reg, float *db)
convert the register raw data to vol
uint8_t vs1053b_get_allow_sdi_test(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get allow sdi test status
uint8_t vs1053b_swing_convert_to_register(vs1053b_handle_t *handle, float db, uint8_t *reg)
convert the swing to the register raw data
uint8_t vs1053b_set_lower_limit_frequency_in_10_hz(vs1053b_handle_t *handle, uint8_t step)
set lower limit frequency in 10 hz
uint8_t vs1053b_set_vol(vs1053b_handle_t *handle, uint8_t left, uint8_t right)
set vol
uint8_t vs1053b_lower_limit_frequency_in_1000_hz_convert_to_register(vs1053b_handle_t *handle, uint32_t hz, uint8_t *reg)
convert the lower limit frequency in 1000 hz to the register raw data
uint8_t vs1053b_get_lower_limit_frequency_in_10_hz(vs1053b_handle_t *handle, uint8_t *step)
get lower limit frequency in 10 hz
uint8_t vs1053b_read_ram(vs1053b_handle_t *handle, uint8_t *buf, uint16_t len)
read ram
uint8_t vs1053b_get_play_speed(vs1053b_handle_t *handle, vs1053b_play_speed_t *speed)
get play speed
uint8_t vs1053b_set_selector(vs1053b_handle_t *handle, vs1053b_selector_t selector)
set selector
uint8_t vs1053b_clock_frequency_convert_to_register(vs1053b_handle_t *handle, float hz, uint16_t *reg)
convert the clock frequency to the register raw data
uint8_t vs1053b_get_gpio_output(vs1053b_handle_t *handle, uint16_t *data)
get gpio output
uint8_t vs1053b_get_pcm_adpcm_recording_active(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get pcm adpcm recording active status
uint8_t vs1053b_set_do_not_jump(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable do not jump
uint8_t vs1053b_get_stream_mode(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get stream mode status
vs1053b_ad_clock_t
vs1053b ad clock enumeration definition
uint8_t vs1053b_get_mpeg_layer_i_and_ii(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get mpeg layer i and ii status
uint8_t vs1053b_get_bass_enhancement(vs1053b_handle_t *handle, uint8_t *db)
get bass enhancement
uint8_t vs1053b_get_clock_frequency(vs1053b_handle_t *handle, uint16_t *clk)
get clock frequency
vs1053b_reference_voltage_t
vs1053b reference voltage enumeration definition
vs1053b_bit_order_t
vs1053b bit order enumeration definition
vs1053b_allowed_multiplier_addition_t
vs1053b allowed multiplier addition enumeration definition
uint8_t vs1053b_get_clock_multiplier(vs1053b_handle_t *handle, vs1053b_clock_multiplier_t *multiplier)
get clock multiplier
vs1053b_diff_t
vs1053b diff enumeration definition
uint8_t vs1053b_get_gpio_direction(vs1053b_handle_t *handle, uint16_t *mask)
get gpio direction
uint8_t vs1053b_set_sample_rate(vs1053b_handle_t *handle, uint16_t rate, vs1053b_channel_t channel)
set sample rate
vs1053b_bool_t
vs1053b bool enumeration definition
uint8_t vs1053b_set_decode_time(vs1053b_handle_t *handle, uint16_t decode_time)
set decode time
vs1053b_selector_t
vs1053b selector enumeration definition
uint8_t vs1053b_set_gpio_direction(vs1053b_handle_t *handle, uint16_t mask)
set gpio direction
uint8_t vs1053b_get_gpio_input(vs1053b_handle_t *handle, uint16_t *data)
get gpio input
uint8_t vs1053b_get_share_spi_chip_select(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get share spi chip select status
uint8_t vs1053b_set_native_spi_modes(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable native spi modes
uint8_t vs1053b_get_selector(vs1053b_handle_t *handle, vs1053b_selector_t *selector)
get selector
uint8_t vs1053b_init(vs1053b_handle_t *handle)
initialize the chip
uint8_t vs1053b_set_cancel_decoding_current_file(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable cancel decoding current file
uint8_t vs1053b_set_start_address(vs1053b_handle_t *handle, uint16_t addr)
set start address
uint8_t vs1053b_get_swing(vs1053b_handle_t *handle, uint8_t *swing)
get swing
vs1053b_dclk_edge_t
vs1053b dclk edge enumeration definition
uint8_t vs1053b_set_stream_mode(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable stream mode
uint8_t vs1053b_get_allowed_multiplier_addition(vs1053b_handle_t *handle, vs1053b_allowed_multiplier_addition_t *addition)
get allowed multiplier addition
uint8_t vs1053b_get_decode_time(vs1053b_handle_t *handle, uint16_t *decode_time)
get decode time
uint8_t vs1053b_get_treble_control(vs1053b_handle_t *handle, uint8_t *db)
get treble control
uint8_t vs1053b_set_iis_rate(vs1053b_handle_t *handle, vs1053b_iis_rate_t iis_rate)
set iis rate
uint8_t vs1053b_read_application(vs1053b_handle_t *handle, vs1053b_application_t num, uint8_t *buf, uint16_t len)
read application
uint8_t vs1053b_write_application(vs1053b_handle_t *handle, vs1053b_application_t num, uint8_t *buf, uint16_t len)
write application
uint8_t vs1053b_set_dclk_edge(vs1053b_handle_t *handle, vs1053b_dclk_edge_t edge)
set dclk edge
uint8_t vs1053b_get_dclk_edge(vs1053b_handle_t *handle, vs1053b_dclk_edge_t *edge)
get dclk edge
uint8_t vs1053b_set_analog_driver_power_down(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable analog driver power down
uint8_t vs1053b_set_play_speed(vs1053b_handle_t *handle, vs1053b_play_speed_t speed)
set play speed
uint8_t vs1053b_set_pcm_adpcm_recording_active(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable pcm adpcm recording active
uint8_t vs1053b_set_clock_frequency(vs1053b_handle_t *handle, uint16_t clk)
set clock frequency
uint8_t vs1053b_lower_limit_frequency_in_1000_hz_convert_to_data(vs1053b_handle_t *handle, uint8_t reg, uint32_t *hz)
convert the register raw data to the lower limit frequency in 1000 hz
uint8_t vs1053b_hard_reset(vs1053b_handle_t *handle)
hard reset
uint8_t vs1053b_get_iis_mclk(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get iis mclk status
uint8_t vs1053b_get_analog_internal_power_down(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get analog internal power down status
vs1053b_clock_range_t
vs1053b clock range enumeration definition
uint8_t vs1053b_set_ear_speaker_low_setting(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable ear speaker low setting
uint8_t vs1053b_clock_frequency_convert_to_data(vs1053b_handle_t *handle, uint16_t reg, float *hz)
convert the register raw data to the clock frequency
uint8_t vs1053b_set_clock_range(vs1053b_handle_t *handle, vs1053b_clock_range_t range)
set clock range
uint8_t vs1053b_set_diff(vs1053b_handle_t *handle, vs1053b_diff_t diff)
set the audio differential
uint8_t vs1053b_get_do_not_jump(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get do not jump status
uint8_t vs1053b_get_cancel_decoding_current_file(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get cancel decoding current file status
uint8_t vs1053b_get_overload_detection(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get overload detection status
uint8_t vs1053b_set_ear_speaker_high_setting(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable ear speaker high setting
uint8_t vs1053b_treble_control_convert_to_data(vs1053b_handle_t *handle, uint8_t reg, float *db)
convert the register raw data to the treble control
uint8_t vs1053b_set_share_spi_chip_select(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable share spi chip select
uint8_t vs1053b_vol_convert_to_register(vs1053b_handle_t *handle, float db, uint8_t *reg)
convert vol to the register raw data
uint8_t vs1053b_set_soft_reset(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable soft reset
uint8_t vs1053b_get_reference_voltage(vs1053b_handle_t *handle, vs1053b_reference_voltage_t *voltage)
get reference voltage
uint8_t vs1053b_lower_limit_frequency_in_10_hz_convert_to_data(vs1053b_handle_t *handle, uint8_t reg, uint32_t *hz)
convert the register raw data to the lower limit frequency in 10 hz
uint8_t vs1053b_get_analog_driver_power_down(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get analog driver power down status
uint8_t vs1053b_set_ram_address(vs1053b_handle_t *handle, uint16_t addr)
set ram address
uint8_t vs1053b_set_overload_indicator(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable overload indicator
struct vs1053b_handle_s vs1053b_handle_t
vs1053b handle structure definition
vs1053b_play_speed_t
vs1053b play speed enumeration definition
uint8_t vs1053b_set_allow_sdi_test(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable allow sdi test
uint8_t vs1053b_get_sdi_bit_order(vs1053b_handle_t *handle, vs1053b_bit_order_t *order)
get sdi bit order
uint8_t vs1053b_set_overload_detection(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable overload detection
uint8_t vs1053b_treble_control_convert_to_register(vs1053b_handle_t *handle, float db, uint8_t *reg)
convert the treble control to the register raw data
uint8_t vs1053b_deinit(vs1053b_handle_t *handle)
deinit the chip
vs1053b_iis_rate_t
vs1053b iis rate enumeration definition
uint8_t vs1053b_set_iis(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable iis
uint8_t vs1053b_set_allowed_multiplier_addition(vs1053b_handle_t *handle, vs1053b_allowed_multiplier_addition_t addition)
set allowed multiplier addition
uint8_t vs1053b_set_sdi_bit_order(vs1053b_handle_t *handle, vs1053b_bit_order_t order)
set sdi bit order
uint8_t vs1053b_get_start_address(vs1053b_handle_t *handle, uint16_t *addr)
get start address
struct vs1053b_info_s vs1053b_info_t
vs1053b information structure definition
uint8_t vs1053b_set_gpio_output(vs1053b_handle_t *handle, uint16_t data)
set gpio output
uint8_t vs1053b_get_vol(vs1053b_handle_t *handle, uint8_t *left, uint8_t *right)
get vol
vs1053b_clock_multiplier_t
vs1053b clock multiplier enumeration definition
uint8_t vs1053b_get_iis_rate(vs1053b_handle_t *handle, vs1053b_iis_rate_t *iis_rate)
get iis rate
uint8_t vs1053b_get_ad_clock(vs1053b_handle_t *handle, vs1053b_ad_clock_t *ad_clock)
get ad clock
uint8_t vs1053b_info(vs1053b_info_t *info)
get chip's information
uint8_t vs1053b_get_byte_rate(vs1053b_handle_t *handle, uint16_t *rate)
get byte rate
uint8_t vs1053b_get_hdata(vs1053b_handle_t *handle, uint16_t *dat0, uint16_t *dat1)
get hdata
uint8_t vs1053b_write_ram(vs1053b_handle_t *handle, uint8_t *buf, uint16_t len)
write ram
vs1053b_channel_t
vs1053b channel enumeration definition
uint8_t vs1053b_get_native_spi_modes(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get native spi modes status
uint8_t vs1053b_set_bass_enhancement(vs1053b_handle_t *handle, uint8_t db)
set bass enhancement
uint8_t vs1053b_set_lower_limit_frequency_in_1000_hz(vs1053b_handle_t *handle, uint8_t step)
set lower limit frequency in 1000 hz
uint8_t vs1053b_get_sample_rate(vs1053b_handle_t *handle, uint16_t *rate, vs1053b_channel_t *channel)
get sample rate
uint8_t vs1053b_swing_convert_to_data(vs1053b_handle_t *handle, uint8_t reg, float *db)
convert the register raw data to the swing
uint8_t vs1053b_set_mpeg_layer_i_and_ii(vs1053b_handle_t *handle, vs1053b_bool_t enable)
enable or disable mpeg layer i and ii
uint8_t vs1053b_get_ear_speaker_low_setting(vs1053b_handle_t *handle, vs1053b_bool_t *enable)
get ear speaker low setting status
uint8_t vs1053b_get_clock_range(vs1053b_handle_t *handle, vs1053b_clock_range_t *range)
get clock range
uint8_t vs1053b_lower_limit_frequency_in_10_hz_convert_to_register(vs1053b_handle_t *handle, uint32_t hz, uint8_t *reg)
convert the lower limit frequency in 10 hz to the register raw data
@ VS1053B_REFERENCE_VOLTAGE_1P23V
@ VS1053B_BIT_ORDER_MSB_FIRST
@ VS1053B_ALLOWED_MULTIPLIER_ADDITION_NONE
@ VS1053B_ALLOWED_MULTIPLIER_ADDITION_1P0_XTALI
@ VS1053B_ALLOWED_MULTIPLIER_ADDITION_2P0_XTALI
@ VS1053B_ALLOWED_MULTIPLIER_ADDITION_1P5_XTALI
@ VS1053B_DIFF_LEFT_INVERTED
@ VS1053B_DCLK_EDGE_FALLING
@ VS1053B_CLOCK_RANGE_12MHZ_13MHZ
@ VS1053B_PLAY_SPEED_2P0_X
@ VS1053B_PLAY_SPEED_1P0_X
@ VS1053B_PLAY_SPEED_3P0_X
@ VS1053B_IIS_RATE_192KHZ
@ VS1053B_CLOCK_MULTIPLIER_1P0_XTALI
@ VS1053B_CLOCK_MULTIPLIER_2P5_XTALI
@ VS1053B_CLOCK_MULTIPLIER_3P0_XTALI
@ VS1053B_CLOCK_MULTIPLIER_2P0_XTALI
@ VS1053B_CLOCK_MULTIPLIER_3P5_XTALI
@ VS1053B_CLOCK_MULTIPLIER_4P5_XTALI
@ VS1053B_CLOCK_MULTIPLIER_5P0_XTALI
@ VS1053B_CLOCK_MULTIPLIER_4P0_XTALI
uint8_t vs1053b_interface_spi_dat_init(void)
interface spi dat bus init
uint8_t vs1053b_interface_audio_deinit(void)
interface audio deinit
uint8_t vs1053b_interface_spi_dat_write_cmd(uint8_t *buf, uint16_t len)
interface spi dat bus write command
uint8_t vs1053b_interface_spi_cmd_write_address16(uint16_t reg, uint8_t *buf, uint16_t len)
interface spi cmd bus write
void vs1053b_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t vs1053b_interface_spi_cmd_deinit(void)
interface spi cmd bus deinit
void vs1053b_interface_timestamp_read(uint32_t *sec, uint32_t *us)
interface timestamp read
uint8_t vs1053b_interface_spi_cmd_read_address16(uint16_t reg, uint8_t *buf, uint16_t len)
interface spi cmd bus read
uint8_t vs1053b_interface_spi_dat_deinit(void)
interface spi dat bus deinit
void vs1053b_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t vs1053b_interface_spi_cmd_init(void)
interface spi cmd bus init
uint8_t vs1053b_interface_dreq_gpio_deinit(void)
interface dreq gpio deinit
uint8_t vs1053b_interface_dreq_gpio_init(void)
interface dreq gpio init
uint8_t vs1053b_interface_audio_init(uint8_t type, char *name, uint32_t *size)
interface audio init
uint8_t vs1053b_interface_dreq_gpio_read(uint8_t *data)
interface dreq gpio read
uint8_t vs1053b_interface_reset_gpio_write(uint8_t data)
interface reset gpio write
void vs1053b_interface_receive_callback(uint8_t type, uint32_t cur_pos)
interface receive callback
uint8_t vs1053b_interface_reset_gpio_init(void)
interface reset gpio init
uint8_t vs1053b_interface_reset_gpio_deinit(void)
interface reset gpio deinit
uint8_t vs1053b_interface_audio_write(uint32_t addr, uint16_t size, uint8_t *buffer)
interface audio write
uint8_t vs1053b_interface_audio_read(uint32_t addr, uint16_t size, uint8_t *buffer)
interface audio read
#define DRIVER_VS1053B_LINK_AUDIO_READ(HANDLE, FUC)
link audio_read function
#define DRIVER_VS1053B_LINK_RESET_GPIO_DEINIT(HANDLE, FUC)
link reset_gpio_deinit function
#define DRIVER_VS1053B_LINK_DREQ_GPIO_READ(HANDLE, FUC)
link dreq_gpio_read function
#define DRIVER_VS1053B_LINK_RESET_GPIO_WRITE(HANDLE, FUC)
link reset_gpio_write function
#define DRIVER_VS1053B_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_VS1053B_LINK_DREQ_GPIO_DEINIT(HANDLE, FUC)
link dreq_gpio_deinit function
#define DRIVER_VS1053B_LINK_AUDIO_DEINIT(HANDLE, FUC)
link audio_deinit function
#define DRIVER_VS1053B_LINK_SPI_CMD_INIT(HANDLE, FUC)
link spi_cmd_init function
#define DRIVER_VS1053B_LINK_SPI_WRITE_ADDRESS16(HANDLE, FUC)
link spi_cmd_write_address16 function
#define DRIVER_VS1053B_LINK_SPI_DAT_WRITE_CMD(HANDLE, FUC)
link spi_dat_write_cmd function
#define DRIVER_VS1053B_LINK_SPI_READ_ADDRESS16(HANDLE, FUC)
link spi_cmd_read_address16 function
#define DRIVER_VS1053B_LINK_SPI_CMD_DEINIT(HANDLE, FUC)
link spi_cmd_deinit function
#define DRIVER_VS1053B_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
#define DRIVER_VS1053B_LINK_INIT(HANDLE, STRUCTURE)
initialize vs1053b_handle_t structure
#define DRIVER_VS1053B_LINK_SPI_DAT_INIT(HANDLE, FUC)
link spi_dat_init function
#define DRIVER_VS1053B_LINK_AUDIO_INIT(HANDLE, FUC)
link audio_init function
#define DRIVER_VS1053B_LINK_SPI_DAT_DEINIT(HANDLE, FUC)
link spi_dat_deinit function
#define DRIVER_VS1053B_LINK_DREQ_GPIO_INIT(HANDLE, FUC)
link dreq_gpio_init function
#define DRIVER_VS1053B_LINK_AUDIO_WRITE(HANDLE, FUC)
link audio_write function
#define DRIVER_VS1053B_LINK_TIMESTAMP_READ(HANDLE, FUC)
link timestamp_read function
#define DRIVER_VS1053B_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_VS1053B_LINK_RESET_GPIO_INIT(HANDLE, FUC)
link reset_gpio_init function
uint8_t vs1053b_register_test(void)
register test
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v