38 #ifndef DRIVER_SYN6288_H
39 #define DRIVER_SYN6288_H
256 #define DRIVER_SYN6288_LINK_INIT(HANDLE, STRUCTURE) memset(HANDLE, 0, sizeof(STRUCTURE))
264 #define DRIVER_SYN6288_LINK_UART_INIT(HANDLE, FUC) (HANDLE)->uart_init = FUC
272 #define DRIVER_SYN6288_LINK_UART_DEINIT(HANDLE, FUC) (HANDLE)->uart_deinit = FUC
280 #define DRIVER_SYN6288_LINK_UART_READ(HANDLE, FUC) (HANDLE)->uart_read = FUC
288 #define DRIVER_SYN6288_LINK_UART_WRITE(HANDLE, FUC) (HANDLE)->uart_write = FUC
296 #define DRIVER_SYN6288_LINK_UART_FLUSH(HANDLE, FUC) (HANDLE)->uart_flush = FUC
304 #define DRIVER_SYN6288_LINK_DELAY_MS(HANDLE, FUC) (HANDLE)->delay_ms = FUC
312 #define DRIVER_SYN6288_LINK_DEBUG_PRINT(HANDLE, FUC) (HANDLE)->debug_print = FUC
uint8_t syn6288_get_mode(syn6288_handle_t *handle, syn6288_mode_t *mode)
get the chip mode
uint8_t syn6288_set_background_volume(syn6288_handle_t *handle, uint8_t volume)
set the synthesis background volume
syn6288_mode_t
syn6288 mode enumeration definition
uint8_t syn6288_set_baud_rate(syn6288_handle_t *handle, syn6288_baud_rate_t rate)
set the baud rate
syn6288_baud_rate_t
syn6288 baud rate enumeration definition
uint8_t syn6288_get_background_volume(syn6288_handle_t *handle, uint8_t *volume)
get the chip synthesis background volume
uint8_t syn6288_get_synthesis_volume(syn6288_handle_t *handle, uint8_t *volume)
get the chip synthesis volume
uint8_t syn6288_set_synthesis_volume(syn6288_handle_t *handle, uint8_t volume)
set the chip synthesis volume
uint8_t syn6288_get_baud_rate(syn6288_handle_t *handle, syn6288_baud_rate_t *rate)
get the baud rate
uint8_t syn6288_set_synthesis_speed(syn6288_handle_t *handle, uint8_t speed)
set the synthesis speed
uint8_t syn6288_get_synthesis_speed(syn6288_handle_t *handle, uint8_t *speed)
get the synthesis speed
uint8_t syn6288_set_mode(syn6288_handle_t *handle, syn6288_mode_t mode)
set the chip mode
@ SYN6288_MODE_BACKGROUND_3
@ SYN6288_MODE_BACKGROUND_9
@ SYN6288_MODE_BACKGROUND_11
@ SYN6288_MODE_BACKGROUND_4
@ SYN6288_MODE_BACKGROUND_6
@ SYN6288_MODE_BACKGROUND_7
@ SYN6288_MODE_BACKGROUND_13
@ SYN6288_MODE_BACKGROUND_1
@ SYN6288_MODE_BACKGROUND_12
@ SYN6288_MODE_BACKGROUND_2
@ SYN6288_MODE_BACKGROUND_10
@ SYN6288_MODE_BACKGROUND_14
@ SYN6288_MODE_BACKGROUND_8
@ SYN6288_MODE_BACKGROUND_15
@ SYN6288_MODE_BACKGROUND_5
@ SYN6288_BAUD_RATE_38400_BPS
@ SYN6288_BAUD_RATE_9600_BPS
@ SYN6288_BAUD_RATE_19200_BPS
uint8_t syn6288_init(syn6288_handle_t *handle)
initialize the chip
syn6288_type_t
syn6288 type enumeration definition
uint8_t syn6288_power_down(syn6288_handle_t *handle)
power down the chip
uint8_t syn6288_synthesis_sound(syn6288_handle_t *handle, syn6288_sound_t sound)
synthesis the sound
uint8_t syn6288_stop(syn6288_handle_t *handle)
stop the chip
syn6288_ring_t
syn6288 ring enumeration definition
syn6288_status_t
syn6288 status enumeration definition
syn6288_sound_t
syn6288 sound enumeration definition
uint8_t syn6288_get_status(syn6288_handle_t *handle, syn6288_status_t *status)
get the current status
uint8_t syn6288_get_text_type(syn6288_handle_t *handle, syn6288_type_t *type)
get the chip text type
uint8_t syn6288_set_text_type(syn6288_handle_t *handle, syn6288_type_t type)
set the chip text type
uint8_t syn6288_synthesis_message(syn6288_handle_t *handle, syn6288_message_t message)
synthesis the message
uint8_t syn6288_deinit(syn6288_handle_t *handle)
close the chip
uint8_t syn6288_synthesis_text(syn6288_handle_t *handle, char *text)
synthesis the test
struct syn6288_handle_s syn6288_handle_t
syn6288 handle structure definition
uint8_t syn6288_resume(syn6288_handle_t *handle)
resume the chip
syn6288_message_t
syn6288 message enumeration definition
uint8_t syn6288_synthesis_ring(syn6288_handle_t *handle, syn6288_ring_t ring)
synthesis the ring
uint8_t syn6288_info(syn6288_info_t *info)
get chip's information
struct syn6288_info_s syn6288_info_t
syn6288 information structure definition
uint8_t syn6288_pause(syn6288_handle_t *handle)
pause the chip
uint8_t syn6288_set_command(syn6288_handle_t *handle, char *command)
send the command to the chip
syn6288 handle structure definition
uint8_t(* uart_flush)(void)
uint8_t(* uart_write)(uint8_t *buf, uint16_t len)
void(* delay_ms)(uint32_t ms)
uint8_t(* uart_deinit)(void)
void(* debug_print)(const char *const fmt,...)
uint8_t background_volume
uint16_t(* uart_read)(uint8_t *buf, uint16_t len)
uint8_t(* uart_init)(void)
syn6288 information structure definition
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v