LibDriver WT588E02B
Loading...
Searching...
No Matches
driver_wt588e02b_basic.c
Go to the documentation of this file.
1
36
38
39static wt588e02b_handle_t gs_handle;
40
49{
50 uint8_t res;
51
52 /* link driver */
72
73 /* init */
74 res = wt588e02b_init(&gs_handle);
75 if (res != 0)
76 {
77 wt588e02b_interface_debug_print("wt588e02b: init failed.\n");
78
79 return 1;
80 }
81
82 /* set default vol */
84 if (res != 0)
85 {
86 wt588e02b_interface_debug_print("wt588e02b: set vol failed.\n");
87 (void)wt588e02b_deinit(&gs_handle);
88
89 return 1;
90 }
91
92 return 0;
93}
94
103{
104 uint8_t res;
105 wt588e02b_bool_t enable;
106
107 /* check busy */
108 enable = WT588E02B_BOOL_TRUE;
109 while (enable == WT588E02B_BOOL_TRUE)
110 {
111 /* delay 100ms */
113
114 res = wt588e02b_check_busy(&gs_handle, &enable);
115 if (res != 0)
116 {
117 return 1;
118 }
119 }
120
121 return 0;
122}
123
132uint8_t wt588e02b_basic_play(uint8_t ind)
133{
134 uint8_t res;
135
136 /* stop */
137 res = wt588e02b_stop(&gs_handle);
138 if (res != 0)
139 {
140 return 1;
141 }
142
143 /* delay 100ms */
145
146 /* play */
147 res = wt588e02b_play(&gs_handle, ind);
148 if (res != 0)
149 {
150 return 1;
151 }
152
153 return 0;
154}
155
165uint8_t wt588e02b_basic_play_list(uint8_t *list, uint8_t len)
166{
167 uint8_t res;
168
169 /* stop */
170 res = wt588e02b_stop(&gs_handle);
171 if (res != 0)
172 {
173 return 1;
174 }
175
176 /* delay 100ms */
178
179 /* play list */
180 res = wt588e02b_play_list(&gs_handle, list, len);
181 if (res != 0)
182 {
183 return 1;
184 }
185
186 return 0;
187}
188
197uint8_t wt588e02b_basic_set_vol(uint8_t vol)
198{
199 uint8_t res;
200
201 /* set vol */
202 res = wt588e02b_set_vol(&gs_handle, vol);
203 if (res != 0)
204 {
205 return 1;
206 }
207
208 return 0;
209}
210
219uint8_t wt588e02b_basic_play_loop(uint8_t ind)
220{
221 uint8_t res;
222
223 /* stop */
224 res = wt588e02b_stop(&gs_handle);
225 if (res != 0)
226 {
227 return 1;
228 }
229
230 /* delay 100ms */
232
233 /* play loop */
234 res = wt588e02b_play_loop(&gs_handle, ind);
235 if (res != 0)
236 {
237 return 1;
238 }
239
240 return 0;
241}
242
252{
253 uint8_t res;
254
255 /* stop */
256 res = wt588e02b_stop(&gs_handle);
257 if (res != 0)
258 {
259 return 1;
260 }
261
262 /* delay 100ms */
264
265 /* play loop advance */
266 res = wt588e02b_play_loop_advance(&gs_handle, ind);
267 if (res != 0)
268 {
269 return 1;
270 }
271
272 return 0;
273}
274
283{
284 uint8_t res;
285
286 /* stop */
287 res = wt588e02b_stop(&gs_handle);
288 if (res != 0)
289 {
290 return 1;
291 }
292
293 /* delay 100ms */
295
296 /* play loop all */
297 res = wt588e02b_play_loop_all(&gs_handle);
298 if (res != 0)
299 {
300 return 1;
301 }
302
303 return 0;
304}
305
314{
315 uint8_t res;
316
317 /* stop */
318 res = wt588e02b_stop(&gs_handle);
319 if (res != 0)
320 {
321 return 1;
322 }
323
324 return 0;
325}
326
336uint8_t wt588e02b_basic_update(uint8_t ind, char *path)
337{
338 uint8_t res;
339
340 /* update */
341 res = wt588e02b_update(&gs_handle, ind, path);
342 if (res != 0)
343 {
344 return 1;
345 }
346
347 return 0;
348}
349
358uint8_t wt588e02b_basic_update_all(char *path)
359{
360 uint8_t res;
361
362 /* update all */
363 res = wt588e02b_update_all(&gs_handle, path);
364 if (res != 0)
365 {
366 return 1;
367 }
368
369 return 0;
370}
371
380{
381 uint8_t res;
382
383 /* deinit */
384 res = wt588e02b_deinit(&gs_handle);
385 if (res != 0)
386 {
387 return 1;
388 }
389
390 return 0;
391}
driver wt588e02b basic header file
uint8_t wt588e02b_update(wt588e02b_handle_t *handle, uint8_t ind, char *path)
update audio
struct wt588e02b_handle_s wt588e02b_handle_t
wt588e02b handle structure definition
uint8_t wt588e02b_play(wt588e02b_handle_t *handle, uint8_t ind)
play audio
uint8_t wt588e02b_play_loop(wt588e02b_handle_t *handle, uint8_t ind)
play loop
uint8_t wt588e02b_deinit(wt588e02b_handle_t *handle)
deinit the chip
uint8_t wt588e02b_check_busy(wt588e02b_handle_t *handle, wt588e02b_bool_t *enable)
check chip busy
uint8_t wt588e02b_play_loop_advance(wt588e02b_handle_t *handle, uint8_t ind)
play loop advance
wt588e02b_bool_t
wt588e02b bool enumeration definition
uint8_t wt588e02b_set_vol(wt588e02b_handle_t *handle, uint8_t vol)
set the volume
uint8_t wt588e02b_init(wt588e02b_handle_t *handle)
initialize the chip
uint8_t wt588e02b_play_loop_all(wt588e02b_handle_t *handle)
play loop all
uint8_t wt588e02b_play_list(wt588e02b_handle_t *handle, uint8_t *list, uint8_t len)
play list
uint8_t wt588e02b_update_all(wt588e02b_handle_t *handle, char *path)
update all audio
uint8_t wt588e02b_stop(wt588e02b_handle_t *handle)
stop audio
@ WT588E02B_BOOL_TRUE
uint8_t wt588e02b_basic_update(uint8_t ind, char *path)
basic example update
uint8_t wt588e02b_basic_play_list(uint8_t *list, uint8_t len)
basic example play list
uint8_t wt588e02b_basic_play_loop_advance(uint8_t ind)
basic example play loop advance
uint8_t wt588e02b_basic_stop(void)
basic example stop
uint8_t wt588e02b_basic_play_loop(uint8_t ind)
basic example play loop
uint8_t wt588e02b_basic_set_vol(uint8_t vol)
basic example set volume
uint8_t wt588e02b_basic_poll(void)
basic example poll
#define WT588E02B_BASIC_DEFAULT_VOLUME
wt588e02b basic example default definition
uint8_t wt588e02b_basic_init(void)
basic example init
uint8_t wt588e02b_basic_play_loop_all(void)
basic example play loop all
uint8_t wt588e02b_basic_deinit(void)
basic example deinit
uint8_t wt588e02b_basic_update_all(char *path)
basic example update all
uint8_t wt588e02b_basic_play(uint8_t ind)
basic example play
void wt588e02b_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t wt588e02b_interface_bin_read(uint32_t addr, uint16_t size, uint8_t *buffer)
interface bin read
void wt588e02b_interface_delay_us(uint32_t us)
interface delay us
uint8_t wt588e02b_interface_sclk_gpio_init(void)
interface sclk gpio init
uint8_t wt588e02b_interface_cs_gpio_init(void)
interface cs gpio init
uint8_t wt588e02b_interface_miso_gpio_deinit(void)
interface miso gpio deinit
uint8_t wt588e02b_interface_cs_gpio_deinit(void)
interface cs gpio init
uint8_t wt588e02b_interface_cs_gpio_write(uint8_t data)
interface cs gpio write
uint8_t wt588e02b_interface_sclk_gpio_deinit(void)
interface sclk gpio deinit
uint8_t wt588e02b_interface_miso_gpio_init(void)
interface miso gpio init
uint8_t wt588e02b_interface_sclk_gpio_write(uint8_t data)
interface sclk gpio write
uint8_t wt588e02b_interface_mosi_gpio_init(void)
interface mosi gpio init
uint8_t wt588e02b_interface_mosi_gpio_deinit(void)
interface mosi gpio deinit
void wt588e02b_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t wt588e02b_interface_miso_gpio_read(uint8_t *data)
interface miso_gpio_read
uint8_t wt588e02b_interface_mosi_gpio_write(uint8_t data)
interface mosi gpio write
uint8_t wt588e02b_interface_bin_read_deinit(void)
interface bin read deinit
uint8_t wt588e02b_interface_bin_read_init(char *name, uint32_t *size)
interface bin read init