更新 断线重连逻辑调整

This commit is contained in:
吴俊潮 2025-04-17 18:06:21 +08:00
parent 0668699265
commit 5418a0fc60
74 changed files with 21093 additions and 10510 deletions

View File

@ -544,6 +544,7 @@ void ch395_interrupt_handler(void)
* @param
* @retval
*/
int reconnect_times = 0;
void ch395q_handler(void)
{
if (ch395_int_pin_wire == 0)
@ -553,7 +554,7 @@ void ch395q_handler(void)
if(reconnect_flag == 1)
{
reconnect_flag = 0;
reconnect_flag = 0;
g_ch395q_sta.ch395_reconnection(); /* 检测PHY状态并重新连接 */
}
}
@ -563,12 +564,15 @@ void ch395q_handler(void)
* @param
* @retval
*/
void ch395_reconnection(void)
{
for (uint8_t socket_index = CH395Q_SOCKET_0 ; socket_index <= CH395Q_SOCKET_7 ; socket_index ++ )
{
if (g_ch395q_sta.phy_status == PHY_DISCONN && (g_ch395q_sta.dhcp_status == DHCP_UP || g_ch395q_sta.dhcp_status == DHCP_DOWN || g_ch395q_sta.dhcp_status == DHCP_STA))
{
reconnect_times++;
if (g_ch395q_sta.socket[socket_index].config.socket_enable == CH395Q_ENABLE)
{
ch395_close_socket(g_ch395q_sta.socket[socket_index].config.socket_index);
@ -581,69 +585,76 @@ void ch395_reconnection(void)
{
if (g_ch395q_sta.phy_status != PHY_DISCONN && g_ch395q_sta.socket[socket_index].config.socket_enable == CH395Q_DISABLE)
{
if (g_ch395q_sta.dhcp_status == DHCP_STA)
{
ch395_cmd_reset(); /* 对ch395q复位 */
//HAL_Delay(100); /* 这里必须等待100以上延时 */
delay_us(100000);
ch395_cmd_init();
//HAL_Delay(100); /* 这里必须等待100以上延时 */
delay_us(100000);
ch395_socket_r_s_buf_modify();
// ch395_set_tcpmss(536);
// ch395_set_start_para(FUN_PARA_FLAG_TCP_SERVER | SOCK_CTRL_FLAG_SOCKET_CLOSE);
// g_ch395q_sta.ch395_error(ch395_dhcp_enable(1)); /* 开启DHCP */
}
// do
// {
// if (ch395_int_pin_wire == 0)
// {
// ch395_interrupt_handler(); /* 中断处理函数 */
// }
// }
// while (g_ch395q_sta.dhcp_status == DHCP_STA); /* 获取DHCP */
switch(g_ch395q_sta.socket[socket_index].config.proto)
{
case CH395Q_SOCKET_UDP:
/* socket 为UDP模式 */
ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
ch395_set_socket_prot_type(socket_index, PROTO_TYPE_UDP); /* 设置socket 0协议类型 */
ch395_set_socket_desport(socket_index, g_ch395q_sta.socket[socket_index].config.des_port); /* 设置socket 0目的端口 */
ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查是否成功 */
break;
case CH395Q_SOCKET_TCP_CLIENT:
/* socket 为TCPClient模式 */
ch395_keeplive_set(); /* 保活设置 */
ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP); /* 设置socket 0协议类型 */
ch395_set_socket_desport(socket_index,g_ch395q_sta.socket[socket_index].config.des_port); /* 设置socket 0目的端口 */
ch395_set_socket_sourport(socket_index,g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
g_ch395q_sta.ch395_error(ch395_tcp_connect(socket_index)); /* 检查tcp连接是否成功 */
break;
case CH395Q_SOCKET_TCP_SERVER:
/* socket 为TCPServer模式 */
//ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP); /* 设置socket 0协议类型 */
ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
//HAL_Delay(3000);
delay_us(3000000);
g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
g_ch395q_sta.ch395_error(ch395_tcp_listen(socket_index)); /* 监听tcp连接 */
break;
case CH395Q_SOCKET_MAC_RAW:
ch395_set_socket_prot_type(socket_index, PROTO_TYPE_MAC_RAW); /* 设置socket 0协议类型 */
g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
break;
default:
ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP);
ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 1~7源端口 */
break;
}
g_ch395q_sta.socket[socket_index].config.socket_enable = CH395Q_ENABLE;
reconnect_times = 0;
ch395_hardware_init(); //ch395硬件初始化
ch395_init(); //以太网初始化
return;
// if (g_ch395q_sta.dhcp_status == DHCP_STA)
// {
// ch395_cmd_reset(); /* 对ch395q复位 */
// //HAL_Delay(100); /* 这里必须等待100以上延时 */
// delay_us(100000);
// ch395_cmd_init();
// //HAL_Delay(100); /* 这里必须等待100以上延时 */
// delay_us(100000);
// ch395_socket_r_s_buf_modify();
// // ch395_set_tcpmss(536);
// // ch395_set_start_para(FUN_PARA_FLAG_TCP_SERVER | SOCK_CTRL_FLAG_SOCKET_CLOSE);
// // g_ch395q_sta.ch395_error(ch395_dhcp_enable(1)); /* 开启DHCP */
// }
// // do
// // {
// // if (ch395_int_pin_wire == 0)
// // {
// // ch395_interrupt_handler(); /* 中断处理函数 */
// // }
// // }
// // while (g_ch395q_sta.dhcp_status == DHCP_STA); /* 获取DHCP */
// switch(g_ch395q_sta.socket[socket_index].config.proto)
// {
// case CH395Q_SOCKET_UDP:
// /* socket 为UDP模式 */
// ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
// ch395_set_socket_prot_type(socket_index, PROTO_TYPE_UDP); /* 设置socket 0协议类型 */
// ch395_set_socket_desport(socket_index, g_ch395q_sta.socket[socket_index].config.des_port); /* 设置socket 0目的端口 */
// ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
// g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查是否成功 */
// break;
// case CH395Q_SOCKET_TCP_CLIENT:
// /* socket 为TCPClient模式 */
// ch395_keeplive_set(); /* 保活设置 */
// ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
// ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP); /* 设置socket 0协议类型 */
// ch395_set_socket_desport(socket_index,g_ch395q_sta.socket[socket_index].config.des_port); /* 设置socket 0目的端口 */
// ch395_set_socket_sourport(socket_index,g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
// g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
// g_ch395q_sta.ch395_error(ch395_tcp_connect(socket_index)); /* 检查tcp连接是否成功 */
// break;
// case CH395Q_SOCKET_TCP_SERVER:
// /* socket 为TCPServer模式 */
// //ch395_set_socket_desip(socket_index, g_ch395q_sta.socket[socket_index].config.des_ip); /* 设置socket 0目标IP地址 */
// ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP); /* 设置socket 0协议类型 */
// ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 0源端口 */
// //HAL_Delay(3000);
// delay_us(3000000);
// g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
// g_ch395q_sta.ch395_error(ch395_tcp_listen(socket_index)); /* 监听tcp连接 */
// break;
// case CH395Q_SOCKET_MAC_RAW:
// ch395_set_socket_prot_type(socket_index, PROTO_TYPE_MAC_RAW); /* 设置socket 0协议类型 */
// g_ch395q_sta.ch395_error(ch395_open_socket(socket_index)); /* 检查sokect是否打开成功 */
// break;
// default:
// ch395_set_socket_prot_type(socket_index, PROTO_TYPE_TCP);
// ch395_set_socket_sourport(socket_index, g_ch395q_sta.socket[socket_index].config.sour_port); /* 设置socket 1~7源端口 */
// break;
// }
// g_ch395q_sta.socket[socket_index].config.socket_enable = CH395Q_ENABLE;
}
}
}

View File

@ -3,9 +3,9 @@
#include "ch395.h"
/**
* @brief ch395芯片
* @param
* @retval
* @brief ch395芯片
* @param
* @retval
*/
void ch395_cmd_reset(void)
{
@ -14,9 +14,9 @@ void ch395_cmd_reset(void)
}
/**
* @brief 使ch395进入睡眠状态
* @param
* @retval
* @brief 使ch395进入睡眠状态
* @param
* @retval
*/
void ch395_cmd_sleep(void)
{
@ -25,9 +25,9 @@ void ch395_cmd_sleep(void)
}
/**
* @brief 1
* @param
* @retval 1
* @brief 1
* @param
* @retval 1
*/
uint8_t ch395_cmd_get_ver(void)
{
@ -39,9 +39,9 @@ uint8_t ch395_cmd_get_ver(void)
}
/**
* @brief
* @param 1
* @retval ok testdata按位取反
* @brief
* @param 1
* @retval ok testdata按位取反
*/
uint8_t ch395_cmd_check_exist(uint8_t testdata)
{
@ -55,9 +55,9 @@ uint8_t ch395_cmd_check_exist(uint8_t testdata)
}
/**
* @brief phych395 phy为100/10m ch395默为自动协商
* @param phy /
* @retval
* @brief phych395 phy为100/10m ch395默为自动协商
* @param phy /
* @retval
*/
void ch395_cmd_set_phy(uint8_t phystat)
{
@ -67,9 +67,9 @@ void ch395_cmd_set_phy(uint8_t phystat)
}
/**
* @brief phy的状态
* @param
* @retval ch395phy状态phy参数/
* @brief phy的状态
* @param
* @retval ch395phy状态phy参数/
*/
uint8_t ch395_cmd_get_phy_status(void)
{
@ -82,9 +82,9 @@ uint8_t ch395_cmd_get_phy_status(void)
}
/**
* @brief ch395自动取消中断0x43使
* @param
* @retval
* @brief ch395自动取消中断0x43使
* @param
* @retval
*/
uint8_t ch395_cmd_get_glob_int_status(void)
{
@ -97,9 +97,9 @@ uint8_t ch395_cmd_get_glob_int_status(void)
}
/**
* @brief ch395芯片
* @param
* @retval
* @brief ch395芯片
* @param
* @retval
*/
uint8_t ch395_cmd_init(void)
{
@ -111,17 +111,17 @@ uint8_t ch395_cmd_init(void)
while (1)
{
HAL_Delay(10); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(10); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出,本函数需要500MS以上执行完毕 */
return CH395_ERR_UNKNOW; /* 超时退出,本函数需要500MS以上执行完毕 */
}
}
@ -129,9 +129,9 @@ uint8_t ch395_cmd_init(void)
}
/**
* @brief ch395串口波特率
* @param baudrate
* @retval
* @brief ch395串口波特率
* @param baudrate
* @retval
*/
void ch395_cmd_set_uart_baud_rate(uint32_t baudrate)
{
@ -144,9 +144,9 @@ void ch395_cmd_set_uart_baud_rate(uint32_t baudrate)
}
/**
* @brief
* @param
* @retval
* @brief
* @param
* @retval
*/
uint8_t ch395_get_cmd_status(void)
{
@ -159,9 +159,9 @@ uint8_t ch395_get_cmd_status(void)
}
/**
* @brief ch395的ip地址
* @param ipaddr ip地址
* @retval
* @brief ch395的ip地址
* @param ipaddr ip地址
* @retval
*/
void ch395_cmd_set_ipaddr(uint8_t *ipaddr)
{
@ -178,9 +178,9 @@ void ch395_cmd_set_ipaddr(uint8_t *ipaddr)
}
/**
* @brief ch395的网关ip地址
* @param ipaddr ip地址
* @retval
* @brief ch395的网关ip地址
* @param ipaddr ip地址
* @retval
*/
void ch395_cmd_set_gw_ipaddr(uint8_t *gwipaddr)
{
@ -197,9 +197,9 @@ void ch395_cmd_set_gw_ipaddr(uint8_t *gwipaddr)
}
/**
* @brief ch395的子网掩码255.255.255.0
* @param maskaddr
* @retval
* @brief ch395的子网掩码255.255.255.0
* @param maskaddr
* @retval
*/
void ch395_cmd_set_maskaddr(uint8_t *maskaddr)
{
@ -216,9 +216,9 @@ void ch395_cmd_set_maskaddr(uint8_t *maskaddr)
}
/**
* @brief ch395的mac地址
* @param mcaddr mac地址指针
* @retval
* @brief ch395的mac地址
* @param mcaddr mac地址指针
* @retval
*/
void ch395_cmd_set_macaddr(uint8_t *amcaddr)
{
@ -236,9 +236,9 @@ void ch395_cmd_set_macaddr(uint8_t *amcaddr)
}
/**
* @brief ch395的mac地址
* @param amcaddr mac地址指针
* @retval
* @brief ch395的mac地址
* @param amcaddr mac地址指针
* @retval
*/
void ch395_cmd_get_macaddr(uint8_t *amcaddr)
{
@ -255,11 +255,11 @@ void ch395_cmd_get_macaddr(uint8_t *amcaddr)
}
/**
* @brief mac过滤
* @param filtype mac过滤
* @brief mac过滤
* @param filtype mac过滤
* @param table0 hash0
* @param table1 hash1
* @retval
* @retval
*/
void ch395_cmd_set_macfilt(uint8_t filtype, uint32_t table0, uint32_t table1)
{
@ -278,13 +278,13 @@ void ch395_cmd_set_macfilt(uint8_t filtype, uint32_t table0, uint32_t table1)
}
/**
* @brief (ip,port,protocol type)
* @param list
@arg 1 (ch395inc.h)
@arg 2ip包协议类型
@arg 3-4
@arg 4-8ip地址
* @retval
* @brief (ip,port,protocol type)
* @param list
@arg 1 (ch395inc.h)
@arg 2ip包协议类型
@arg 3-4
@arg 4-8ip地址
* @retval
*/
void ch395_cmd_get_unreachippt(uint8_t *list)
{
@ -301,10 +301,10 @@ void ch395_cmd_get_unreachippt(uint8_t *list)
}
/**
* @brief ip和端口地址tcp server模式下使用
* @param sockindex socket索引
* @param list ip和端口
* @retval
* @brief ip和端口地址tcp server模式下使用
* @param sockindex socket索引
* @param list ip和端口
* @retval
*/
void ch395_cmd_get_remoteipp(uint8_t sockindex, uint8_t *list)
{
@ -322,10 +322,10 @@ void ch395_cmd_get_remoteipp(uint8_t sockindex, uint8_t *list)
}
/**
* @brief socket n的目的ip地址
* @param sockindex socket索引
* @param ipaddr ip地址
* @retval
* @brief socket n的目的ip地址
* @param sockindex socket索引
* @param ipaddr ip地址
* @retval
*/
void ch395_set_socket_desip(uint8_t sockindex, uint8_t *ipaddr)
{
@ -339,10 +339,10 @@ void ch395_set_socket_desip(uint8_t sockindex, uint8_t *ipaddr)
}
/**
* @brief socket
* @param sockindex socket索引,prottype
* @param socket协议类型定义(ch395inc.h)
* @retval
* @brief socket
* @param sockindex socket索引,prottype
* @param socket协议类型定义(ch395inc.h)
* @retval
*/
void ch395_set_socket_prot_type(uint8_t sockindex, uint8_t prottype)
{
@ -353,10 +353,10 @@ void ch395_set_socket_prot_type(uint8_t sockindex, uint8_t prottype)
}
/**
* @brief socket n的协议类型
* @param sockindex socket索引
* @param desprot 2
* @retval
* @brief socket n的协议类型
* @param sockindex socket索引
* @param desprot 2
* @retval
*/
void ch395_set_socket_desport(uint8_t sockindex, uint16_t desprot)
{
@ -368,10 +368,10 @@ void ch395_set_socket_desport(uint8_t sockindex, uint16_t desprot)
}
/**
* @brief socket n的协议类型
* @param sockindex socket索引
* @param desprot 2
* @retval
* @brief socket n的协议类型
* @param sockindex socket索引
* @param desprot 2
* @retval
*/
void ch395_set_socket_sourport(uint8_t sockindex, uint16_t surprot)
{
@ -383,10 +383,10 @@ void ch395_set_socket_sourport(uint8_t sockindex, uint16_t surprot)
}
/**
* @brief ip模式下socket ip包协议字段
* @param sockindex socket索引
* @param prototype ipraw模式1字节协议字段
* @retval
* @brief ip模式下socket ip包协议字段
* @param sockindex socket索引
* @param prototype ipraw模式1字节协议字段
* @retval
*/
void ch395_set_socket_ipraw_proto(uint8_t sockindex, uint8_t prototype)
{
@ -397,11 +397,11 @@ void ch395_set_socket_ipraw_proto(uint8_t sockindex, uint8_t prototype)
}
/**
* @brief / ping
* @param senable :0 / 1, :
* @arg 1: ping
* @arg 0: ping
* @retval
* @brief / ping
* @param senable :0 / 1, :
* @arg 1: ping
* @arg 0: ping
* @retval
*/
void ch395_enable_ping(uint8_t enable)
{
@ -411,11 +411,11 @@ void ch395_enable_ping(uint8_t enable)
}
/**
* @brief
* @param sockindex socket索引
* @param databuf
* @param len
* @retval
* @brief
* @param sockindex socket索引
* @param databuf
* @param len
* @retval
*/
void ch395_send_data(uint8_t sockindex, uint8_t *databuf, uint16_t len)
{
@ -435,9 +435,9 @@ void ch395_send_data(uint8_t sockindex, uint8_t *databuf, uint16_t len)
}
/**
* @brief
* @param sockindex socket索引
* @retval
* @brief
* @param sockindex socket索引
* @retval
*/
uint16_t ch395_get_recv_length(uint8_t sockindex)
{
@ -452,9 +452,9 @@ uint16_t ch395_get_recv_length(uint8_t sockindex)
}
/**
* @brief
* @param sockindex socket索引
* @retval
* @brief
* @param sockindex socket索引
* @retval
*/
void ch395_clear_recv_buf(uint8_t sockindex)
{
@ -464,11 +464,11 @@ void ch395_clear_recv_buf(uint8_t sockindex)
}
/**
* @brief
* @param sockindex socket索引
* @param len
* @param pbuf
* @retval
* @brief
* @param sockindex socket索引
* @param len
* @param pbuf
* @retval
*/
void ch395_get_recv_data(uint8_t sockindex, uint16_t len, uint8_t *pbuf)
{
@ -492,9 +492,9 @@ void ch395_get_recv_data(uint8_t sockindex, uint16_t len, uint8_t *pbuf)
}
/**
* @brief
* @param count 20
* @retval
* @brief
* @param count 20
* @retval
*/
void ch395_cmd_set_retry_count(uint8_t count)
{
@ -504,9 +504,9 @@ void ch395_cmd_set_retry_count(uint8_t count)
}
/**
* @brief
* @param period 1000ms
* @retval
* @brief
* @param period 1000ms
* @retval
*/
void ch395_cmd_set_retry_period(uint16_t period)
{
@ -517,9 +517,9 @@ void ch395_cmd_set_retry_period(uint16_t period)
}
/**
* @brief socket
* @param sockindex socket索引
* @retval socket n的状态信息1socket ,2tcp状态
* @brief socket
* @param sockindex socket索引
* @retval socket n的状态信息1socket ,2tcp状态
*/
void ch395_cmd_get_socket_status(uint8_t sockindex, uint8_t *status)
{
@ -531,9 +531,9 @@ void ch395_cmd_get_socket_status(uint8_t sockindex, uint8_t *status)
}
/**
* @brief socket
* @param sockindex socket索引
* @retval
* @brief socket
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_open_socket(uint8_t sockindex)
{
@ -545,17 +545,17 @@ uint8_t ch395_open_socket(uint8_t sockindex)
while (1)
{
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
@ -563,9 +563,9 @@ uint8_t ch395_open_socket(uint8_t sockindex)
}
/**
* @brief socket
* @param sockindex socket索引
* @retval
* @brief socket
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_close_socket(uint8_t sockindex)
{
@ -577,17 +577,17 @@ uint8_t ch395_close_socket(uint8_t sockindex)
while (1)
{
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
@ -595,9 +595,9 @@ uint8_t ch395_close_socket(uint8_t sockindex)
}
/**
* @brief tcp连接tcp模式下有效
* @param sockindex socket索引
* @retval
* @brief tcp连接tcp模式下有效
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_tcp_connect(uint8_t sockindex)
{
@ -609,17 +609,17 @@ uint8_t ch395_tcp_connect(uint8_t sockindex)
while (1)
{
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
@ -627,9 +627,9 @@ uint8_t ch395_tcp_connect(uint8_t sockindex)
}
/**
* @brief tcp监听tcp模式下有效
* @param sockindex socket索引
* @retval
* @brief tcp监听tcp模式下有效
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_tcp_listen(uint8_t sockindex)
{
@ -641,17 +641,17 @@ uint8_t ch395_tcp_listen(uint8_t sockindex)
while (1)
{
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
@ -659,9 +659,9 @@ uint8_t ch395_tcp_listen(uint8_t sockindex)
}
/**
* @brief tcp断开tcp模式下有效
* @param sockindex socket索引
* @retval
* @brief tcp断开tcp模式下有效
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_tcp_disconnect(uint8_t sockindex)
{
@ -673,26 +673,26 @@ uint8_t ch395_tcp_disconnect(uint8_t sockindex)
while (1)
{
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
HAL_Delay(5); /* 延时查询建议2MS以上 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if (s != CH395_ERR_BUSY)
{
break; /* 如果CH395芯片返回忙状态 */
break; /* 如果CH395芯片返回忙状态 */
}
if (i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
return s;
}
/**
* @brief socket n的中断状态
* @param sockindex socket索引
* @retval
* @brief socket n的中断状态
* @param sockindex socket索引
* @retval
*/
uint8_t ch395_get_socket_int(uint8_t sockindex)
{
@ -706,9 +706,9 @@ uint8_t ch395_get_socket_int(uint8_t sockindex)
}
/**
* @brief crc运算6
* @param mac_addr mac地址
* @retval crc32的高6位
* @brief crc运算6
* @param mac_addr mac地址
* @retval crc32的高6位
*/
uint8_t ch395_crcret_6bit(uint8_t *mac_addr)
{
@ -734,11 +734,11 @@ uint8_t ch395_crcret_6bit(uint8_t *mac_addr)
}
/**
* @brief /dhcp
* @param flag:0 / 1, :
* @arg 1:dhcp
* @arg 0dhcp
* @retval
* @brief /dhcp
* @param flag:0 / 1, :
* @arg 1:dhcp
* @arg 0dhcp
* @retval
*/
uint8_t ch395_dhcp_enable(uint8_t flag)
{
@ -751,16 +751,16 @@ uint8_t ch395_dhcp_enable(uint8_t flag)
while (1)
{
HAL_Delay(20);
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
s = ch395_get_cmd_status(); /* 不能过于频繁查询 */
if(s != CH395_ERR_BUSY)
{
break; /* 如果ch395芯片返回忙状态 */
break; /* 如果ch395芯片返回忙状态 */
}
if(i++ > 200)
{
return CH395_ERR_UNKNOW; /* 超时退出 */
return CH395_ERR_UNKNOW; /* 超时退出 */
}
}
@ -768,9 +768,9 @@ uint8_t ch395_dhcp_enable(uint8_t flag)
}
/**
* @brief dhcp状态
* @param
* @retval dhcp状态0
* @brief dhcp状态
* @param
* @retval dhcp状态0
*/
uint8_t ch395_get_dhcp_status(void)
{
@ -782,9 +782,9 @@ uint8_t ch395_get_dhcp_status(void)
}
/**
* @brief ip
* @param sockindex socket索引
* @retval 12ip,
* @brief ip
* @param sockindex socket索引
* @retval 12ip,
*/
void ch395_get_ipinf(uint8_t *addr)
{
@ -800,10 +800,10 @@ void ch395_get_ipinf(uint8_t *addr)
}
/**
* @brief gpio寄存器
* @param regadd
* @param regval
* @retval
* @brief gpio寄存器
* @param regadd
* @param regval
* @retval
*/
void ch395_write_gpio_addr(uint8_t regadd, uint8_t regval)
{
@ -813,9 +813,9 @@ void ch395_write_gpio_addr(uint8_t regadd, uint8_t regval)
}
/**
* @brief gpio寄存器
* @param regadd
* @retval
* @brief gpio寄存器
* @param regadd
* @retval
*/
uint8_t ch395_read_gpio_addr(uint8_t regadd)
{
@ -828,9 +828,9 @@ uint8_t ch395_read_gpio_addr(uint8_t regadd)
}
/**
* @brief eeprom
* @param
* @retval
* @brief eeprom
* @param
* @retval
*/
uint8_t ch395_eeprom_erase(void)
{
@ -854,11 +854,11 @@ uint8_t ch395_eeprom_erase(void)
}
/**
* @brief eeprom
* @param eepaddr eeprom地址
* @param buf
* @param len
* @retval
* @brief eeprom
* @param eepaddr eeprom地址
* @param buf
* @param len
* @retval
*/
uint8_t ch395_eeprom_write(uint16_t eepaddr, uint8_t *buf, uint8_t len)
{
@ -887,11 +887,11 @@ uint8_t ch395_eeprom_write(uint16_t eepaddr, uint8_t *buf, uint8_t len)
}
/**
* @brief eeprom
* @param eepaddr eeprom地址
* @param buf
* @param len
* @retval
* @brief eeprom
* @param eepaddr eeprom地址
* @param buf
* @param len
* @retval
*/
void ch395_eeprom_read(uint16_t eepaddr, uint8_t *buf, uint8_t len)
{
@ -908,9 +908,9 @@ void ch395_eeprom_read(uint16_t eepaddr, uint8_t *buf, uint8_t len)
}
/**
* @brief tcp mss值
* @brief tcp mss值
* @param tcpmss
* @retval
* @retval
*/
void ch395_set_tcpmss(uint16_t tcpmss)
{
@ -920,11 +920,11 @@ void ch395_set_tcpmss(uint16_t tcpmss)
}
/**
* @brief socket接收缓冲区
* @param sockindex socket索引,,blknum
* @param startblk
* @param 512
* @retval
* @brief socket接收缓冲区
* @param sockindex socket索引,,blknum
* @param startblk
* @param 512
* @retval
*/
void ch395_set_socket_recv_buf(uint8_t sockindex, uint8_t startblk, uint8_t blknum)
{
@ -935,11 +935,11 @@ void ch395_set_socket_recv_buf(uint8_t sockindex, uint8_t startblk, uint8_t blkn
}
/**
* @brief socket发送缓冲区
* @param sockindex socket索引
* @param startblk
* @param blknum
* @retval
* @brief socket发送缓冲区
* @param sockindex socket索引
* @param startblk
* @param blknum
* @retval
*/
void ch395_set_socket_send_buf(uint8_t sockindex, uint8_t startblk, uint8_t blknum)
{
@ -950,25 +950,25 @@ void ch395_set_socket_send_buf(uint8_t sockindex, uint8_t startblk, uint8_t blkn
}
/**
* @brief udp向指定的ip和端口发送数据
* @param buf :
* @param len :
* @param ip : ip
* @param port :
* @param sockeid : socket索引值
* @retval
* @brief udp向指定的ip和端口发送数据
* @param buf :
* @param len :
* @param ip : ip
* @param port :
* @param sockeid : socket索引值
* @retval
*/
void ch395_udp_send_data(uint8_t *buf, uint32_t len, uint8_t *ip, uint16_t port, uint8_t sockindex)
{
ch395_set_socket_desip(sockindex, ip); /* 设置socket 0目标IP地址 */
ch395_set_socket_desip(sockindex, ip); /* 设置socket 0目标IP地址 */
ch395_set_socket_desport(sockindex, port);
ch395_send_data(sockindex, buf, len);
}
/**
* @brief ch395启动参数
* @param mdata
* @retval
* @brief ch395启动参数
* @param mdata
* @retval
*/
void ch395_set_start_para(uint32_t mdata)
{
@ -980,9 +980,9 @@ void ch395_set_start_para(uint32_t mdata)
}
/**
* @brief ch395自动取消中断,0x44使
* @param
* @retval
* @brief ch395自动取消中断,0x44使
* @param
* @retval
*/
uint16_t ch395_cmd_get_glob_int_status_all(void)
{
@ -996,10 +996,10 @@ uint16_t ch395_cmd_get_glob_int_status_all(void)
}
/**
* @brief keepalive功能
* @param sockindex socket号
* @param cmd 0 1
* @retval
* @brief keepalive功能
* @param sockindex socket号
* @param cmd 0 1
* @retval
*/
void ch395_set_keeplive(uint8_t sockindex, uint8_t cmd)
{
@ -1009,9 +1009,9 @@ void ch395_set_keeplive(uint8_t sockindex, uint8_t cmd)
}
/**
* @brief keepalive重试次数
* @param cnt
* @retval
* @brief keepalive重试次数
* @param cnt
* @retval
*/
void ch395_keeplive_cnt(uint8_t cnt)
{
@ -1020,9 +1020,9 @@ void ch395_keeplive_cnt(uint8_t cnt)
}
/**
* @brief keeplive空闲
* @param idle ms
* @retval
* @brief keeplive空闲
* @param idle ms
* @retval
*/
void ch395_keeplive_idle(uint32_t idle)
{
@ -1034,9 +1034,9 @@ void ch395_keeplive_idle(uint32_t idle)
}
/**
* @brief keeplive间隔时间
* @param intvl ms
* @retval
* @brief keeplive间隔时间
* @param intvl ms
* @retval
*/
void ch395_keeplive_intvl(uint32_t intvl)
{
@ -1048,10 +1048,10 @@ void ch395_keeplive_intvl(uint32_t intvl)
}
/**
* @brief ttl
* @param ssockindex socket号
* @param ttlnum:ttl数
* @retval
* @brief ttl
* @param ssockindex socket号
* @param ttlnum:ttl数
* @retval
*/
void ch395_setttl_num(uint8_t sockindex, uint8_t ttlnum)
{

View File

@ -7,7 +7,7 @@
#include "usart.h"
#include "spi.h"
/* ********************************************************************************************************************* */
/* 常用类型和常量定义 */
/* 常用类型和常量定义 */
#ifdef __cplusplus
extern "C" {
#endif
@ -20,225 +20,225 @@ extern "C" {
#define NULL 0
#endif
/* 命令代码:
* :
* (,)
* (0)
* (0)
* : CMDxy_NAME
* x和y都是数字, x说明最少输入数据个数(), y说明最少输出数据个数(), y如果是W表示需要等待命令执行成功
* 0, x或y之内
/* 命令代码:
* :
* (,)
* (0)
* (0)
* : CMDxy_NAME
* x和y都是数字, x说明最少输入数据个数(), y说明最少输出数据个数(), y如果是W表示需要等待命令执行成功
* 0, x或y之内
*/
#define CMD01_GET_IC_VER 0x01 /* 获取芯片以及固件版本号 */
#define CMD01_GET_IC_VER 0x01 /* 获取芯片以及固件版本号 */
#define CMD31_SET_BAUDRATE 0x02 /* 串口方式: 设置串口通讯波特率(上电或者复位后的默认波特率为9600bps */
#define CMD31_SET_BAUDRATE 0x02 /* 串口方式: 设置串口通讯波特率(上电或者复位后的默认波特率为9600bps */
#define CMD00_ENTER_SLEEP 0x03 /* 进入睡眠状态 */
#define CMD00_ENTER_SLEEP 0x03 /* 进入睡眠状态 */
#define CMD00_RESET_ALL 0x05 /* 执行硬件复位 */
#define CMD00_RESET_ALL 0x05 /* 执行硬件复位 */
#define CMD11_CHECK_EXIST 0x06 /* 测试通讯接口以及工作状态 */
#define CMD11_CHECK_EXIST 0x06 /* 测试通讯接口以及工作状态 */
#define CMD02_GET_GLOB_INT_STATUS_ALL 0x19 /* 获取全局中断状态V44版本以后的程序由于增加了socket数量需要用此命令获取全部的中断 */
#define CMD02_GET_GLOB_INT_STATUS_ALL 0x19 /* 获取全局中断状态V44版本以后的程序由于增加了socket数量需要用此命令获取全部的中断 */
#define CMD10_SET_PHY 0x20 /* 设置PHY默认为Auto自动协商 */
#define CMD10_SET_PHY 0x20 /* 设置PHY默认为Auto自动协商 */
#define CMD60_SET_MAC_ADDR 0x21 /* 设置MAC地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD60_SET_MAC_ADDR 0x21 /* 设置MAC地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_IP_ADDR 0x22 /* 设置IP地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_IP_ADDR 0x22 /* 设置IP地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_GWIP_ADDR 0x23 /* 设置网关IP地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_GWIP_ADDR 0x23 /* 设置网关IP地址 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_MASK_ADDR 0x24 /* 设置子网掩码, 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD40_SET_MASK_ADDR 0x24 /* 设置子网掩码, 必须在CMD00H_INIT_CH395之前设置完毕 */
#define CMD90_SET_MAC_FILT 0x25 /* 设置MAC过滤 可以进行广播,多播等过滤 */
#define CMD90_SET_MAC_FILT 0x25 /* 设置MAC过滤 可以进行广播,多播等过滤 */
#define CMD01_GET_PHY_STATUS 0x26 /* 获取PHY当前状态如断开连接10/100M FULL/HALF */
#define CMD01_GET_PHY_STATUS 0x26 /* 获取PHY当前状态如断开连接10/100M FULL/HALF */
#define CMD0W_INIT_CH395 0x27 /* 初始化CH395 */
#define CMD0W_INIT_CH395 0x27 /* 初始化CH395 */
#define CMD08_GET_UNREACH_IPPORT 0x28 /* 获取不可达信息 */
#define CMD08_GET_UNREACH_IPPORT 0x28 /* 获取不可达信息 */
#define CMD01_GET_GLOB_INT_STATUS 0x29 /* 获取全局中断状态最大值为1S不可以设置为0 */
#define CMD01_GET_GLOB_INT_STATUS 0x29 /* 获取全局中断状态最大值为1S不可以设置为0 */
#define CMD10_SET_RETRAN_COUNT 0x2A /* 重试次数仅在TCP模式下有效 */
#define CMD10_SET_RETRAN_COUNT 0x2A /* 重试次数仅在TCP模式下有效 */
#define CMD20_SET_RETRAN_PERIOD 0x2B /* 重试周期最大值为20仅在TCP模式下有效不可以设置为0 */
#define CMD20_SET_RETRAN_PERIOD 0x2B /* 重试周期最大值为20仅在TCP模式下有效不可以设置为0 */
#define CMD01_GET_CMD_STATUS 0x2C /* 获取命令执行状态 */
#define CMD01_GET_CMD_STATUS 0x2C /* 获取命令执行状态 */
#define CMD06_GET_REMOT_IPP_SN 0x2D /* 获取远端的端口以及IP地址该命令在TCP服务器模式下使用 */
#define CMD06_GET_REMOT_IPP_SN 0x2D /* 获取远端的端口以及IP地址该命令在TCP服务器模式下使用 */
#define CMD10_CLEAR_RECV_BUF_SN 0x2E /* 清除接收缓冲区 */
#define CMD10_CLEAR_RECV_BUF_SN 0x2E /* 清除接收缓冲区 */
#define CMD12_GET_SOCKET_STATUS_SN 0x2F /* 获取socket n状态 */
#define CMD12_GET_SOCKET_STATUS_SN 0x2F /* 获取socket n状态 */
#define CMD11_GET_INT_STATUS_SN 0x30 /* 获取socket n的中断状态 */
#define CMD11_GET_INT_STATUS_SN 0x30 /* 获取socket n的中断状态 */
#define CMD50_SET_IP_ADDR_SN 0x31 /* 设置socket n的目的IP地址 */
#define CMD50_SET_IP_ADDR_SN 0x31 /* 设置socket n的目的IP地址 */
#define CMD30_SET_DES_PORT_SN 0x32 /* 设置socket n的目的端口 */
#define CMD30_SET_DES_PORT_SN 0x32 /* 设置socket n的目的端口 */
#define CMD30_SET_SOUR_PORT_SN 0x33 /* 设置socket n的源端口 */
#define CMD30_SET_SOUR_PORT_SN 0x33 /* 设置socket n的源端口 */
#define CMD20_SET_PROTO_TYPE_SN 0x34 /* 设置socket n的协议类型 */
#define CMD20_SET_PROTO_TYPE_SN 0x34 /* 设置socket n的协议类型 */
#define CMD1W_OPEN_SOCKET_SN 0x35 /* 打开socket n */
#define CMD1W_OPEN_SOCKET_SN 0x35 /* 打开socket n */
#define CMD1W_TCP_LISTEN_SN 0x36 /* socket n监听收到此命令socket n进入服务器模式仅对TCP模式有效 */
#define CMD1W_TCP_LISTEN_SN 0x36 /* socket n监听收到此命令socket n进入服务器模式仅对TCP模式有效 */
#define CMD1W_TCP_CONNECT_SN 0x37 /* socket n连接收到此命令socket n进入客户端模式仅对TCP模式有效 */
#define CMD1W_TCP_CONNECT_SN 0x37 /* socket n连接收到此命令socket n进入客户端模式仅对TCP模式有效 */
#define CMD1W_TCP_DISNCONNECT_SN 0x38 /* socket n断开连接收到此命令socket n断开已有连接仅对TCP模式有效 */
#define CMD1W_TCP_DISNCONNECT_SN 0x38 /* socket n断开连接收到此命令socket n断开已有连接仅对TCP模式有效 */
#define CMD30_WRITE_SEND_BUF_SN 0x39 /* 向socket n缓冲区写入数据 */
#define CMD30_WRITE_SEND_BUF_SN 0x39 /* 向socket n缓冲区写入数据 */
#define CMD12_GET_RECV_LEN_SN 0x3B /* 获取socket n接收数据的长度 */
#define CMD12_GET_RECV_LEN_SN 0x3B /* 获取socket n接收数据的长度 */
#define CMD30_READ_RECV_BUF_SN 0x3C /* 读取socket n接收缓冲区数据 */
#define CMD30_READ_RECV_BUF_SN 0x3C /* 读取socket n接收缓冲区数据 */
#define CMD1W_CLOSE_SOCKET_SN 0x3D /* 关闭socket n */
#define CMD1W_CLOSE_SOCKET_SN 0x3D /* 关闭socket n */
#define CMD20_SET_IPRAW_PRO_SN 0x3E /* 在IP RAW下设置socket n的IP包协议类型 */
#define CMD20_SET_IPRAW_PRO_SN 0x3E /* 在IP RAW下设置socket n的IP包协议类型 */
#define CMD01_PING_ENABLE 0x3F /* 开启/关闭PING */
#define CMD01_PING_ENABLE 0x3F /* 开启/关闭PING */
#define CMD06_GET_MAC_ADDR 0x40 /* 获取MAC地址 */
#define CMD06_GET_MAC_ADDR 0x40 /* 获取MAC地址 */
#define CMD10_DHCP_ENABLE 0x41 /* DHCP使能 */
#define CMD10_DHCP_ENABLE 0x41 /* DHCP使能 */
#define CMD01_GET_DHCP_STATUS 0x42 /* 获取DHCP状态 */
#define CMD01_GET_DHCP_STATUS 0x42 /* 获取DHCP状态 */
#define CMD014_GET_IP_INF 0x43 /* IP,子网掩码,网关 */
#define CMD014_GET_IP_INF 0x43 /* IP,子网掩码,网关 */
#define CMD00_PPPOE_SET_USER_NAME 0x44 /* 设置PPPOE用户名 */
#define CMD00_PPPOE_SET_USER_NAME 0x44 /* 设置PPPOE用户名 */
#define CMD00_PPPOE_SET_PASSWORD 0x45 /* 设置密码 */
#define CMD00_PPPOE_SET_PASSWORD 0x45 /* 设置密码 */
#define CMD10_PPPOE_ENABLE 0x46 /* PPPOE使能 */
#define CMD10_PPPOE_ENABLE 0x46 /* PPPOE使能 */
#define CMD01_GET_PPPOE_STATUS 0x47 /* 获取pppoe状态 */
#define CMD01_GET_PPPOE_STATUS 0x47 /* 获取pppoe状态 */
#define CMD20_SET_TCP_MSS 0x50 /* 设置TCP MSS */
#define CMD20_SET_TCP_MSS 0x50 /* 设置TCP MSS */
#define CMD20_SET_TTL 0x51 /* 设置TTLTTL最大值为128 */
#define CMD20_SET_TTL 0x51 /* 设置TTLTTL最大值为128 */
#define CMD30_SET_RECV_BUF 0x52 /* 设置SOCKET接收缓冲区 */
#define CMD30_SET_RECV_BUF 0x52 /* 设置SOCKET接收缓冲区 */
#define CMD30_SET_SEND_BUF 0x53 /* 设置SOCKET发送缓冲区 */
#define CMD30_SET_SEND_BUF 0x53 /* 设置SOCKET发送缓冲区 */
#define CMD10_SET_MAC_RECV_BUF 0x54 /* 设置MAC接收缓冲区 */
#define CMD10_SET_MAC_RECV_BUF 0x54 /* 设置MAC接收缓冲区 */
#define CMD40_SET_FUN_PARA 0x55 /* 设置功能参数 */
#define CMD40_SET_FUN_PARA 0x55 /* 设置功能参数 */
#define CMD40_SET_KEEP_LIVE_IDLE 0x56 /* 设置KEEPLIVE空闲 */
#define CMD40_SET_KEEP_LIVE_IDLE 0x56 /* 设置KEEPLIVE空闲 */
#define CMD40_SET_KEEP_LIVE_INTVL 0x57 /* 设置间隔时间 */
#define CMD40_SET_KEEP_LIVE_INTVL 0x57 /* 设置间隔时间 */
#define CMD10_SET_KEEP_LIVE_CNT 0x58 /* 重试次数 */
#define CMD10_SET_KEEP_LIVE_CNT 0x58 /* 重试次数 */
#define CMD20_SET_KEEP_LIVE_SN 0X59 /* 设置socket nkeeplive功能*/
#define CMD20_SET_KEEP_LIVE_SN 0X59 /* 设置socket nkeeplive功能*/
#define CMD00_EEPROM_ERASE 0xE9 /* 擦除EEPROM*/
#define CMD00_EEPROM_ERASE 0xE9 /* 擦除EEPROM*/
#define CMD30_EEPROM_WRITE 0xEA /* 写EEPROM */
#define CMD30_EEPROM_WRITE 0xEA /* 写EEPROM */
#define CMD30_EEPROM_READ 0xEB /* 读EEPROM */
#define CMD30_EEPROM_READ 0xEB /* 读EEPROM */
#define CMD10_READ_GPIO_REG 0xEC /* 读GPIO寄存器 */
#define CMD10_READ_GPIO_REG 0xEC /* 读GPIO寄存器 */
#define CMD20_WRITE_GPIO_REG 0xED /* 写GPIO寄存器 */
#define CMD20_WRITE_GPIO_REG 0xED /* 写GPIO寄存器 */
/* 协议类型 */
#define PROTO_TYPE_IP_RAW 0 /* IP层原始数据 */
#define PROTO_TYPE_MAC_RAW 1 /* MAC层原始数据 */
#define PROTO_TYPE_UDP 2 /* UDP协议类型 */
#define PROTO_TYPE_TCP 3 /* TCP协议类型 */
/* 协议类型 */
#define PROTO_TYPE_IP_RAW 0 /* IP层原始数据 */
#define PROTO_TYPE_MAC_RAW 1 /* MAC层原始数据 */
#define PROTO_TYPE_UDP 2 /* UDP协议类型 */
#define PROTO_TYPE_TCP 3 /* TCP协议类型 */
/* PHY 命令参数/状态 */
#define PHY_DISCONN (1<<0) /* PHY断开 */
#define PHY_10M_FLL (1<<1) /* 10M全双工 */
#define PHY_10M_HALF (1<<2) /* 10M半双工 */
#define PHY_100M_FLL (1<<3) /* 100M全双工 */
#define PHY_100M_HALF (1<<4) /* 100M半双工 */
#define PHY_AUTO (1<<5) /* PHY自动模式CMD10H_SET_PHY */
#define PHY_ERROR (1<<6) /* PHY错误 */
/* PHY 命令参数/状态 */
#define PHY_DISCONN (1<<0) /* PHY断开 */
#define PHY_10M_FLL (1<<1) /* 10M全双工 */
#define PHY_10M_HALF (1<<2) /* 10M半双工 */
#define PHY_100M_FLL (1<<3) /* 100M全双工 */
#define PHY_100M_HALF (1<<4) /* 100M半双工 */
#define PHY_AUTO (1<<5) /* PHY自动模式CMD10H_SET_PHY */
#define PHY_ERROR (1<<6) /* PHY错误 */
/* CH395 MAC过滤 */
#define MAC_FILT_RECV_BORADPKT (1<<0) /* 使能接收广播包 */
#define MAC_FILT_RECV_ALL (1<<1) /* 使能接收所有数据包 */
#define MAC_FILT_RECV_MULTIPKT (1<<2) /* 使能接收多播包 */
#define MAC_FILT_RECV_ENABLE (1<<3) /* 使能接收 */
#define MAC_FILT_SEND_ENABLE (1<<4) /* 使能发送 */
/* CH395 MAC过滤 */
#define MAC_FILT_RECV_BORADPKT (1<<0) /* 使能接收广播包 */
#define MAC_FILT_RECV_ALL (1<<1) /* 使能接收所有数据包 */
#define MAC_FILT_RECV_MULTIPKT (1<<2) /* 使能接收多播包 */
#define MAC_FILT_RECV_ENABLE (1<<3) /* 使能接收 */
#define MAC_FILT_SEND_ENABLE (1<<4) /* 使能发送 */
/* 中断状态 */
/* 以下为GLOB_INT会产生的状态 */
#define GINT_STAT_UNREACH (1<<0) /* 不可达中断 */
#define GINT_STAT_IP_CONFLI (1<<1) /* IP冲突 */
#define GINT_STAT_PHY_CHANGE (1<<2) /* PHY状态改变 */
#define GINT_STAT_DHCP (1<<3) /* PHY状态改变 */
#define GINT_STAT_SOCK0 (1<<4) /* socket0 产生中断 */
#define GINT_STAT_SOCK1 (1<<5) /* socket1 产生中断 */
#define GINT_STAT_SOCK2 (1<<6) /* socket2 产生中断 */
#define GINT_STAT_SOCK3 (1<<7) /* socket3 产生中断 */
#define GINT_STAT_SOCK4 (1<<8) /* scoket4 产生中断 */
#define GINT_STAT_SOCK5 (1<<9) /* scoket5 产生中断 */
#define GINT_STAT_SOCK6 (1<<10) /* scoket6 产生中断 */
#define GINT_STAT_SOCK7 (1<<11) /* scoket7 产生中断 */
/* 中断状态 */
/* 以下为GLOB_INT会产生的状态 */
#define GINT_STAT_UNREACH (1<<0) /* 不可达中断 */
#define GINT_STAT_IP_CONFLI (1<<1) /* IP冲突 */
#define GINT_STAT_PHY_CHANGE (1<<2) /* PHY状态改变 */
#define GINT_STAT_DHCP (1<<3) /* PHY状态改变 */
#define GINT_STAT_SOCK0 (1<<4) /* socket0 产生中断 */
#define GINT_STAT_SOCK1 (1<<5) /* socket1 产生中断 */
#define GINT_STAT_SOCK2 (1<<6) /* socket2 产生中断 */
#define GINT_STAT_SOCK3 (1<<7) /* socket3 产生中断 */
#define GINT_STAT_SOCK4 (1<<8) /* scoket4 产生中断 */
#define GINT_STAT_SOCK5 (1<<9) /* scoket5 产生中断 */
#define GINT_STAT_SOCK6 (1<<10) /* scoket6 产生中断 */
#define GINT_STAT_SOCK7 (1<<11) /* scoket7 产生中断 */
/* 以下为Sn_INT会产生的状态 */
#define SINT_STAT_SENBUF_FREE (1<<0) /* 发送缓冲区空闲 */
#define SINT_STAT_SEND_OK (1<<1) /* 发送成功 */
#define SINT_STAT_RECV (1<<2) /* socket端口接收到数据或者接收缓冲区不为空 */
#define SINT_STAT_CONNECT (1<<3) /* 连接成功,TCP模式下产生此中断 */
#define SINT_STAT_DISCONNECT (1<<4) /* 连接断开,TCP模式下产生此中断 */
#define SINT_STAT_TIM_OUT (1<<6) /* ARP和TCP模式下会发生此中断 */
/* 以下为Sn_INT会产生的状态 */
#define SINT_STAT_SENBUF_FREE (1<<0) /* 发送缓冲区空闲 */
#define SINT_STAT_SEND_OK (1<<1) /* 发送成功 */
#define SINT_STAT_RECV (1<<2) /* socket端口接收到数据或者接收缓冲区不为空 */
#define SINT_STAT_CONNECT (1<<3) /* 连接成功,TCP模式下产生此中断 */
#define SINT_STAT_DISCONNECT (1<<4) /* 连接断开,TCP模式下产生此中断 */
#define SINT_STAT_TIM_OUT (1<<6) /* ARP和TCP模式下会发生此中断 */
/* 获取命令状态 */
#define CMD_ERR_SUCCESS 0x00 /* 命令操作成功 */
#define CMD_RET_ABORT 0x5F /* 命令操作失败 */
#define CH395_ERR_BUSY 0x10 /* 忙状态,表示当前正在执行命令 */
#define CH395_ERR_MEM 0x11 /* 内存错误 */
#define CH395_ERR_BUF 0x12 /* 缓冲区错误 */
#define CH395_ERR_TIMEOUT 0x13 /* 超时 */
#define CH395_ERR_RTE 0x14 /* 路由错误*/
#define CH395_ERR_ABRT 0x15 /* 连接停止*/
#define CH395_ERR_RST 0x16 /* 连接复位 */
#define CH395_ERR_CLSD 0x17 /* 连接关闭/socket 在关闭状态 */
#define CH395_ERR_CONN 0x18 /* 无连接 */
#define CH395_ERR_VAL 0x19 /* 错误的值 */
#define CH395_ERR_ARG 0x1a /* 错误的参数 */
#define CH395_ERR_USE 0x1b /* 已经被使用 */
#define CH395_ERR_IF 0x1c /* MAC错误 */
#define CH395_ERR_ISCONN 0x1d /* 已连接 */
#define CH395_ERR_OPEN 0X20 /* 已经打开 */
#define CH395_ERR_UNKNOW 0xFA /* 未知错误 */
/* PPP状态 */
#define CH395_PPP_SUCCESS 0 /* 成功 */
#define CH395_PPPERR_PARM 1 /* 无效参数 */
#define CH395_PPPERR_OPEN 2 /* 无法打开PPP会话 */
#define CH395_PPPERR_DEVICE 3 /* 无效的PPP设备 */
#define CH395_PPPERR_ALLOC 4 /* 资源分配失败 */
#define CH395_PPPERR_USER 5 /* 用户中断 */
#define CH395_PPPERR_CONNECT 6 /* 连接断开 */
#define CH395_PPPERR_AUTHFAIL 7 /* 挑战鉴别失败 */
#define CH395_PPPERR_PROTOCOL 8 /* 握手协议失败 */
#define CH395_PPPERR_TIME_OUT 9 /* 超时失败 */
#define CH395_PPPERR_CLOSE 10 /* 关闭失败 */
/* 不可达代码 */
#define UNREACH_CODE_HOST 0 /* 主机不可达 */
#define UNREACH_CODE_NET 1 /* 网络不可达 */
#define UNREACH_CODE_PROTOCOL 2 /* 协议不可达 */
#define UNREACH_CODE_PROT 3 /* 端口不可达 */
/* 其他值请参考RFC792文档 */
/* 命令包头 */
#define SER_SYNC_CODE1 0x57 /* 串口命令同步码1 */
#define SER_SYNC_CODE2 0xAB /* 串口命令同步码2 */
/* TCP状态 */
/* 获取命令状态 */
#define CMD_ERR_SUCCESS 0x00 /* 命令操作成功 */
#define CMD_RET_ABORT 0x5F /* 命令操作失败 */
#define CH395_ERR_BUSY 0x10 /* 忙状态,表示当前正在执行命令 */
#define CH395_ERR_MEM 0x11 /* 内存错误 */
#define CH395_ERR_BUF 0x12 /* 缓冲区错误 */
#define CH395_ERR_TIMEOUT 0x13 /* 超时 */
#define CH395_ERR_RTE 0x14 /* 路由错误*/
#define CH395_ERR_ABRT 0x15 /* 连接停止*/
#define CH395_ERR_RST 0x16 /* 连接复位 */
#define CH395_ERR_CLSD 0x17 /* 连接关闭/socket 在关闭状态 */
#define CH395_ERR_CONN 0x18 /* 无连接 */
#define CH395_ERR_VAL 0x19 /* 错误的值 */
#define CH395_ERR_ARG 0x1a /* 错误的参数 */
#define CH395_ERR_USE 0x1b /* 已经被使用 */
#define CH395_ERR_IF 0x1c /* MAC错误 */
#define CH395_ERR_ISCONN 0x1d /* 已连接 */
#define CH395_ERR_OPEN 0X20 /* 已经打开 */
#define CH395_ERR_UNKNOW 0xFA /* 未知错误 */
/* PPP状态 */
#define CH395_PPP_SUCCESS 0 /* 成功 */
#define CH395_PPPERR_PARM 1 /* 无效参数 */
#define CH395_PPPERR_OPEN 2 /* 无法打开PPP会话 */
#define CH395_PPPERR_DEVICE 3 /* 无效的PPP设备 */
#define CH395_PPPERR_ALLOC 4 /* 资源分配失败 */
#define CH395_PPPERR_USER 5 /* 用户中断 */
#define CH395_PPPERR_CONNECT 6 /* 连接断开 */
#define CH395_PPPERR_AUTHFAIL 7 /* 挑战鉴别失败 */
#define CH395_PPPERR_PROTOCOL 8 /* 握手协议失败 */
#define CH395_PPPERR_TIME_OUT 9 /* 超时失败 */
#define CH395_PPPERR_CLOSE 10 /* 关闭失败 */
/* 不可达代码 */
#define UNREACH_CODE_HOST 0 /* 主机不可达 */
#define UNREACH_CODE_NET 1 /* 网络不可达 */
#define UNREACH_CODE_PROTOCOL 2 /* 协议不可达 */
#define UNREACH_CODE_PROT 3 /* 端口不可达 */
/* 其他值请参考RFC792文档 */
/* 命令包头 */
#define SER_SYNC_CODE1 0x57 /* 串口命令同步码1 */
#define SER_SYNC_CODE2 0xAB /* 串口命令同步码2 */
/* TCP状态 */
#define TCP_CLOSED 0
#define TCP_LISTEN 1
#define TCP_SYN_SENT 2
@ -251,19 +251,19 @@ extern "C" {
#define TCP_LAST_ACK 9
#define TCP_TIME_WAIT 10
/* GPIO寄存器地址 */
#define GPIO_DIR_REG 0x80 /* 寄存器方向寄存器1输出;0:输入 */
#define GPIO_IN_REG 0x81 /* GPIO输入寄存器 */
#define GPIO_OUT_REG 0x82 /* GPIO输出寄存器 */
#define GPIO_CLR_REG 0x83 /* GPIO输出清除: 0=keep, 1=clear */
#define GPIO_PU_REG 0x84 /* GPIO上拉使能寄存器 */
#define GPIO_PD_REG 0x85 /* GPIO下拉使能寄存器 */
/* GPIO寄存器地址 */
#define GPIO_DIR_REG 0x80 /* 寄存器方向寄存器1输出;0:输入 */
#define GPIO_IN_REG 0x81 /* GPIO输入寄存器 */
#define GPIO_OUT_REG 0x82 /* GPIO输出寄存器 */
#define GPIO_CLR_REG 0x83 /* GPIO输出清除: 0=keep, 1=clear */
#define GPIO_PU_REG 0x84 /* GPIO上拉使能寄存器 */
#define GPIO_PD_REG 0x85 /* GPIO下拉使能寄存器 */
/* 功能参数 */
#define FUN_PARA_FLAG_TCP_SERVER (1<<1) /* tcp server 多连接模式标志0X44版本及以后支持 */
#define FUN_PARA_FLAG_LOW_PWR (1<<2) /* 低耗能模式 */
#define SOCK_CTRL_FLAG_SOCKET_CLOSE (1<<3) /* CH395不主动关闭Socket */
#define SOCK_DISABLE_SEND_OK_INT (1<<4) /* send ok中断控制位为1表示关闭send ok中断 */
/* 功能参数 */
#define FUN_PARA_FLAG_TCP_SERVER (1<<1) /* tcp server 多连接模式标志0X44版本及以后支持 */
#define FUN_PARA_FLAG_LOW_PWR (1<<2) /* 低耗能模式 */
#define SOCK_CTRL_FLAG_SOCKET_CLOSE (1<<3) /* CH395不主动关闭Socket */
#define SOCK_DISABLE_SEND_OK_INT (1<<4) /* send ok中断控制位为1表示关闭send ok中断 */
#ifdef __cplusplus
}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -215,6 +215,11 @@
<WinNumber>1</WinNumber>
<ItemText>ao_blf2</ItemText>
</Ww>
<Ww>
<count>13</count>
<WinNumber>1</WinNumber>
<ItemText>reconnect_times,0x0A</ItemText>
</Ww>
</WatchWindow1>
<Tracepoint>
<THDelay>0</THDelay>

Binary file not shown.

View File

@ -29,7 +29,7 @@ Project File Date: 04/09/2025
Build target 'VOQC'
compiling ch395.c...
linking...
Program Size: Code=41346 RO-data=514 RW-data=544 ZI-data=10080
Program Size: Code=40974 RO-data=514 RW-data=548 ZI-data=10084
FromELF: creating hex file...
"VOQC\VOQC.axf" - 0 Error(s), 0 Warning(s).
@ -54,7 +54,7 @@ Package Vendor: Keil
<h2>Collection of Component Files used:</h2>
* Component: ARM::CMSIS:CORE@5.6.0
Build Time Elapsed: 00:00:10
Build Time Elapsed: 00:00:08
</pre>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
<title>Static Call Graph - [VOQC\VOQC.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image VOQC\VOQC.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Wed Apr 16 16:01:34 2025
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060960: Last Updated: Thu Apr 17 17:54:33 2025
<BR><P>
<H3>Maximum Stack Usage = 2392 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@ -940,8 +940,8 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_ipv4
<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_hardware_init
<LI><a href="#[a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_ms
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[133]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_dhcp_enable
<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_init
@ -1018,14 +1018,14 @@ Global Symbols
<LI><a href="#[9d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ads1256_read_byte
<LI><a href="#[99]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADS1256WREG
<LI><a href="#[97]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADS1256ReadData
<LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_cmd_status
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_socket_int
<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_recv_length
@ -1779,13 +1779,13 @@ Global Symbols
</UL>
<BR>[Calls]<UL><LI><a href="#[10e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ads1220_setchannl
<LI><a href="#[10c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ads1220_readdata
<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[10d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ldivmod
<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
<LI><a href="#[111]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_l2d
<LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
<LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
</UL>
<BR>[Called By]<UL><LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;analog_gather
</UL>
@ -1859,10 +1859,10 @@ Global Symbols
</UL>
<BR>[Calls]<UL><LI><a href="#[119]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ads1256_init
<LI><a href="#[97]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADS1256ReadData
<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[118]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
<LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
</UL>
<BR>[Called By]<UL><LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;analog_gather
</UL>
@ -2038,7 +2038,6 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_ipv4
<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_hardware_init
<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[12f]"></a>ch395_cmd_reset</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, ch395cmd.o(i.ch395_cmd_reset))
@ -2049,7 +2048,6 @@ Global Symbols
</UL>
<BR>[Called By]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_ipv4
<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_hardware_init
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[130]"></a>ch395_cmd_set_gw_ipaddr</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_cmd_set_gw_ipaddr))
@ -2110,8 +2108,8 @@ Global Symbols
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_read_data
</UL>
<BR>[Called By]<UL><LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<BR>[Called By]<UL><LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[133]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_dhcp_enable
<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_init
@ -2179,6 +2177,7 @@ Global Symbols
<LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2printf
</UL>
<BR>[Called By]<UL><LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[13a]"></a>ch395_init</STRONG> (Thumb, 134 bytes, Stack size 8 bytes, ch395.o(i.ch395_init))
@ -2188,6 +2187,7 @@ Global Symbols
<BR>[Calls]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
</UL>
<BR>[Called By]<UL><LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[13c]"></a>ch395_interrupt_handler</STRONG> (Thumb, 152 bytes, Stack size 8 bytes, ch395.o(i.ch395_interrupt_handler))
@ -2236,7 +2236,6 @@ Global Symbols
<LI><a href="#[13e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_cnt
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[142]"></a>ch395_open_socket</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_open_socket))
@ -2250,7 +2249,6 @@ Global Symbols
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_interrupt
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[6a]"></a>ch395_phy_status</STRONG> (Thumb, 90 bytes, Stack size 8 bytes, ch395.o(i.ch395_phy_status))
@ -2288,27 +2286,18 @@ Global Symbols
<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_read_data
</UL>
<P><STRONG><a name="[6b]"></a>ch395_reconnection</STRONG> (Thumb, 556 bytes, Stack size 16 bytes, ch395.o(i.ch395_reconnection))
<BR><BR>[Stack]<UL><LI>Max Depth = 200<LI>Call Chain = ch395_reconnection &rArr; ch395_tcp_listen &rArr; ch395_get_cmd_status &rArr; ch395_write_cmd &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
<P><STRONG><a name="[6b]"></a>ch395_reconnection</STRONG> (Thumb, 186 bytes, Stack size 16 bytes, ch395.o(i.ch395_reconnection))
<BR><BR>[Stack]<UL><LI>Max Depth = 224 + Unknown Stack Size
<LI>Call Chain = ch395_reconnection &rArr; ch395_init &rArr; ch395q_socket_config &rArr; ch395_tcp_listen &rArr; ch395_get_cmd_status &rArr; ch395_write_cmd &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_init
<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_hardware_init
<LI><a href="#[133]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_dhcp_enable
<LI><a href="#[12f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_reset
<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_init
<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_close_socket
<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_r_s_buf_modify
<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_set
</UL>
<BR>[Address Reference Count : 1]<UL><LI> ch395.o(i.ch395_hardware_init)
</UL>
<P><STRONG><a name="[14b]"></a>ch395_send_data</STRONG> (Thumb, 68 bytes, Stack size 24 bytes, ch395cmd.o(i.ch395_send_data))
<P><STRONG><a name="[145]"></a>ch395_send_data</STRONG> (Thumb, 68 bytes, Stack size 24 bytes, ch395cmd.o(i.ch395_send_data))
<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2326,7 +2315,7 @@ Global Symbols
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
</UL>
<P><STRONG><a name="[14c]"></a>ch395_set_keeplive</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_keeplive))
<P><STRONG><a name="[146]"></a>ch395_set_keeplive</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_keeplive))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_keeplive &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_data
@ -2335,7 +2324,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_interrupt
</UL>
<P><STRONG><a name="[145]"></a>ch395_set_socket_desip</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_desip))
<P><STRONG><a name="[147]"></a>ch395_set_socket_desip</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_desip))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_desip &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2343,10 +2332,9 @@ Global Symbols
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[147]"></a>ch395_set_socket_desport</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_desport))
<P><STRONG><a name="[148]"></a>ch395_set_socket_desport</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_desport))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_desport &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2354,10 +2342,9 @@ Global Symbols
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[146]"></a>ch395_set_socket_prot_type</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_prot_type))
<P><STRONG><a name="[149]"></a>ch395_set_socket_prot_type</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_prot_type))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_prot_type &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2365,10 +2352,9 @@ Global Symbols
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[14d]"></a>ch395_set_socket_recv_buf</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_recv_buf))
<P><STRONG><a name="[14a]"></a>ch395_set_socket_recv_buf</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_recv_buf))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_recv_buf &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_data
@ -2377,7 +2363,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_r_s_buf_modify
</UL>
<P><STRONG><a name="[14e]"></a>ch395_set_socket_send_buf</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_send_buf))
<P><STRONG><a name="[14b]"></a>ch395_set_socket_send_buf</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_send_buf))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_send_buf &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_data
@ -2386,7 +2372,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_r_s_buf_modify
</UL>
<P><STRONG><a name="[148]"></a>ch395_set_socket_sourport</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_sourport))
<P><STRONG><a name="[14c]"></a>ch395_set_socket_sourport</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_set_socket_sourport))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_set_socket_sourport &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2394,10 +2380,9 @@ Global Symbols
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[14f]"></a>ch395_setttl_num</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_setttl_num))
<P><STRONG><a name="[14d]"></a>ch395_setttl_num</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_setttl_num))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = ch395_setttl_num &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_data
@ -2410,11 +2395,11 @@ Global Symbols
<BR><BR>[Stack]<UL><LI>Max Depth = 2368<LI>Call Chain = ch395_socket_interrupt &rArr; modbus_process_tcp &rArr; modbus_analysis_tcp &rArr; writemulticoil_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_process_tcp
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_process_tcp
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_socket_int
<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_recv_length
@ -2426,15 +2411,14 @@ Global Symbols
<P><STRONG><a name="[139]"></a>ch395_socket_r_s_buf_modify</STRONG> (Thumb, 164 bytes, Stack size 8 bytes, ch395.o(i.ch395_socket_r_s_buf_modify))
<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = ch395_socket_r_s_buf_modify &rArr; ch395_set_socket_send_buf &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
</UL>
<BR>[Called By]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_ipv4
<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_hardware_init
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[149]"></a>ch395_tcp_connect</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_tcp_connect))
<P><STRONG><a name="[14f]"></a>ch395_tcp_connect</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_tcp_connect))
<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = ch395_tcp_connect &rArr; ch395_get_cmd_status &rArr; ch395_write_cmd &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2445,10 +2429,9 @@ Global Symbols
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_interrupt
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[14a]"></a>ch395_tcp_listen</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_tcp_listen))
<P><STRONG><a name="[150]"></a>ch395_tcp_listen</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, ch395cmd.o(i.ch395_tcp_listen))
<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = ch395_tcp_listen &rArr; ch395_get_cmd_status &rArr; ch395_write_cmd &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@ -2459,7 +2442,6 @@ Global Symbols
</UL>
<BR>[Called By]<UL><LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395q_socket_config
<LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_socket_interrupt
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
</UL>
<P><STRONG><a name="[125]"></a>ch395_write_cmd</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, ch395.o(i.ch395_write_cmd))
@ -2469,18 +2451,18 @@ Global Symbols
<LI><a href="#[9c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
<LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_read_write_byte
</UL>
<BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Called By]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_cmd_status
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_intvl
<LI><a href="#[13f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_idle
@ -2507,17 +2489,17 @@ Global Symbols
</UL>
<BR>[Calls]<UL><LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_read_write_byte
</UL>
<BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<BR>[Called By]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_setttl_num
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_send_buf
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_recv_buf
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_keeplive
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_intvl
<LI><a href="#[13f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_keeplive_idle
@ -2547,12 +2529,12 @@ Global Symbols
<LI>Call Chain = ch395q_socket_config &rArr; ch395_tcp_listen &rArr; ch395_get_cmd_status &rArr; ch395_write_cmd &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_listen
<LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_tcp_connect
<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_sourport
<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_prot_type
<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desport
<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_set_socket_desip
<LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_open_socket
<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_set_maskaddr
<LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_set_ipaddr
@ -2626,7 +2608,6 @@ Global Symbols
<LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_get_recv_data
<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_cmd_get_glob_int_status_all
<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_write_cmd
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_reconnection
<LI><a href="#[109]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_74hc165_read_byte
<LI><a href="#[159]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hc595_write_data
<LI><a href="#[15a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;disp_out
@ -2986,7 +2967,7 @@ Global Symbols
<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;readcoilstate_tcp
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
</UL>
<BR>[Called By]<UL><LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_process_tcp
<BR>[Called By]<UL><LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_process_tcp
</UL>
<P><STRONG><a name="[180]"></a>modbus_errfunction_rtu</STRONG> (Thumb, 112 bytes, Stack size 1048 bytes, modbus_rtu.o(i.modbus_errfunction_rtu))
@ -3010,7 +2991,7 @@ Global Symbols
<P><STRONG><a name="[18a]"></a>modbus_errfunction_tcp</STRONG> (Thumb, 156 bytes, Stack size 1040 bytes, modbus_tcp.o(i.modbus_errfunction_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 1224<LI>Call Chain = modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
</UL>
<BR>[Called By]<UL><LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;writesinglereg_tcp
@ -3033,7 +3014,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_PeriodElapsedCallback
</UL>
<P><STRONG><a name="[150]"></a>modbus_process_tcp</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, modbus_tcp.o(i.modbus_process_tcp))
<P><STRONG><a name="[14e]"></a>modbus_process_tcp</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, modbus_tcp.o(i.modbus_process_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2344<LI>Call Chain = modbus_process_tcp &rArr; modbus_analysis_tcp &rArr; writemulticoil_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_analysis_tcp
@ -3083,7 +3064,7 @@ Global Symbols
<P><STRONG><a name="[182]"></a>readcoilstate_tcp</STRONG> (Thumb, 394 bytes, Stack size 1072 bytes, modbus_tcp.o(i.readcoilstate_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2296<LI>Call Chain = readcoilstate_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
@ -3107,7 +3088,7 @@ Global Symbols
<P><STRONG><a name="[183]"></a>readdisinputstate_tcp</STRONG> (Thumb, 386 bytes, Stack size 1072 bytes, modbus_tcp.o(i.readdisinputstate_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2296<LI>Call Chain = readdisinputstate_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetOneDisInputVal
@ -3130,7 +3111,7 @@ Global Symbols
<P><STRONG><a name="[184]"></a>readholdreg_tcp</STRONG> (Thumb, 328 bytes, Stack size 1064 bytes, modbus_tcp.o(i.readholdreg_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2288<LI>Call Chain = readholdreg_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetHoldRegData
@ -3153,7 +3134,7 @@ Global Symbols
<P><STRONG><a name="[185]"></a>readinputreg_tcp</STRONG> (Thumb, 320 bytes, Stack size 1064 bytes, modbus_tcp.o(i.readinputreg_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2288<LI>Call Chain = readinputreg_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetInputRegData
@ -3263,7 +3244,7 @@ Global Symbols
<P><STRONG><a name="[187]"></a>writemulticoil_tcp</STRONG> (Thumb, 410 bytes, Stack size 1080 bytes, modbus_tcp.o(i.writemulticoil_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2304<LI>Call Chain = writemulticoil_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteOneCoilData
@ -3286,7 +3267,7 @@ Global Symbols
<P><STRONG><a name="[188]"></a>writemultireg_tcp</STRONG> (Thumb, 320 bytes, Stack size 1064 bytes, modbus_tcp.o(i.writemultireg_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2288<LI>Call Chain = writemultireg_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteHoldRegData
@ -3309,7 +3290,7 @@ Global Symbols
<P><STRONG><a name="[189]"></a>writesinglecoil_tcp</STRONG> (Thumb, 244 bytes, Stack size 1056 bytes, modbus_tcp.o(i.writesinglecoil_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2280<LI>Call Chain = writesinglecoil_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteOneCoilData
@ -3332,7 +3313,7 @@ Global Symbols
<P><STRONG><a name="[186]"></a>writesinglereg_tcp</STRONG> (Thumb, 234 bytes, Stack size 1056 bytes, modbus_tcp.o(i.writesinglereg_tcp))
<BR><BR>[Stack]<UL><LI>Max Depth = 2280<LI>Call Chain = writesinglereg_tcp &rArr; modbus_errfunction_tcp &rArr; ch395_send_data &rArr; ch395_write_data &rArr; ch395_read_write_byte &rArr; spi2_read_write_byte &rArr; HAL_SPI_TransmitReceive &rArr; SPI_EndRxTxTransaction &rArr; SPI_WaitFlagStateUntilTimeout
</UL>
<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<BR>[Calls]<UL><LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ch395_send_data
<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;modbus_errfunction_tcp
<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteHoldRegData

File diff suppressed because it is too large Load Diff

View File

@ -46,7 +46,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -114,7 +114,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -164,7 +164,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -214,7 +214,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -264,7 +264,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -314,7 +314,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
F (../Core/Src/tim.c)(0x67EA3A29)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\tim.o --omf_browse voqc\tim.crf --depend voqc\tim.d)
@ -362,7 +362,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -411,7 +411,7 @@ I (../modbus/Inc/modbus.h)(0x67F6318A)
I (../users/Inc/uarts.h)(0x66B30E3E)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -460,7 +460,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -510,7 +510,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1375,7 +1375,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1425,7 +1425,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1479,7 +1479,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1530,7 +1530,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1584,7 +1584,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
F (..\board\Src\ds18b20.c)(0x6694E519)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\ds18b20.o --omf_browse voqc\ds18b20.crf --depend voqc\ds18b20.d)
@ -1633,7 +1633,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1683,7 +1683,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1733,7 +1733,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1785,13 +1785,13 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (../board/Inc/ms5803.h)(0x669760FF)
F (..\CH395Q\ch395.c)(0x67FF63D3)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\ch395.o --omf_browse voqc\ch395.crf --depend voqc\ch395.d)
F (..\CH395Q\ch395.c)(0x6800CFC9)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\ch395.o --omf_browse voqc\ch395.crf --depend voqc\ch395.d)
I (..\CH395Q\ch395.h)(0x67E5F98B)
I (..\CH395Q\ch395inc.h)(0x67E5F98B)
I (..\CH395Q\ch395inc.h)(0x6800CA4E)
I (../Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h)(0x66B41EAC)
I (../Core/Inc/stm32f4xx_hal_conf.h)(0x66C2E5B0)
I (../Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h)(0x66B41EAC)
@ -1840,7 +1840,7 @@ I (../Core/Inc/spi.h)(0x668F85FC)
I (..\CH395Q\ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
F (..\CH395Q\ch395cmd.c)(0x67E5F98B)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\ch395cmd.o --omf_browse voqc\ch395cmd.crf --depend voqc\ch395cmd.d)
I (..\CH395Q\ch395inc.h)(0x67E5F98B)
I (..\CH395Q\ch395inc.h)(0x6800CA4E)
I (../Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h)(0x66B41EAC)
I (../Core/Inc/stm32f4xx_hal_conf.h)(0x66C2E5B0)
I (../Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h)(0x66B41EAC)
@ -1885,7 +1885,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
I (../Core/Inc/spi.h)(0x668F85FC)
@ -1934,7 +1934,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -1983,7 +1983,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2032,14 +2032,14 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
F (..\modbus\Inc\modbus.h)(0x67F6318A)()
F (..\CH395Q\ch395.h)(0x67E5F98B)()
F (..\CH395Q\ch395cmd.h)(0x664FF969)()
F (..\CH395Q\ch395inc.h)(0x67E5F98B)()
F (..\CH395Q\ch395inc.h)(0x6800CA4E)()
F (..\users\Src\adcs.c)(0x66EA886D)(--c99 -c --cpu Cortex-M4.fp.sp -g -O0 -Otime --apcs=interwork --split_sections -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../board/Inc -I ../CH395Q -I ../modbus/Inc -I ../users/Inc -I.\RTE\_VOQC -IC:\Users\admin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include -IC:\Users\admin\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.15.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION="539" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o voqc\adcs.o --omf_browse voqc\adcs.crf --depend voqc\adcs.d)
I (../users/Inc/adcs.h)(0x66C3E770)
I (../Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h)(0x66B41EAC)
@ -2087,7 +2087,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2144,7 +2144,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2196,7 +2196,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2244,7 +2244,7 @@ I (../users/Inc/timer.h)(0x67FF6230)
I (../Core/Inc/tim.h)(0x6694D67D)
I (../modbus/Inc/modbus.h)(0x67F6318A)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2295,7 +2295,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2348,7 +2348,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)
@ -2398,7 +2398,7 @@ I (../users/Inc/uarts.h)(0x66B30E3E)
I (../Core/Inc/usart.h)(0x668F85FD)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\stdio.h)(0x5E8E3CC2)
I (../CH395Q/ch395.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x67E5F98B)
I (../CH395Q/ch395inc.h)(0x6800CA4E)
I (../Core/Inc/spi.h)(0x668F85FC)
I (../CH395Q/ch395cmd.h)(0x664FF969)
I (C:\Users\admin\Desktop\wujunchao\99_General softwares\Keil_v5\ARM\ARM Compiler_5_06\include\string.h)(0x5E8E3CC2)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.