宜興網(wǎng)站制作百度seo優(yōu)化及推廣
問題現(xiàn)象
MCU上電,發(fā)送0x13幀數(shù)據(jù)固定進入
Error_Handler
????????
硬件介紹
MCU :STM32G0B1
can:NSI1042
tx 接TX
RX 接RX
折騰了一下午,無解,問題依舊;
對比測試
STM32G431
手頭有塊G431 官方評估版+CAN 模塊;
同樣的代碼
/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */
FDCAN_TxHeaderTypeDef TxHeader;
uint8_t TxData[8] = {0};
/* USER CODE END 0 */
/* USER CODE BEGIN 2 */if (HAL_FDCAN_Start(&hfdcan1) != HAL_OK){Error_Handler();}/* USER CODE END 2 */
/* Infinite loop *//* USER CODE BEGIN WHILE */while (1){TxHeader.Identifier = 0x0fffffff;TxHeader.IdType = FDCAN_EXTENDED_ID;TxHeader.TxFrameType = FDCAN_DATA_FRAME;TxHeader.DataLength = FDCAN_DLC_BYTES_8;TxHeader.ErrorStateIndicator = FDCAN_ESI_ACTIVE;TxHeader.BitRateSwitch = FDCAN_BRS_OFF;TxHeader.FDFormat = FDCAN_CLASSIC_CAN;TxHeader.TxEventFifoControl = FDCAN_NO_TX_EVENTS;TxHeader.MessageMarker = 0;++TxData[7];if(HAL_FDCAN_AddMessageToTxFifoQ(&hfdcan1, &TxHeader, TxData) != HAL_OK){Error_Handler();}HAL_Delay(1000); /* USER CODE END WHILE *//* USER CODE BEGIN 3 */}
測試數(shù)據(jù)
將TX(PA12)拔掉?
? ? ? ? 故障出現(xiàn)了,發(fā)送0x13幀的時候,進入Error_Handler;
測試結(jié)論
通過對比發(fā)現(xiàn),TX物理斷開,與STM32G0B1 平臺現(xiàn)象一致,接下來重點排查STM32G0B1 的TX與RX引腳配置。
親們破案了,加上120R電阻就好了!!!!
親們破案了,加上120R電阻就好了!!!!
親們破案了,加上120R電阻就好了!!!!