diff --git a/components/zcancmder/basic.hpp b/components/zcancmder/basic.hpp index edf2068..f7a5d07 100644 --- a/components/zcancmder/basic.hpp +++ b/components/zcancmder/basic.hpp @@ -26,7 +26,7 @@ using namespace zcr; class CanPacketRxBuffer { public: uint16_t id = 0; - CANPacket m_canPacket[125] = {0}; // 用于接收can消息 + CANPacket m_canPacket[100] = {0}; // 用于接收can消息 uint8_t m_canPacketNum = 0; uint8_t m_npacket = 0; uint8_t rxdata[1000] = {0}; diff --git a/components/zcancmder/zcanreceiver.cpp b/components/zcancmder/zcanreceiver.cpp index f86d834..44afaa5 100644 --- a/components/zcancmder/zcanreceiver.cpp +++ b/components/zcancmder/zcanreceiver.cpp @@ -321,7 +321,7 @@ void ZCanCmder::STM32_HAL_onCAN_RxFifo0MsgPending(CAN_HandleTypeDef *canHandle) rxbuf->m_canPacketNum = 0; } - if (rxbuf->m_canPacketNum < 255) { + if (rxbuf->m_canPacketNum < ZARRAY_SIZE(rxbuf->m_canPacket)) { rxbuf->m_canPacket[rxbuf->m_canPacketNum].dlc = pHeader.DLC; memcpy(rxbuf->m_canPacket[rxbuf->m_canPacketNum].aData, aData, 8); rxbuf->m_canPacketNum++;