Go to the documentation of this file.
38 #include "mikrosdk_version.h"
41 #if mikroSDK_GET_VERSION < 20800ul
42 #include "rcu_delays.h"
48 #include "drv_digital_out.h"
49 #include "drv_digital_in.h"
50 #include "drv_i2c_master.h"
62 #define EVC_MAP_MIKROBUS( cfg, mikrobus ) \
63 cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
64 cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA )
71 #define EVC_RETVAL uint8_t
74 #define EVC_INIT_ERROR 0xFF
81 #define EVC_SET_VOLUME_1dB 0x11
82 #define EVC_SET_VOLUME_10dB 0x01
83 #define EVC_SET_VOLUME_20dB 0x02
84 #define EVC_SET_VOLUME_2dB 0x12
85 #define EVC_SET_VOLUME_30dB 0x03
86 #define EVC_SET_VOLUME_3dB 0x13
87 #define EVC_SET_VOLUME_40dB 0x04
88 #define EVC_SET_VOLUME_4dB 0x14
89 #define EVC_SET_VOLUME_50dB 0x05
90 #define EVC_SET_VOLUME_5dB 0x15
91 #define EVC_SET_VOLUME_60dB 0x06
92 #define EVC_SET_VOLUME_6dB 0x16
93 #define EVC_SET_VOLUME_70dB 0x07
94 #define EVC_SET_VOLUME_7dB 0x17
95 #define EVC_SET_VOLUME_0dB 0x00
96 #define EVC_SET_VOLUME_8dB 0x18
97 #define EVC_SET_VOLUME_9dB 0x19
104 #define EVC_CHANNEL_1 0x80
105 #define EVC_CHANNEL_2 0x40
106 #define EVC_CHANNEL_3 0x00
107 #define EVC_CHANNEL_4 0x20
108 #define EVC_CHANNEL_5 0x60
109 #define EVC_CHANNEL_6 0xA0
110 #define EVC_ALL_CHANNEL 0xC0
117 #define EVC_ALL_CHANNEL_MUTE 0xF9
118 #define EVC_ALL_CHANNEL_UNMUTE 0xF8
125 #define EVC_CLEAR_ALL 0xC0
132 #define EVC_DEVICE_SLAVE_ADDRESS_01 0x42
133 #define EVC_DEVICE_SLAVE_ADDRESS_00 0x40
134 #define EVC_DEVICE_SLAVE_ADDRESS_10 0x44
135 #define EVC_DEVICE_SLAVE_ADDRESS_11 0x46
Click configuration structure definition.
Definition: evc.h:169
uint32_t i2c_speed
Definition: evc.h:177
pin_name_t sda
Definition: evc.h:173
Click ctx object definition.
Definition: evc.h:149
void mute(evc_t *ctx)
Definition: main.c:84
void evc_generic_write(evc_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
Generic write function.
uint8_t mute_flag
Definition: evc.h:157
EVC_RETVAL evc_init(evc_t *ctx, evc_cfg_t *cfg)
Initialization function.
pin_name_t scl
Definition: evc.h:172
uint8_t play_cfg_flag
Definition: evc.h:180
uint8_t slave_address
Definition: evc.h:156
uint8_t mute_cfg_flag
Definition: evc.h:179
void evc_set_volume_part(evc_t *ctx, uint8_t channel, uint8_t volume1, uint8_t volume2)
Set volume for the channel.
uint8_t test_cfg_flag
Definition: evc.h:183
uint8_t play_flag
Definition: evc.h:158
int8_t volume
Definition: evc.h:159
int8_t cfg_volume
Definition: evc.h:181
uint8_t i2c_address
Definition: evc.h:178
#define EVC_RETVAL
Definition: evc.h:71
i2c_master_t i2c
Definition: evc.h:152
void evc_set_volume_full(evc_t *ctx, uint8_t channel, int8_t volume)
Set volume for the channel.
void evc_generic_read(evc_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
Generic read function.
uint8_t channel
Definition: evc.h:160
void evc_default_cfg(evc_t *ctx)
Click Default Configuration function.
uint8_t cfg_channel
Definition: evc.h:182
void evc_cfg_setup(evc_cfg_t *cfg)
Config Object Initialization function.
void evc_clear(evc_t *ctx)
Clear register.
void evc_mute(evc_t *ctx, uint8_t mute)
Mute and Unmute.
uint8_t test_flag
Definition: evc.h:161