39#ifdef PREINIT_SUPPORTED
43#ifdef MikroCCoreVersion
44 #if MikroCCoreVersion >= 1
49#include "drv_digital_out.h"
50#include "drv_digital_in.h"
73#define BTAUDIO4_CMD_ADVERTISING "ADVERTISING"
74#define BTAUDIO4_CMD_AVRCP_META_DATA "AVRCP_META_DATA"
75#define BTAUDIO4_CMD_AT "AT"
76#define BTAUDIO4_CMD_BATTERY_STATUS "BATTERY_STATUS"
77#define BTAUDIO4_CMD_BLE_GET_CHAR "BLE_GET_CHAR"
78#define BTAUDIO4_CMD_BCAST_REPORT "BCAST_REPORT"
79#define BTAUDIO4_CMD_BLE_GET_DES "BLE_GET_DES"
80#define BTAUDIO4_CMD_BLE_GET_SERV "BLE_GET_SERV"
81#define BTAUDIO4_CMD_BLE_INDICATION "BLE_INDICATION"
82#define BTAUDIO4_CMD_BLE_NOTIF "BLE_NOTIF"
83#define BTAUDIO4_CMD_BLE_NOTIFICATION "BLE_NOTIFICATION"
84#define BTAUDIO4_CMD_BLE_READ "BLE_READ"
85#define BTAUDIO4_CMD_BLE_READ_RES "BLE_READ_RES"
86#define BTAUDIO4_CMD_BLE_SET_DB "BLE_SET_DB"
87#define BTAUDIO4_CMD_BLE_WRITE "BLE_WRITE"
88#define BTAUDIO4_CMD_BROADCAST "BROADCAST"
89#define BTAUDIO4_CMD_BROADCODE "BROADCODE"
90#define BTAUDIO4_CMD_CALL "CALL"
91#define BTAUDIO4_CMD_CLOSE "CLOSE"
92#define BTAUDIO4_CMD_CONFIG "CONFIG"
93#define BTAUDIO4_CMD_CONNECTABLE "CONNECTABLE"
94#define BTAUDIO4_CMD_DISCOVERABLE "DISCOVERABLE"
95#define BTAUDIO4_CMD_ENTER_DATA_MODE "ENTER_DATA_MODE"
96#define BTAUDIO4_CMD_HELP "HELP"
97#define BTAUDIO4_CMD_GET "GET"
98#define BTAUDIO4_CMD_INQUIRY "INQUIRY"
99#define BTAUDIO4_CMD_LIST "LIST"
100#define BTAUDIO4_CMD_MICBIAS "MICBIAS"
101#define BTAUDIO4_CMD_MUSIC "MUSIC"
102#define BTAUDIO4_CMD_NAME "NAME"
103#define BTAUDIO4_CMD_OPEN "OPEN"
104#define BTAUDIO4_CMD_PAIR "PAIR"
105#define BTAUDIO4_CMD_PASSKEY "PASSKEY"
106#define BTAUDIO4_CMD_PIO "PIO"
107#define BTAUDIO4_CMD_POWER "POWER"
108#define BTAUDIO4_CMD_RESET "RESET"
109#define BTAUDIO4_CMD_RESTORE "RESTORE"
110#define BTAUDIO4_CMD_ROUTE "ROUTE"
111#define BTAUDIO4_CMD_RSSI "RSSI"
112#define BTAUDIO4_CMD_QUALITY "QUALITY"
113#define BTAUDIO4_CMD_SCAN "SCAN"
114#define BTAUDIO4_CMD_SCAN_UNI "SCAN_UNI"
115#define BTAUDIO4_CMD_SEND "SEND"
116#define BTAUDIO4_CMD_SEND_RAW "SEND_RAW"
117#define BTAUDIO4_CMD_SET "SET"
118#define BTAUDIO4_CMD_SRRD "SRRD"
119#define BTAUDIO4_CMD_STATUS "STATUS"
120#define BTAUDIO4_CMD_UNPAIR "UNPAIR"
121#define BTAUDIO4_CMD_TONES "TONES"
122#define BTAUDIO4_CMD_VOLUME "VOLUME"
123#define BTAUDIO4_CMD_VERSION "VERSION"
124#define BTAUDIO4_CMD_WRITE "WRITE"
130#define BTAUDIO4_PARAM_AUDIO "AUDIO"
131#define BTAUDIO4_PARAM_AUDIO_DIGITAL "AUDIO_DIGITAL"
132#define BTAUDIO4_PARAM_AUDIO_ANALOG "AUDIO_ANALOG"
133#define BTAUDIO4_PARAM_AUTOCONN "AUTOCONN"
134#define BTAUDIO4_PARAM_AUTO_DATA "AUTO_DATA"
135#define BTAUDIO4_PARAM_BATT_CONFIG "BATT_CONFIG"
136#define BTAUDIO4_PARAM_BCAST_CONFIG "BCAST_CONFIG"
137#define BTAUDIO4_PARAM_BLE_CONFIG "BLE_CONFIG"
138#define BTAUDIO4_PARAM_BT_CONFIG "BT_CONFIG"
139#define BTAUDIO4_PARAM_CMD_TO "CMD_TO"
140#define BTAUDIO4_PARAM_COD "COD"
141#define BTAUDIO4_PARAM_CODEC "CODEC"
142#define BTAUDIO4_PARAM_DEEP_SLEEP "DEEP_SLEEP"
143#define BTAUDIO4_PARAM_GPIO_CONFIG "GPIO_CONFIG"
144#define BTAUDIO4_PARAM_HFP_CONFIG "HFP_CONFIG"
145#define BTAUDIO4_PARAM_LOCAL_ADDR "LOCAL_ADDR"
146#define BTAUDIO4_PARAM_NAME "NAME"
147#define BTAUDIO4_PARAM_NAME_BCAST "NAME_BCAST"
148#define BTAUDIO4_PARAM_NAME_SHORT "NAME_SHORT"
149#define BTAUDIO4_PARAM_MUSIC_META_DATA "MUSIC_META_DATA"
150#define BTAUDIO4_PARAM_POWERMAX "POWERMAX"
151#define BTAUDIO4_PARAM_PROFILES "PROFILES"
152#define BTAUDIO4_PARAM_SSP_CAPS "SSP_CAPS"
153#define BTAUDIO4_PARAM_SPP_UUID "SPP_UUID"
154#define BTAUDIO4_PARAM_UART_CONFIG "UART_CONFIG"
155#define BTAUDIO4_PARAM_UCAST_CONFIG "UCAST_CONFIG"
156#define BTAUDIO4_PARAM_UI_CONFIG "UI_CONFIG"
157#define BTAUDIO4_PARAM_VOLUME_CONTROL "VOLUME_CONTROL"
163#define BTAUDIO4_NOTIF_A2DP_STREAM_START "A2DP_STREAM_START"
164#define BTAUDIO4_NOTIF_A2DP_STREAM_SUSPEND "A2DP_STREAM_SUSPEND"
165#define BTAUDIO4_NOTIF_ABS_VOL "ABS_VOL"
166#define BTAUDIO4_NOTIF_AT "AT"
167#define BTAUDIO4_NOTIF_AVRCP_BACKWARD "AVRCP_BACKWARD"
168#define BTAUDIO4_NOTIF_AVRCP_FORWARD "AVRCP_FORWARD"
169#define BTAUDIO4_NOTIF_AVRCP_MEDIA "AVRCP_MEDIA"
170#define BTAUDIO4_NOTIF_AVRCP_PAUSE "AVRCP_PAUSE"
171#define BTAUDIO4_NOTIF_AVRCP_PLAY "AVRCP_PLAY"
172#define BTAUDIO4_NOTIF_AVRCP_STOP "AVRCP_STOP"
173#define BTAUDIO4_NOTIF_BLE_INDICATION "BLE_INDICATION"
174#define BTAUDIO4_NOTIF_BLE_NOTIFICATION "BLE_NOTIFICATION"
175#define BTAUDIO4_NOTIF_BLE_READ "BLE_READ"
176#define BTAUDIO4_NOTIF_BLE_WRITE "BLE_WRITE"
177#define BTAUDIO4_NOTIF_CALL_ACTIVE "CALL_ACTIVE"
178#define BTAUDIO4_NOTIF_CALL_DIAL "CALL_DIAL"
179#define BTAUDIO4_NOTIF_CALL_END "CALL_END"
180#define BTAUDIO4_NOTIF_CALL_INCOMING "CALL_INCOMING"
181#define BTAUDIO4_NOTIF_CALL_OUTGOING "CALL_OUTGOING"
182#define BTAUDIO4_NOTIF_CLOSE_OK "CLOSE_OK"
183#define BTAUDIO4_NOTIF_ERROR "ERROR"
184#define BTAUDIO4_NOTIF_LINK_LOSS "LINK_LOSS"
185#define BTAUDIO4_NOTIF_OPEN_OK "OPEN_OK"
186#define BTAUDIO4_NOTIF_OPEN_ERROR "OPEN_ERROR"
187#define BTAUDIO4_NOTIF_PAIR_ERROR "PAIR_ERROR"
188#define BTAUDIO4_NOTIF_PAIR_OK "PAIR_OK"
189#define BTAUDIO4_NOTIF_PAIR_PASSKEY "PAIR_PASSKEY"
190#define BTAUDIO4_NOTIF_PAIR_PENDING "PAIR_PENDING"
191#define BTAUDIO4_NOTIF_RECV "RECV"
192#define BTAUDIO4_NOTIF_SCO_OPEN "SCO_OPEN"
193#define BTAUDIO4_NOTIF_SCO_CLOSE "SCO_CLOSE"
199#define BTAUDIO4_RSP_OK "OK"
200#define BTAUDIO4_RSP_ERROR "ERROR"
201#define BTAUDIO4_RSP_READY "Ready"
208#define BTAUDIO4_TX_DRV_BUFFER_SIZE 150
209#define BTAUDIO4_RX_DRV_BUFFER_SIZE 1000
227#define BTAUDIO4_MAP_MIKROBUS( cfg, mikrobus ) \
228 cfg.tx_pin = MIKROBUS( mikrobus, MIKROBUS_TX ); \
229 cfg.rx_pin = MIKROBUS( mikrobus, MIKROBUS_RX ); \
230 cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
231 cfg.cts = MIKROBUS( mikrobus, MIKROBUS_CS ); \
232 cfg.rts = MIKROBUS( mikrobus, MIKROBUS_INT );
btaudio4_return_value_t
BT Audio 4 Click return value data.
Definition btaudio4.h:289
@ BTAUDIO4_ERROR_TIMEOUT
Definition btaudio4.h:292
@ BTAUDIO4_ERROR_CMD
Definition btaudio4.h:293
@ BTAUDIO4_OK
Definition btaudio4.h:290
@ BTAUDIO4_ERROR
Definition btaudio4.h:291
#define BTAUDIO4_TX_DRV_BUFFER_SIZE
BT Audio 4 driver buffer size.
Definition btaudio4.h:208
#define BTAUDIO4_RX_DRV_BUFFER_SIZE
Definition btaudio4.h:209
void btaudio4_set_rst_pin(btaudio4_t *ctx, uint8_t state)
BT Audio 4 set RST pin function.
err_t btaudio4_generic_write(btaudio4_t *ctx, uint8_t *data_in, uint16_t len)
BT Audio 4 data writing function.
void btaudio4_cmd_run(btaudio4_t *ctx, uint8_t *cmd)
BT Audio 4 cmd run function.
void btaudio4_set_cts_pin(btaudio4_t *ctx, uint8_t state)
BT Audio 4 set CTS pin function.
void btaudio4_reset_device(btaudio4_t *ctx)
BT Audio 4 reset device function.
err_t btaudio4_generic_read(btaudio4_t *ctx, uint8_t *data_out, uint16_t len)
BT Audio 4 data reading function.
void btaudio4_cmd_set(btaudio4_t *ctx, uint8_t *param, uint8_t *value)
BT Audio 4 cmd set function.
uint8_t btaudio4_get_rts_pin(btaudio4_t *ctx)
BT Audio 4 get RTS pin function.
void btaudio4_cfg_setup(btaudio4_cfg_t *cfg)
BT Audio 4 configuration object setup function.
err_t btaudio4_init(btaudio4_t *ctx, btaudio4_cfg_t *cfg)
BT Audio 4 initialization function.
void btaudio4_cmd_get(btaudio4_t *ctx, uint8_t *param)
BT Audio 4 cmd get function.
BT Audio 4 Click configuration object.
Definition btaudio4.h:265
pin_name_t rts
Definition btaudio4.h:273
uint32_t baud_rate
Definition btaudio4.h:276
pin_name_t cts
Definition btaudio4.h:272
bool uart_blocking
Definition btaudio4.h:277
uart_data_bits_t data_bit
Definition btaudio4.h:278
pin_name_t tx_pin
Definition btaudio4.h:268
pin_name_t rx_pin
Definition btaudio4.h:267
uart_stop_bits_t stop_bit
Definition btaudio4.h:280
uart_parity_t parity_bit
Definition btaudio4.h:279
pin_name_t rst
Definition btaudio4.h:271
BT Audio 4 Click context object.
Definition btaudio4.h:242
uint8_t uart_rx_buffer[BTAUDIO4_RX_DRV_BUFFER_SIZE]
Definition btaudio4.h:254
uart_t uart
Definition btaudio4.h:251
digital_in_t rts
Definition btaudio4.h:248
uint8_t uart_tx_buffer[BTAUDIO4_TX_DRV_BUFFER_SIZE]
Definition btaudio4.h:255
digital_out_t rst
Definition btaudio4.h:244
digital_out_t cts
Definition btaudio4.h:245
uint8_t cmd_buffer[BTAUDIO4_TX_DRV_BUFFER_SIZE]
Definition btaudio4.h:256