feat:TFTP升级 - 配置文件OK

1、TFTP升级 - 配置文件初步测试没问题

​ 2、配置文件内容解析移植完毕,调试中

​ 3、TFTP升级 - 是否一个套接字搞定,不需要使用两个套接字,待完成
This commit is contained in:
caocong
2025-12-25 20:25:57 +08:00
parent cc8783e9f8
commit 63ebdb7baa
19 changed files with 1329 additions and 73 deletions

View File

@@ -18,7 +18,7 @@ uint16_t srcport = 1000; //source port
uint8_t SocketId;
uint8_t socket[WCHNET_MAX_SOCKET_NUM]; //Save the currently connected socket
uint8_t SocketRecvBuf[WCHNET_MAX_SOCKET_NUM][RECE_BUF_LEN]; //socket receive buffer
uint8_t SocketRecvBuf[WCHNET_MAX_SOCKET_NUM][1472]; //socket receive buffer
//<2F><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
WCHNET_INFO_T g_netinfo = {
@@ -94,7 +94,7 @@ void TIM2_IRQHandler(void)
* cb - socket<65>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
* Return : None
*******************************************************************************/
__attribute__((section(".non_0_wait"))) void WCHNET_CreateUdpSocket(uint8_t* S, uint16_t SourPort, pSockRecv cb)
void WCHNET_CreateUdpSocket(uint8_t *S, uint16_t SourPort, pSockRecv cb)
{
uint8_t i;
SOCK_INF TmpSocketInf; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱsocket<65><74><EFBFBD><EFBFBD> */
@@ -112,7 +112,7 @@ __attribute__((section(".non_0_wait"))) void WCHNET_CreateUdpSocket(uint8_t* S,
i = WCHNET_SocketCreat(S, &TmpSocketInf); /* <20><><EFBFBD><EFBFBD>socket<65><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>socket<65><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SocketId<49><64> */
mStopIfError(i);
WCHNET_ModifyRecvBuf(SocketId, (uint32_t) SocketRecvBuf[SocketId], RECE_BUF_LEN);
WCHNET_ModifyRecvBuf(*S, (uint32_t) SocketRecvBuf[*S], RECE_BUF_LEN);
Dbg_Println(DBG_BIT_NET_STATUS_bit,"%s - %d",__func__, *S);
}
@@ -152,9 +152,9 @@ void UDPSocket1_AppCallBack( struct _SOCK_INF * SocketInf,uint32_t ipaddr,uint16
ip[3] = ipaddr>>24;
Dbg_Println(DBG_BIT_NET_STATUS_bit,"ip:%d.%d.%d.%d, port:%d",ip[0], ip[1], ip[2], ip[3], port);
Dbg_Println(DBG_BIT_NET_STATUS_bit,"Socket1 len:%ld",len);
Dbg_Println(DBG_BIT_NET_STATUS_bit,"Socket1 len:%d",len);
Dbg_Print_Buff(DBG_BIT_NET_STATUS_bit,"Recv data:",buff,len);
Dbg_Print_Buff(DBG_BIT_NET_STATUS_bit,"data :",buff,len);
//Udp_Internal_Analysis(buff, len, ip, port);
if(buff[0] == 0xAA)
@@ -162,7 +162,7 @@ void UDPSocket1_AppCallBack( struct _SOCK_INF * SocketInf,uint32_t ipaddr,uint16
switch(buff[1])
{
case 0x55: //<2F>ɵķ<C9B5><C4B7><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>
//Udp_Internal_Analysis(buff, len, ip, port);
Udp_Internal_Analysis(buff, len, ip, port);
break;
case 0x66: //UDP<44><50><EFBFBD><EFBFBD>Э<EFBFBD><D0AD> - 2022-05-31
//UDP_NetServer_Data_Analysis(buff, len, ip, port);
@@ -1055,13 +1055,6 @@ __attribute__((section(".non_0_wait"))) void NetWork_Task(void)
//Udp_Internal_Task(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>
if(SysTick_1s - server_info.con_tick > 10)
{
//<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
server_info.con_tick = SysTick_1s;
Dbg_Println(DBG_BIT_NET_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>...\n");
}
/* -<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* -<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1>״̬<D7B4>£<EFBFBD>PC<50><43><EFBFBD>߻<EFBFBD><DFBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7>Ͳ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
* */
@@ -1087,7 +1080,6 @@ __attribute__((section(".non_0_wait"))) void NetWork_Task(void)
/*<2A>ͷ<EFBFBD><CDB7>׽<EFBFBD><D7BD><EFBFBD>*/
Dbg_Println(DBG_BIT_NET_STATUS_bit,"<EFBFBD>ͷ<EFBFBD><EFBFBD>׽<EFBFBD><EFBFBD><EFBFBD>");
WCHNET_SocketClose(g_netinfo.SocketId[SocketIdnex_BLVSeriver],0x00);
}
break;