Commit a0618ba2 authored by 何锐's avatar 何锐

feat:检测到一线通数据再外发80

parent af243803
......@@ -135,6 +135,7 @@ uint8_t *pcan_data = &can_flag;
uint8_t test[10] = {0x56,0x0B,0x0C,0x0D,0x1,0x2,0x3,0x4,0x05,0xFF};
uint16_t time_90;
uint16_t time_9192;
uint8_t get_data80;
void Sys_Run_Mode_100ms_Tasks_Group(void)
{
......@@ -203,7 +204,11 @@ void Sys_Run_Mode_100ms_Tasks_Group(void)
{
sendflag_92 = 0;
WMHCommFramePackedTransmit(EM_WMH_COMM_SEND_MSG_ICM_0x92);
Can_Msg_Tx_Overwrite(&CAN_CH4_CanMsgTxOp,0u,1u,1000u);
if(get_data80 == 1)
{
get_data80 = 0;
Can_Msg_Tx_Overwrite(&CAN_CH4_CanMsgTxOp,0u,1u,1000u);
}
}
}
}
......
......@@ -14,7 +14,7 @@ extern uint8_t Openble[11];
extern uint8_t canData_banben[14];
extern uint16_t decimal_candata[14];
extern uint8_t can_flag;
extern uint8_t get_data80;
void Sys_Run_Mode_Pseudo_Real_Time_Tasks(void);
......
......@@ -3,14 +3,15 @@
#include "mwwmhcomm.h"
#include "TYW_stdint.h"
#include "string.h"
#include "Task.h"
const WMH_COMM_INIT_FRAME_T WMHCommRecvInitList[EM_WMH_COMM_RECV_MSG_TOTAL] = {
{0x80u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X80, 5000u, 1u, WMHCommDataWiBox_0x80.Bytes, WMHCommFrameCallBack_WiBox_0x80, WMHCommFrameTimeoutFunc_WiBox80, WMHCommFrameCheckSumFunc},
};
const WMH_COMM_INIT_FRAME_T WMHCommSendInitList[EM_WMH_COMM_SEND_MSG_TOTAL] = {
{0x90u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X90, 10000u, 1u, WMHCommDataWiBox_0x90.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox, WMHCommFrameCheckSumFunc},
{0x91u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X91, 10000u, 1u, WMHCommDataWiBox_0x91.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox, WMHCommFrameCheckSumFunc},
{0x92u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X92, 10000u, 1u, WMHCommDataWiBox_0x92.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox, WMHCommFrameCheckSumFunc},
{0x90u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X90, 10000u, 1u, WMHCommDataWiBox_0x90.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox_90, WMHCommFrameCheckSumFunc},
{0x91u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X91, 10000u, 1u, WMHCommDataWiBox_0x91.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox_91, WMHCommFrameCheckSumFunc},
{0x92u, 1000u, COMM_DATA_UNION_WI_BOX_LENGTH_0X92, 10000u, 1u, WMHCommDataWiBox_0x92.Bytes, WMHCommFrameCallBack_Icm, WMHCommFrameTimeoutFunc_WiBox_92, WMHCommFrameCheckSumFunc},
};
uint32_t WMHCommRecvMessageTimeout[EM_WMH_COMM_RECV_MSG_TOTAL] = {0};
......@@ -79,6 +80,7 @@ void WMHCommFrameUnpacked(uint8_t *data, uint32_t length)
if (WMHCommRecvInitList[i].FrameCallBackFunc != NULL_P) {
WMHCommRecvInitList[i].FrameCallBackFunc();
}
get_data80 = 1;
WMHCommRecvMessageTimeout[i] = WMHCommRecvInitList[i].TimeoutMax;
}
}
......
......@@ -56,6 +56,30 @@ void WMHCommFrameTimeoutFunc_WiBox(void)
}
}
void WMHCommFrameTimeoutFunc_WiBox_90(void)
{
// 替代第一个 memset
for (int i = 0; i < COMM_DATA_UNION_WI_BOX_LENGTH_0X90; i++) {
WMHCommDataWiBox_0x90.Bytes[i] = 0;
}
}
void WMHCommFrameTimeoutFunc_WiBox_91(void)
{
// 替代第二个 memset
for (int i = 0; i < COMM_DATA_UNION_WI_BOX_LENGTH_0X91; i++) {
WMHCommDataWiBox_0x91.Bytes[i] = 0;
}
}
void WMHCommFrameTimeoutFunc_WiBox_92(void)
{
// 替代第三个 memset
for (int i = 0; i < COMM_DATA_UNION_WI_BOX_LENGTH_0X92; i++) {
WMHCommDataWiBox_0x92.Bytes[i] = 0;
}
}
void WMHCommFrameTimeoutFunc_WiBox80(void)
{
// 替代第一个 memset
......
......@@ -294,6 +294,9 @@ extern void WMHCommFrameCallBack_WiBox_0x90(void);
extern void WMHCommFrameCallBack_WiBox_0x91(void);
extern void WMHCommFrameCallBack_WiBox_0x92(void);
extern void WMHCommFrameTimeoutFunc_WiBox(void);
extern void WMHCommFrameTimeoutFunc_WiBox_90(void);
extern void WMHCommFrameTimeoutFunc_WiBox_91(void);
extern void WMHCommFrameTimeoutFunc_WiBox_92(void);
extern void WMHCommFrameTimeoutFunc_WiBox80(void);
extern void WMHCommFrameCallBack_Icm(void);
......
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