fix:修改UDP通讯中,取电变化上报机制

1、问题点:当RCU网络状态异常的情况下,网络还处于协商状态下,还未进入正常通讯环节时,取电变化不会进行判断。这会导致取电变化上报与实际产生取电状态时间点对不上。
2、将BLV_C1F_Module代码上传至Gitea,之前代码修改记录请查看 .\BasicCode\Readme.txt
This commit is contained in:
caocong
2026-01-23 09:23:12 +08:00
commit 95916b9995
622 changed files with 1336094 additions and 0 deletions

View File

@@ -0,0 +1,94 @@
#include "DBG.h"
#include <stdarg.h>
long long SysTick_Now = 0, SysTick_Last = 0, SysTick_Diff = 0;
char Dbg_Buffer[100];
uint32_t Dbg_Switch = (DBG_OPT_ActCond_STATUS << DBG_BIT_ActCond_STATUS_bit) + \
(DBG_OPT_MQTT_STATUS << DBG_BIT_MQTT_STATUS_bit) + \
(DBG_OPT_Debug_STATUS << DBG_BIT_Debug_STATUS_bit) + \
(DBG_OPT_LOGIC_STATUS << DBG_BIT_LOGIC_STATUS_bit) + \
(DBG_OPT_DEVICE_STATUS << DBG_BIT_DEVICE_STATUS_bit) + \
(DBG_OPT_NET_STATUS << DBG_BIT_NET_STATUS_bit) + \
(DBG_OPT_SYS_STATUS << DBG_BIT_SYS_STATUS_bit);
/*******************************************************************************
* Function Name : Dbg_NoTick_Print
* Description : DEBUG<55><47><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӡ
* Input :
* Return :
*******************************************************************************/
void Dbg_NoTick_Print(int DbgOptBit ,const char *cmd, ...)
{
if (DBG_LOG_EN && (Dbg_Switch & (1 << DbgOptBit )))
{
SysTick_Now = SysTick_1ms;
SysTick_Diff = SysTick_Now - SysTick_Last ;
SysTick_Last = SysTick_Now;
va_list args; //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>va_list<73><74><EFBFBD>͵ı<CDB5><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
va_start(args,cmd); //ʹargsָ<73><D6B8><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
vprintf(cmd,args); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vprintf<74>ȴ<EFBFBD>V<EFBFBD><56>
va_end(args); //<2F><><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>ȡ
}
}
void Dbg_Print(int DbgOptBit ,const char *cmd, ...)
{
if (DBG_LOG_EN && (Dbg_Switch & (1 << DbgOptBit )))
{
SysTick_Now = SysTick_1ms;
SysTick_Diff = SysTick_Now - SysTick_Last ;
SysTick_Last = SysTick_Now;
sprintf(Dbg_Buffer,"%8.lld [%6.lld]: ",SysTick_Now,SysTick_Diff);
DBG_Printf("%s",Dbg_Buffer);
va_list args; //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>va_list<73><74><EFBFBD>͵ı<CDB5><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
va_start(args,cmd); //ʹargsָ<73><D6B8><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
vprintf(cmd,args); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vprintf<74>ȴ<EFBFBD>V<EFBFBD><56>
va_end(args); //<2F><><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>ȡ
}
}
void Dbg_Println(int DbgOptBit ,const char *cmd, ...)
{
if (DBG_LOG_EN && (Dbg_Switch & (1 << DbgOptBit )))
{
SysTick_Now = SysTick_1ms;
SysTick_Diff = SysTick_Now - SysTick_Last; //<2F><>һ<EFBFBD>δ<EFBFBD>ӡʱ<D3A1><CAB1><EFBFBD><EFBFBD>
SysTick_Last = SysTick_Now;
sprintf(Dbg_Buffer,"%8.lld [%6.lld]: ",SysTick_Now,SysTick_Diff);
DBG_Printf("%s",Dbg_Buffer);
va_list args; //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>va_list<73><74><EFBFBD>͵ı<CDB5><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6B5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
va_start(args,cmd); //ʹargsָ<73><D6B8><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
vprintf(cmd,args); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vprintf<74>ȴ<EFBFBD>V<EFBFBD><56>
va_end(args); //<2F><><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>ȡ
DBG_Printf("\n\r");
}
}
void Dbg_Print_Buff(int DbgOptBit ,const char *cmd ,uint8_t *buff,uint32_t len)
{
if (DBG_LOG_EN && (Dbg_Switch & (1 << DbgOptBit )))
{
SysTick_Now = SysTick_1ms;
SysTick_Diff = SysTick_Now - SysTick_Last; //<2F><>һ<EFBFBD>δ<EFBFBD>ӡʱ<D3A1><CAB1><EFBFBD><EFBFBD>
SysTick_Last = SysTick_Now;
sprintf(Dbg_Buffer,"%8.lld [%6.lld]: ",SysTick_Now,SysTick_Diff);
DBG_Printf("%s%s",Dbg_Buffer,cmd);
for(uint32_t i=0;i<len;i++)
{
DBG_Printf("%02X ",buff[i]);
}
DBG_Printf("\n\r");
}
}