Commit 24d341c0 authored by 李冠华's avatar 李冠华

feat:混动车型增加CAN掩码功能

parent 1083e73f
......@@ -21,10 +21,10 @@ void Can_Init(void)
Can_Config.MASK[2] = 0x1fffffffU;
Can_Config.MASK[3] = 0x1fffffffU;
#else
Can_Config.MASK[0] = 0x1FFU;
Can_Config.MASK[1] = 0x2FFU;
Can_Config.MASK[2] = 0x3FFU;
Can_Config.MASK[3] = 0x7FFU;
Can_Config.MASK[0] = 0x00FC0000U; /*处理报文0x11B、0x125、0x134报文的掩码,对比ID 0x13F,实际接收范围(0x10*、0x11*、0x12*、0x13*);以及处理报文0x389、0x38E、0x3B1报文的掩码,对比ID 0x3BF,实际接收范围(0x38*、0x39*、0x3A*、0x3B*)*/
Can_Config.MASK[1] = 0x007C0000U; /*处理报文0x161、0x16B、0x170、0x175、0x17A报文的掩码,对比ID 0x17F,实际接收范围(0x16*、0x17*)*/
Can_Config.MASK[2] = 0x00BC0000U; /*处理报文0x315、0x31A、0x339、0x33E报文的掩码,对比ID 0x33F,实际接收范围(0x31*、0x33*)*/
Can_Config.MASK[3] = 0x003C0000U; /*处理报文0x220、0x225、0x22A、0x22F报文的掩码,对比ID 0x22F,实际接收范围(0x22*)*/
#endif
Can_Config.rx_callback = Read_RingBuff;//Can_Rx_Cak;
COM_CAN_Init();
......@@ -146,7 +146,7 @@ void Can_RX_Apply_Buff(void)
CAN_MessageCache_OverWriteConfig(CAN0MSG09, ENABLE);
#else
CAN_RecvMsg.Id = 0x1FF;
CAN_RecvMsg.Id = 0x13F;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_Mask1;
CAN_RecvMsg.RTR = CAN_RTR_Data;
......@@ -155,7 +155,7 @@ void Can_RX_Apply_Buff(void)
CAN_MessageCache_Init(CAN0MSG00, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG00, ENABLE);
CAN_RecvMsg.Id = 0x2FF;
CAN_RecvMsg.Id = 0x17F;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_Mask2;
CAN_RecvMsg.RTR = CAN_RTR_Data;
......@@ -164,7 +164,7 @@ void Can_RX_Apply_Buff(void)
CAN_MessageCache_Init(CAN0MSG01, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG01, ENABLE);
CAN_RecvMsg.Id = 0x3FF;
CAN_RecvMsg.Id = 0x33F;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_Mask3;
CAN_RecvMsg.RTR = CAN_RTR_Data;
......@@ -173,7 +173,7 @@ void Can_RX_Apply_Buff(void)
CAN_MessageCache_Init(CAN0MSG02, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG02, ENABLE);
CAN_RecvMsg.Id = 0x7FF;
CAN_RecvMsg.Id = 0x22F;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_Mask4;
CAN_RecvMsg.RTR = CAN_RTR_Data;
......@@ -182,6 +182,42 @@ void Can_RX_Apply_Buff(void)
CAN_MessageCache_Init(CAN0MSG03, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG03, ENABLE);
CAN_RecvMsg.Id = 0x3BF;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_Mask1;
CAN_RecvMsg.RTR = CAN_RTR_Data;
CAN_RecvMsg.Interrupt = ENABLE;
CAN_MessageCache_DeInit(CAN0MSG04);
CAN_MessageCache_Init(CAN0MSG04, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG04, ENABLE);
CAN_RecvMsg.Id = 0x18E;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_NoMask;
CAN_RecvMsg.RTR = CAN_RTR_Data;
CAN_RecvMsg.Interrupt = ENABLE;
CAN_MessageCache_DeInit(CAN0MSG05);
CAN_MessageCache_Init(CAN0MSG05, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG05, ENABLE);
CAN_RecvMsg.Id = 0x234;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_NoMask;
CAN_RecvMsg.RTR = CAN_RTR_Data;
CAN_RecvMsg.Interrupt = ENABLE;
CAN_MessageCache_DeInit(CAN0MSG06);
CAN_MessageCache_Init(CAN0MSG06, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG06, ENABLE);
CAN_RecvMsg.Id = 0x361;
CAN_RecvMsg.IDE = CAN_Id_Standard;
CAN_RecvMsg.CacheType = CAN_CacheType_Rx_NoMask;
CAN_RecvMsg.RTR = CAN_RTR_Data;
CAN_RecvMsg.Interrupt = ENABLE;
CAN_MessageCache_DeInit(CAN0MSG07);
CAN_MessageCache_Init(CAN0MSG07, &CAN_RecvMsg);
CAN_MessageCache_OverWriteConfig(CAN0MSG07, ENABLE);
#endif
CAN_RecvMsg.Id = DIAG_ID_Rx_PHY;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment