tao_z
2022-06-11 d8a5f3225d105585a4f181ed884adb2a861e0d13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/**
 * @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);
}