1. 增加日志等级

This commit is contained in:
coffee 2025-10-30 16:56:02 +08:00
parent 7201a8629a
commit 808e05cd07
4 changed files with 26 additions and 15 deletions

View File

@ -68,6 +68,8 @@
#define LogHexData(data, len)
#endif
#define LogTVHex(data, len) HDLogHexType((const uint8_t *)data, len, 1, NULL, kLogLevelTVHex)
// 仅用于兼容旧版, 实际不输出数据
#define qDebugWin(A, B)
#define OutputFunInfo
@ -95,6 +97,7 @@ typedef enum eLogLevel {
kLogLevelStack, ///< 打印栈大小信息
kLogLevelHeap, ///< 打印堆大小信息
kLogLevelTrace, ///< trace级别日志
kLogLevelTVHex, ///< TV Hex 日志
kLogLevelMax,
} eLogLevel;
@ -146,6 +149,7 @@ uint8_t HDLogCheckFpgaHeader(const uint8_t *data, int len);
* @param offset , NULL
**/
void HDLogHex(const uint8_t *data, int len, uint8_t checkPrint, uint32_t *offset);
void HDLogHexType(const uint8_t *data, int len, uint8_t checkPrint, uint32_t *offset, uint8_t logLevel);
/**
* @brief 16, 16

View File

@ -17,6 +17,7 @@
#define __HDRPC_H__
#include <stdint.h>
#include <string.h>
// 设置超时时间
#ifndef HDRPC_TIMEOUT
@ -293,7 +294,7 @@ void HDRPCReadCallData(void *data, uint16_t len);
* @param timeout
* @return int16_t id索引(-1)
*/
int16_t _HDRPCSendData(HDRPCSession *session, uint16_t funcCode, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout);
HDRPCIndexId_t _HDRPCSendData(HDRPCSession *session, uint16_t funcCode, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout);
#define HDRPCSendData(session, code, func) _HDRPCSendData(session, code, func, #func, sizeof(#func) - 1, NULL)
#define HDRPCSendDataNotCall(session, code) _HDRPCSendData(session, code, NULL, NULL, 0, NULL)
#define HDRPCSendDataTimeout(session, code, func, timeout) _HDRPCSendData(session, code, func, #func, sizeof(#func) - 1, timeout)
@ -312,20 +313,20 @@ uint16_t HDRPCConvSendData(HDRPCSession *session, uint8_t *data, uint16_t len);
* @brief idIndex id索引
* @brief delayMs (ms)
*/
void HDRPCSetDelayTime(int16_t idIndex, uint16_t delayMs);
void HDRPCSetDelayTime(HDRPCIndexId_t idIndex, uint16_t delayMs);
/**
* @brief
* @brief idIndex id索引
*/
void HDRPCRemoveTask(int16_t idIndex);
void HDRPCRemoveTask(HDRPCIndexId_t idIndex);
/**
* @brief
* @param idIndex id索引
* @return NULL
*/
HDRPCCallback HDRPCGetCallBack(int16_t idIndex);
HDRPCCallback HDRPCGetCallBack(HDRPCIndexId_t idIndex);
/**
* @brief RPC,

View File

@ -45,6 +45,7 @@ static HShellMatch sLogMatch[] = {
HSHELL_MATCH_ITEM(kLogLevelDebug, "logDebug"),
HSHELL_MATCH_ITEM(kLogLevelError, "logError"),
HSHELL_MATCH_ITEM(kLogLevelHex, "logHex"),
HSHELL_MATCH_ITEM(kLogLevelTVHex, "logTVHex"),
HSHELL_MATCH_ITEM(kLogLevelStack, "logStack"),
HSHELL_MATCH_ITEM(kLogLevelHeap, "logHeap"),
#if USE_HD_FPGA_CHECK
@ -101,9 +102,9 @@ static uint32_t *GetFpgaType(uint8_t type, uint8_t isWrite)
}
#endif
static void LogHex(const uint8_t *data, int len, uint8_t checkPrint, uint32_t *offset, uint8_t lock)
static void LogHex(const uint8_t *data, int len, uint8_t checkPrint, uint8_t logLevel, uint32_t *offset, uint8_t lock)
{
if (checkPrint && HBitGet(sLogItem, kLogLevelHex) == 0)
if (checkPrint && HBitGet(sLogItem, logLevel) == 0)
{
return;
}
@ -461,7 +462,7 @@ uint8_t HDLogPrintFpga(const uint8_t *data, int len, uint8_t isWrite, uint8_t ch
const char *opt = isWrite ? "write" : "read";
printf("%s[%u], typeCount[%u] - type[%02X], sendCard[%d], netPort[%d], cardNumber[%d], subFunc[%04X], group[%04X], effectLen[%d]\r\n", opt, count, typeCount, type, sendCard, port, recvCardNumber, subFunc, group, effectLen);
LogHex((const uint8_t *)(data) + 17, (len) - 21, 1, NULL, 0);
LogHex((const uint8_t *)(data) + 17, (len) - 21, 1, kLogLevelHex, NULL, 0);
LOG_UNLOCK();
return 1;
}
@ -469,7 +470,12 @@ uint8_t HDLogPrintFpga(const uint8_t *data, int len, uint8_t isWrite, uint8_t ch
void HDLogHex(const uint8_t *data, int len, uint8_t checkPrint, uint32_t *offset)
{
LogHex(data, len, checkPrint, offset, 1);
LogHex(data, len, checkPrint, kLogLevelHex, offset, 1);
}
void HDLogHexType(const uint8_t *data, int len, uint8_t checkPrint, uint32_t *offset, uint8_t logLevel)
{
LogHex(data, len, checkPrint, logLevel, offset, 1);
}
void HDLogData(const uint8_t *data, int len, uint8_t checkPrint)

View File

@ -157,8 +157,8 @@ static void Call(HDRPCSession *session, uint16_t exception) {
}
}
static int16_t AddCall(HDRPCSession *session, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout) {
int16_t result = -1;
static HDRPCIndexId_t AddCall(HDRPCSession *session, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout) {
HDRPCIndexId_t result = -1;
if (session == NULL || callBack == NULL || nameLen == 0) {
LogD("funcName[%s], len[%d] add Faild", funcName, nameLen);
return result;
@ -693,9 +693,9 @@ void HDRPCReadCallData(void *data, uint16_t len)
ParseReadDataCall(session, data, len);
}
int16_t _HDRPCSendData(HDRPCSession *session, uint16_t funcCode, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout)
HDRPCIndexId_t _HDRPCSendData(HDRPCSession *session, uint16_t funcCode, HDRPCCallback callBack, const char *funcName, uint8_t nameLen, HDRPCTimeoutCall timeout)
{
int16_t result = -1;
HDRPCIndexId_t result = -1;
if (sInfo.writeCall == NULL) {
LogD("Write Call is nullptr");
return result;
@ -750,7 +750,7 @@ uint16_t HDRPCConvSendData(HDRPCSession *session, uint8_t *data, uint16_t len)
return useLen;
}
void HDRPCSetDelayTime(int16_t idIndex, uint16_t delayMs)
void HDRPCSetDelayTime(HDRPCIndexId_t idIndex, uint16_t delayMs)
{
if (idIndex < 0 || idIndex >= sInfo.callLen) {
LogD("Invalid idIndex[%d]", idIndex);
@ -760,7 +760,7 @@ void HDRPCSetDelayTime(int16_t idIndex, uint16_t delayMs)
sInfo.localCallBuffer[idIndex].delayMs = delayMs;
}
HDRPCCallback HDRPCGetCallBack(int16_t idIndex)
HDRPCCallback HDRPCGetCallBack(HDRPCIndexId_t idIndex)
{
if (idIndex < 0 || idIndex >= sInfo.callLen) {
LogD("Invalid idIndex[%d], len[%d]", idIndex, sInfo.callLen);
@ -770,7 +770,7 @@ HDRPCCallback HDRPCGetCallBack(int16_t idIndex)
return sInfo.localCallBuffer[idIndex].callback;
}
void HDRPCRemoveTask(int16_t idIndex)
void HDRPCRemoveTask(HDRPCIndexId_t idIndex)
{
if (idIndex < 0 || idIndex >= sInfo.callLen) {
LogD("Invalid idIndex[%d]", idIndex);