From b12f7e7c1514077ab1ac4a66b1b2cea8f3c21a56 Mon Sep 17 00:00:00 2001 From: chen <15335560115@163.com> Date: 星期一, 03 三月 2025 17:28:33 +0800 Subject: [PATCH] 初步解决按钮第二行到第四行没法相应的问题 --- keil/include/components/hal/UART.c | 34 ++++++++++++++++------------------ 1 files changed, 16 insertions(+), 18 deletions(-) diff --git a/keil/include/components/hal/UART.c b/keil/include/components/hal/UART.c index afe11f7..f8a7388 100644 --- a/keil/include/components/hal/UART.c +++ b/keil/include/components/hal/UART.c @@ -146,7 +146,7 @@ l_astUartInfo[_eUartID].m_mutexLock = osMutexCreate(HIDO_NULL); #endif -struct UART_CFG_T uart_cfg = + struct UART_CFG_T uart_cfg = { .parity = UART_PARITY_NONE, .stop = UART_STOP_BITS_1, @@ -337,25 +337,14 @@ *******************************************************************************/ static void uart_receive_callback(void *dev, uint32_t err_code) { - E_UartID eUartID = (E_UartID) 0; + E_UartID eUartID = UART_ID_4G; + + HIDO_UINT8 u8RecvByte = l_astUartInfo[eUartID].m_u8RxValue; - for (eUartID = (E_UartID) 0; eUartID < UART_ID_LAST; eUartID++) - { - if (l_astUartInfo[eUartID].m_eUartPort == *(enum UART_DEV_T *)dev) - { - if(UART_RX_MODE_INT == l_astUartInfo[eUartID].m_eRxMode) - { - HIDO_UINT8 u8RecvByte = l_astUartInfo[eUartID].m_u8RxValue; + HIDO_ArraryQueueIn(&l_astUartInfo[eUartID].m_stRxArraryQueue, &u8RecvByte); - HIDO_ArraryQueueIn(&l_astUartInfo[eUartID].m_stRxArraryQueue, &u8RecvByte); - - /* 启动INT接收 */ - uart_receive(l_astUartInfo[eUartID].m_eUartPort, &l_astUartInfo[eUartID].m_u8RxValue, 1, uart_receive_callback); - } - - break; - } - } + /* 启动INT接收 */ + uart_receive(l_astUartInfo[eUartID].m_eUartPort, &l_astUartInfo[eUartID].m_u8RxValue, 1, uart_receive_callback); } /******************************************************************************* @@ -472,3 +461,12 @@ return i32Result; } +HIDO_VOID HIDO_Lock(void) +{ + int_lock(); +} +HIDO_VOID HIDO_UnLock(void) +{ + uint32_t lock = int_lock(); + int_unlock(lock); +} -- Gitblit v1.9.3