/**
|
* @file uds_user.c
|
* @author Ethan.Tao (tzj0429@163.com)
|
* @brief
|
* @version 0.1
|
* @date 2022-01-05
|
*
|
* @copyright Copyright (c) 2022 Äþ²¨ÕýÀÊÆû³µÁ㲿¼þÓÐÏÞ¹«Ë¾
|
*
|
*/
|
#include "uds_user.h"
|
#include "Hal_can.h"
|
#include "cantp.h"
|
|
void UDS_UserDefInit(UDS_FOR_DTC_Interface_t *dtcforuds_if)
|
{
|
// dtcforuds_if->Enable_Global_Dtcs = NULL;
|
// todo need set dtc interface function ,avoid to reset mcu
|
}
|
extern void CPU_HardReset(void)
|
{
|
NVIC_SystemReset();
|
}
|
|
extern void UDS_WriteData(TP_PDU_t *msg, int channel)
|
{
|
CAN_PDU_t msg_tx = {0};
|
|
msg_tx.MCAN_ID = msg->arbId;
|
msg_tx.MCAN_DLC = msg->dlc;
|
msg_tx.MCAN_FF = 0; // standard frame
|
msg_tx.MCAN_RTR = 0; // data frame
|
for (int i = 0; i < msg_tx.MCAN_DLC; i++)
|
{
|
msg_tx.MCAN_Data[i] = msg->frame[i];
|
}
|
CAN_Transimit(&msg_tx);
|
}
|