57 #if defined(__cplusplus)
uint32_t hpm_stat_t
Definition: hpm_common.h:123
hpm_stat_t wm8978_set_out_mute(wm8978_context_t *control, wm8978_out_channel_t channel, bool mute)
WM8979 set out mute.
Definition: hpm_wm8978.c:90
input_channel_flag
Definition: hpm_wm8978.h:33
@ mic_left_on
Definition: hpm_wm8978.h:35
@ input_off
Definition: hpm_wm8978.h:34
@ line_on
Definition: hpm_wm8978.h:37
@ dac_on
Definition: hpm_wm8978.h:39
@ aux_on
Definition: hpm_wm8978.h:38
@ mic_right_on
Definition: hpm_wm8978.h:36
@ adc_on
Definition: hpm_wm8978.h:40
enum output_channel_flag output_channel_flag_t
hpm_stat_t wm8978_cfg_audio_interface(wm8978_context_t *control, wm8978_audio_interface_t standard, wm8978_word_length_t word_len)
Configuring the audio interface of WM8978.
Definition: hpm_wm8978.c:158
hpm_stat_t wm8978_get_out_volume(wm8978_context_t *control, wm8978_out_channel_t channel, uint8_t *volume)
WM8979 read out volume function.
Definition: hpm_wm8978.c:73
output_channel_flag
Definition: hpm_wm8978.h:44
@ output_off
Definition: hpm_wm8978.h:45
@ out_3_4_on
Definition: hpm_wm8978.h:49
@ earphone_left_on
Definition: hpm_wm8978.h:46
@ spk_on
Definition: hpm_wm8978.h:48
@ earphone_right_on
Definition: hpm_wm8978.h:47
hpm_stat_t wm8978_reset(wm8978_context_t *control)
Write register to WM8978 using I2C.
Definition: hpm_wm8978.c:43
hpm_stat_t wm8978_modify_reg(wm8978_context_t *control, uint8_t reg, uint16_t mask, uint16_t val)
Modify some bits in the register using I2C.
Definition: hpm_wm8978.c:389
hpm_stat_t wm8978_write_reg(wm8978_context_t *control, uint8_t reg, uint16_t val)
Write register to WM8978 using I2C.
Definition: hpm_wm8978.c:369
hpm_stat_t wm8979_init(wm8978_context_t *control)
WM8979 initialize function.
Definition: hpm_wm8978.c:24
hpm_stat_t wm8978_power_down(wm8978_context_t *control)
WM8979 enter power down mode.
Definition: hpm_wm8978.c:153
enum wm8978_audio_interface wm8978_audio_interface_t
hpm_stat_t wm8978_ctrl_gpio1(wm8978_context_t *control, bool value)
Control the GPIO1 pin of WM8978 to output high or low.
Definition: hpm_wm8978.c:356
wm8978_word_length
Definition: hpm_wm8978.h:21
@ wm8978_24bits_length
Definition: hpm_wm8978.h:24
@ wm8978_32bits_length
Definition: hpm_wm8978.h:25
@ wm8978_20bits_length
Definition: hpm_wm8978.h:23
@ wm8978_16bits_length
Definition: hpm_wm8978.h:22
hpm_stat_t wm8978_set_line_gain(wm8978_context_t *control, uint8_t gain)
WM8979 set the gain of the Line input channel.
Definition: hpm_wm8978.c:134
hpm_stat_t wm8978_set_out_volume(wm8978_context_t *control, wm8978_out_channel_t channel, uint8_t volume)
WM8979 set out volume function.
Definition: hpm_wm8978.c:50
enum wm8978_word_length wm8978_word_length_t
wm8978_out_channel
Definition: hpm_wm8978.h:28
@ wm8978_out1_channel
Definition: hpm_wm8978.h:29
@ wm8978_out2_channel
Definition: hpm_wm8978.h:30
hpm_stat_t wm8978_notch_filter(wm8978_context_t *control, uint16_t nfa0, uint16_t nfa1)
setting the Notch Filter for WM8978
Definition: hpm_wm8978.c:338
enum wm8978_out_channel wm8978_out_channel_t
wm8978_audio_interface
Definition: hpm_wm8978.h:14
@ wm8978_philips_i2s
Definition: hpm_wm8978.h:17
@ wm8978_left_justified
Definition: hpm_wm8978.h:16
@ wm8978_pcm_mode
Definition: hpm_wm8978.h:18
@ wm8978_right_justified
Definition: hpm_wm8978.h:15
enum input_channel_flag input_channel_flags_t
hpm_stat_t wm8978_set_mic_gain(wm8978_context_t *control, uint8_t gain)
WM8979 set gain of mic.
Definition: hpm_wm8978.c:123
hpm_stat_t wm8978_read_reg(wm8978_context_t *control, uint8_t reg, uint16_t *val)
Read register from WM8978 using I2C.
Definition: hpm_wm8978.c:382
hpm_stat_t wm8978_cfg_audio_channel(wm8978_context_t *control, uint8_t in_flags, uint8_t out_flags)
Configure wm8978 audio channel.
Definition: hpm_wm8978.c:168
Definition: hpm_i2c_regs.h:12
Definition: hpm_wm8978.h:52
I2C_Type * ptr
Definition: hpm_wm8978.h:53
uint8_t device_address
Definition: hpm_wm8978.h:54