54 uint8_t timeout_check;
59 uint8_t mask_check[4];
74 char domain[] =
"www.ch9121.com";
313 mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
319 ip[0] = rand() % 0xFF;
320 ip[1] = rand() % 0xFF;
321 ip[2] = rand() % 0xFF;
322 ip[3] = rand() % 0xFF;
336 ip[0], ip[1], ip[2], ip[3]);
355 mask[0] = rand() % 0xFF;
356 mask[1] = rand() % 0xFF;
357 mask[2] = rand() % 0xFF;
358 mask[3] = rand() % 0xFF;
372 mask[0], mask[1], mask[2], mask[3]);
391 ip[0] = rand() % 0xFF;
392 ip[1] = rand() % 0xFF;
393 ip[2] = rand() % 0xFF;
394 ip[3] = rand() % 0xFF;
408 ip[0], ip[1], ip[2], ip[3]);
659 num = rand() % 0xFFFFU;
688 num = rand() % 0xFFFFU;
720 ip[0] = rand() % 0xFF;
721 ip[1] = rand() % 0xFF;
722 ip[2] = rand() % 0xFF;
723 ip[3] = rand() % 0xFF;
752 ip[0] = rand() % 0xFF;
753 ip[1] = rand() % 0xFF;
754 ip[2] = rand() % 0xFF;
755 ip[3] = rand() % 0xFF;
787 num = rand() % 0xFFFFU;
816 num = rand() % 0xFFFFU;
968 timeout = rand() % 0xFF;
997 timeout = rand() % 0xFF;
1096 len = 128 + rand() % 50;
1115 len = 128 + rand() % 50;
1172 ms = (rand() % 10) * 5;
driver ch9121 register test header file
ch9121_parity_t
ch9121 parity enumeration definition
uint8_t ch9121_get_ip(ch9121_handle_t *handle, uint8_t ip[4])
get ip address
uint8_t ch9121_init(ch9121_handle_t *handle)
initialize the chip
ch9121_mode_t
ch9121 mode enumeration definition
uint8_t ch9121_set_uart_baud(ch9121_handle_t *handle, ch9121_port_t port, uint32_t baud)
set uart baud
uint8_t ch9121_set_dhcp(ch9121_handle_t *handle, ch9121_bool_t enable)
enable or disable dhcp
uint8_t ch9121_info(ch9121_info_t *info)
get chip's information
uint8_t ch9121_set_ip(ch9121_handle_t *handle, uint8_t ip[4])
set ip address
uint8_t ch9121_get_gateway(ch9121_handle_t *handle, uint8_t ip[4])
get gateway
uint8_t ch9121_set_disconnect_with_no_rj45(ch9121_handle_t *handle, ch9121_bool_t enable)
enable or disable disconnect with no rj45
uint8_t ch9121_set_uart_flush(ch9121_handle_t *handle, ch9121_port_t port, ch9121_bool_t enable)
enable or disable uart auto flush
uint8_t ch9121_deinit(ch9121_handle_t *handle)
close the chip
uint8_t ch9121_set_source_port_random(ch9121_handle_t *handle, ch9121_port_t port, ch9121_bool_t enable)
enable or disable random source port number
struct ch9121_info_s ch9121_info_t
ch9121 information structure definition
uint8_t ch9121_set_mode(ch9121_handle_t *handle, ch9121_port_t port, ch9121_mode_t mode)
set mode
uint8_t ch9121_get_uart_timeout(ch9121_handle_t *handle, ch9121_port_t port, uint8_t *timeout)
get uart timeout
uint8_t ch9121_uart_timeout_convert_to_data(ch9121_handle_t *handle, uint8_t reg, uint16_t *ms)
convert the register raw data to the offset
struct ch9121_handle_s ch9121_handle_t
ch9121 handle structure definition
uint8_t ch9121_set_dest_ip(ch9121_handle_t *handle, ch9121_port_t port, uint8_t ip[4])
set dest ip
uint8_t ch9121_get_dest_port(ch9121_handle_t *handle, ch9121_port_t port, uint16_t *num)
get dest port
uint8_t ch9121_save_to_eeprom(ch9121_handle_t *handle)
save to eeprom
uint8_t ch9121_get_subnet_mask(ch9121_handle_t *handle, uint8_t mask[4])
get subnet mask
uint8_t ch9121_set_uart_config(ch9121_handle_t *handle, ch9121_port_t port, uint8_t data_bit, ch9121_parity_t parity, uint8_t stop_bit)
set uart config
ch9121_status_t
ch9121 status enumeration definition
uint8_t ch9121_get_dest_ip(ch9121_handle_t *handle, ch9121_port_t port, uint8_t ip[4])
get dest ip
uint8_t ch9121_get_uart_config(ch9121_handle_t *handle, ch9121_port_t port, uint8_t *data_bit, ch9121_parity_t *parity, uint8_t *stop_bit)
get uart config
uint8_t ch9121_uart_timeout_convert_to_register(ch9121_handle_t *handle, uint16_t ms, uint8_t *reg)
convert the uart timeout to the register raw data
uint8_t ch9121_set_subnet_mask(ch9121_handle_t *handle, uint8_t mask[4])
set subnet mask
uint8_t ch9121_set_domain(ch9121_handle_t *handle, char *domain)
set chip domain
uint8_t ch9121_get_uart_baud(ch9121_handle_t *handle, ch9121_port_t port, uint32_t *baud)
get uart baud
uint8_t ch9121_set_uart_timeout(ch9121_handle_t *handle, ch9121_port_t port, uint8_t timeout)
set uart timeout
uint8_t ch9121_set_gateway(ch9121_handle_t *handle, uint8_t ip[4])
set gateway
uint8_t ch9121_set_source_port(ch9121_handle_t *handle, ch9121_port_t port, uint16_t num)
set source port
uint8_t ch9121_set_port2(ch9121_handle_t *handle, ch9121_bool_t enable)
enable or disable uart port2
uint8_t ch9121_get_version(ch9121_handle_t *handle, uint8_t *version)
get version
uint8_t ch9121_set_dest_port(ch9121_handle_t *handle, ch9121_port_t port, uint16_t num)
set dest port
uint8_t ch9121_exit(ch9121_handle_t *handle)
exit
uint8_t ch9121_get_mode(ch9121_handle_t *handle, ch9121_port_t port, ch9121_mode_t *mode)
get mode
uint8_t ch9121_get_status(ch9121_handle_t *handle, ch9121_port_t port, ch9121_status_t *status)
get status
uint8_t ch9121_get_source_port(ch9121_handle_t *handle, ch9121_port_t port, uint16_t *num)
get source port
uint8_t ch9121_set_uart_buffer_length(ch9121_handle_t *handle, ch9121_port_t port, uint32_t len)
set uart buffer length
uint8_t ch9121_get_mac(ch9121_handle_t *handle, uint8_t mac[6])
get chip mac
uint8_t ch9121_interface_cfg_gpio_deinit(void)
interface cfg gpio deinit
void ch9121_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t ch9121_interface_cfg_gpio_write(uint8_t data)
interface cfg gpio write
uint16_t ch9121_interface_uart_read(uint8_t *buf, uint16_t len)
interface uart read
uint8_t ch9121_interface_uart_deinit(void)
interface uart deinit
uint8_t ch9121_interface_uart_flush(void)
interface uart flush
uint8_t ch9121_interface_uart_write(uint8_t *buf, uint16_t len)
interface uart write
uint8_t ch9121_interface_uart_init(void)
interface uart init
void ch9121_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t ch9121_interface_cfg_gpio_init(void)
interface cfg gpio init
uint8_t ch9121_interface_reset_gpio_init(void)
interface reset gpio init
uint8_t ch9121_interface_reset_gpio_write(uint8_t data)
interface reset gpio write
uint8_t ch9121_interface_reset_gpio_deinit(void)
interface reset gpio deinit
#define DRIVER_CH9121_LINK_RESET_GPIO_WRITE(HANDLE, FUC)
link reset_gpio_write function
#define DRIVER_CH9121_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_CH9121_LINK_INIT(HANDLE, STRUCTURE)
initialize ch9121 structure
#define DRIVER_CH9121_LINK_RESET_GPIO_INIT(HANDLE, FUC)
link reset_gpio_init function
#define DRIVER_CH9121_LINK_UART_DEINIT(HANDLE, FUC)
link uart_deinit function
#define DRIVER_CH9121_LINK_UART_WRITE(HANDLE, FUC)
link uart_write function
#define DRIVER_CH9121_LINK_UART_INIT(HANDLE, FUC)
link uart_init function
#define DRIVER_CH9121_LINK_CFG_GPIO_WRITE(HANDLE, FUC)
link cfg_gpio_write function
#define DRIVER_CH9121_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_CH9121_LINK_UART_READ(HANDLE, FUC)
link uart_read function
#define DRIVER_CH9121_LINK_RESET_GPIO_DEINIT(HANDLE, FUC)
link reset_gpio_deinit function
#define DRIVER_CH9121_LINK_CFG_GPIO_DEINIT(HANDLE, FUC)
link cfg_gpio_deinit function
#define DRIVER_CH9121_LINK_UART_FLUSH(HANDLE, FUC)
link uart_flush function
#define DRIVER_CH9121_LINK_CFG_GPIO_INIT(HANDLE, FUC)
link cfg_gpio_init function
uint8_t ch9121_register_test(void)
register test
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v