From e7101a7064d3e6da5a946d64bb0e43a77377e2f0 Mon Sep 17 00:00:00 2001 From: WXK <287788329@qq.com> Date: 星期四, 22 五月 2025 18:11:43 +0800 Subject: [PATCH] 1.22,提交,待测试,给张博先修改 --- keil/include/components/internet/src/AIR780EDriver.c | 99 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 88 insertions(+), 11 deletions(-) diff --git a/keil/include/components/internet/src/AIR780EDriver.c b/keil/include/components/internet/src/AIR780EDriver.c index 6217f01..d377607 100644 --- a/keil/include/components/internet/src/AIR780EDriver.c +++ b/keil/include/components/internet/src/AIR780EDriver.c @@ -19,18 +19,18 @@ #include "HIDO_Util.h" #include "HIDO_Debug.h" #include "HIDO_Log.h" - +#include "DBG.h" /******************************************************************************* * Macro * *******************************************************************************/ /* 串口相关 */ #define AIR780E_UART_TX_BUF_SIZE (100) /* 串口未使用DMA模式,不需要buff */ -#define AIR780E_UART_RX_BUF_SIZE (1024) -#define AIR780E_UART_TX_QUEUE_MEMBER_CNT 8 /* 串口未使用DMA模式,不需要 */ +#define AIR780E_UART_RX_BUF_SIZE (1024 * 2 + 512) +#define AIR780E_UART_TX_QUEUE_MEMBER_CNT 16 /* 串口未使用DMA模式,不需要 */ /* AT相关 */ -#define AIR780E_AT_SEND_BUF_SIZE (128) /* 发送的单条AT指令的最大长度 */ -#define AIR780E_AT_RECV_BUF_SIZE (128) /* 单挑AT指令 */ +#define AIR780E_AT_SEND_BUF_SIZE ((5 * 1024) + 512) /* 发送的单条AT指令的最大长度 */ +#define AIR780E_AT_RECV_BUF_SIZE ((5 * 1024) + 512) /* 单挑AT指令 */ /******************************************************************************* * Type Definition * @@ -334,13 +334,13 @@ { if((_pstATDevice->m_u32LineLen > 0) && (_pstATDevice->m_pcLineBuf[_pstATDevice->m_u32LineLen - 1] == '\n')) { - if(log_4g_enable_flag) + if(log_4g_enable_flag&&DBG_GetMode() == DBG_MODE_SHELL) LOG_INFO(TRACE_MODULE_APP, "[AT Recv] %s", _pstATDevice->m_pcLineBuf);//修改4G //HIDO_Debug( "[AT Recv] %s", _pstATDevice->m_pcLineBuf); } else { - if(log_4g_enable_flag) + if(log_4g_enable_flag&&DBG_GetMode() == DBG_MODE_SHELL) LOG_INFO(TRACE_MODULE_APP, "[AT Recv] %s\r\n", _pstATDevice->m_pcLineBuf);//修改4G //HIDO_Debug("[AT Recv] %s\r\n", _pstATDevice->m_pcLineBuf); } @@ -370,13 +370,13 @@ if((_u32Len > 0) && (_pu8Data[_u32Len - 1] == '\n')) { // HIDO_Debug("[AT Send] %s", _pu8Data); - if(log_4g_enable_flag) + if(log_4g_enable_flag&&DBG_GetMode() == DBG_MODE_SHELL) LOG_INFO(TRACE_MODULE_APP, "[AT Send] %s", _pu8Data);//修改4G } else { // HIDO_Debug("[AT Send] %s\r\n", _pu8Data); - if(log_4g_enable_flag) + if(log_4g_enable_flag&&DBG_GetMode() == DBG_MODE_SHELL) LOG_INFO(TRACE_MODULE_APP, "[AT Send] %s", _pu8Data);//修改4G } } @@ -534,7 +534,7 @@ // HIDO_Log(HIDO_LOG_LEVEL_DEBUG, "%s", acBuff); //HIDO_Debug(acBuff); -if(log_4g_enable_flag) +if(log_4g_enable_flag&&DBG_GetMode() == DBG_MODE_SHELL) LOG_INFO(TRACE_MODULE_APP, acBuff);//修改4G return HIDO_OK; @@ -565,6 +565,10 @@ * Author : 杜键 * Modified Date: : 2018年5月22日 *******************************************************************************/ +//#ifdef _UWB_4G +//#else +//#endif +#ifdef _GPS_115200 void AIR780EUartInit(void) { ST_UartInit stUartInit; @@ -577,7 +581,7 @@ stUartInit.m_pu8TxBuf = l_au8AIR780EUartTxBuf; stUartInit.m_u32TxBufSize = AIR780E_UART_TX_BUF_SIZE; stUartInit.m_u32TxQueueMemberCnt = AIR780E_UART_TX_QUEUE_MEMBER_CNT; - stUartInit.m_u32BaudRate = 9600; + stUartInit.m_u32BaudRate = 115200; if(Uart_Init(UART_ID_4G, &stUartInit) != HIDO_OK) { @@ -636,3 +640,76 @@ return HIDO_OK; } +#else +void AIR780EUartInit(void) +{ + ST_UartInit stUartInit; + + /* 串口初始化 */ + stUartInit.m_eRxMode = UART_RX_MODE_INT; + stUartInit.m_eTxMode = UART_TX_MODE_POLL; + stUartInit.m_pu8RxBuf = l_au8AIR780EUartRxBuf; + stUartInit.m_u32RxBufSize = AIR780E_UART_RX_BUF_SIZE; + stUartInit.m_pu8TxBuf = l_au8AIR780EUartTxBuf; + stUartInit.m_u32TxBufSize = AIR780E_UART_TX_BUF_SIZE; + stUartInit.m_u32TxQueueMemberCnt = AIR780E_UART_TX_QUEUE_MEMBER_CNT; + stUartInit.m_u32BaudRate = 9600; + if(Uart_Init(UART_ID_4G, &stUartInit) != HIDO_OK) + { + + } +} +HIDO_INT32 AIR780EDriver_Init(void) +{ + ST_UartInit stUartInit; + + /* 串口初始化 */ + stUartInit.m_eRxMode = UART_RX_MODE_INT; + stUartInit.m_eTxMode = UART_TX_MODE_POLL; + stUartInit.m_pu8RxBuf = l_au8AIR780EUartRxBuf; + stUartInit.m_u32RxBufSize = AIR780E_UART_RX_BUF_SIZE; + stUartInit.m_pu8TxBuf = l_au8AIR780EUartTxBuf; + stUartInit.m_u32TxBufSize = AIR780E_UART_TX_BUF_SIZE; + stUartInit.m_u32TxQueueMemberCnt = AIR780E_UART_TX_QUEUE_MEMBER_CNT; + stUartInit.m_u32BaudRate = 9600; + if(Uart_Init(UART_ID_4G, &stUartInit) != HIDO_OK) + { + return HIDO_ERR; + } + + /* 定时器初始化 */ + if (HIDO_TimerCreate(&l_stDriverData.m_u32FSMTimerID) != HIDO_OK) + { + return HIDO_ERR; + } + + /* AT驱动初始化 */ + HIDO_ATLiteDeviceInitStruct stATInit; + + stATInit.m_pstFSM = HIDO_FSM(AIR780E); + stATInit.m_pstAtSets = l_astATCmdSetList; + stATInit.m_u32AtSetsCount = HIDO_ARRARY_COUNT(l_astATCmdSetList); + stATInit.m_fnGetc = AIR780E_GetChar; + stATInit.m_fnReadLine = AIR780E_ReadLine; + stATInit.m_fnOutput = AIR780E_Output; + stATInit.m_pcSendBuf = (HIDO_CHAR *) l_au8ATSendBuf; + stATInit.m_u32SendBufSize = HIDO_ARRARY_COUNT(l_au8ATSendBuf); + stATInit.m_pcLineBuf = (HIDO_CHAR *) l_au8ATRecvBuf; + stATInit.m_u32LineBufSize = HIDO_ARRARY_COUNT(l_au8ATRecvBuf); + stATInit.m_pUserData = &l_stDriverData; + + /* AT设备初始化 */ + if (HIDO_ATLiteDeviceInit(&l_stAIR780EDevice, &stATInit) != HIDO_OK) + { + return HIDO_ERR; + } + + /* 状态机初始化 */ + HIDO_FSMRegister(HIDO_FSM(AIR780E), HIDO_FSM_STATE(AIR780E), "AIR780E", l_apcEventName, &l_stAIR780EDevice, + HIDO_FSM_DBG_FLAG_ON); + + HIDO_FSMRegisterDebugFunc(HIDO_FSM(AIR780E), AIR780EDriver_FSMDebug); + + return HIDO_OK; +} +#endif -- Gitblit v1.9.3