Обновление

This commit is contained in:
cfif 2026-06-21 18:41:12 +03:00
parent 07abfac963
commit 472890d8bd
2 changed files with 22 additions and 3 deletions

View File

@ -173,7 +173,7 @@ typedef struct
{ {
uint8_t u8TxHandler; /**< one message buffer used one handler, range 0 ~ txMbCnt-1 */ uint8_t u8TxHandler; /**< one message buffer used one handler, range 0 ~ txMbCnt-1 */
uint8_t bWaitTxCompleted;/**< wait transmit complete and clear iflag */ uint8_t bWaitTxCompleted;/**< wait transmit complete and clear iflag */
uint32_t u16WaitTxTimeout; /**< wait transmit complete timeout */ uint16_t u16WaitTxTimeout; /**< wait transmit complete timeout */
uint8_t bEnFd; /**< enable FLEXCAN fd */ uint8_t bEnFd; /**< enable FLEXCAN fd */
uint8_t bEnBrs; /**< enable canfd data bit switch */ uint8_t bEnBrs; /**< enable canfd data bit switch */
uint32_t u32CanId; /**< FLEXCAN id */ uint32_t u32CanId; /**< FLEXCAN id */

View File

@ -2022,8 +2022,11 @@ FLEXCAN_ErrorType FLEXCAN_Stop(uint8_t u8CanIndex)
return tRetVal; return tRetVal;
} }
uint32_t osThreadYield (void);
#include "cmsis_os2.h"
extern osMessageQueueId_t txDataQueueCan0;
extern osMessageQueueId_t txDataQueueCan1;
/** /**
* @brief Transmit data, if tx disable, must call FLEXCAN_TransmitProcess after transmiting * @brief Transmit data, if tx disable, must call FLEXCAN_TransmitProcess after transmiting
* *
@ -2163,6 +2166,21 @@ FLEXCAN_ErrorType FLEXCAN_TransmitData(uint8_t u8CanIndex, const FLEXCAN_TxMsgTy
FLEXCAN_MB_CODE_SET(u32TempAddr, 0x0CU); FLEXCAN_MB_CODE_SET(u32TempAddr, 0x0CU);
if (u8CanIndex == 0) {
uint8_t u8TxHandler;
if (osMessageQueueGet(txDataQueueCan0, &u8TxHandler, NULL, pTxMsg->bWaitTxCompleted) == osOK) {
}
}
if (u8CanIndex == 1) {
uint8_t u8TxHandler;
if (osMessageQueueGet(txDataQueueCan1, &u8TxHandler, NULL, pTxMsg->bWaitTxCompleted) == osOK) {
}
}
/*
if (pTxMsg->bWaitTxCompleted) if (pTxMsg->bWaitTxCompleted)
{ {
u32TempAddr = 0U; u32TempAddr = 0U;
@ -2173,6 +2191,7 @@ FLEXCAN_ErrorType FLEXCAN_TransmitData(uint8_t u8CanIndex, const FLEXCAN_TxMsgTy
osThreadYield(); osThreadYield();
} }
if (u32WordLen == 0U) if (u32WordLen == 0U)
{ {
tRetVal = FLEXCAN_ERROR_TIMEOUT; tRetVal = FLEXCAN_ERROR_TIMEOUT;
@ -2187,7 +2206,7 @@ FLEXCAN_ErrorType FLEXCAN_TransmitData(uint8_t u8CanIndex, const FLEXCAN_TxMsgTy
tRetVal = FLEXCAN_ERROR_TIMEOUT; tRetVal = FLEXCAN_ERROR_TIMEOUT;
} }
} }
*/
} }
} }
#if FLEXCAN_CHECK_PARAMETERS == STD_ON #if FLEXCAN_CHECK_PARAMETERS == STD_ON