/* * can_drive.h * * Created on: 2023年1月5日 * Author: Administrator */ #ifndef USER_INTERFACE_CAN_H_ #define USER_INTERFACE_CAN_H_ #include "debug.h" /* CAN Mode Definition */ #define TX_MODE 0 #define RX_MODE 1 /* Frame Format Definition */ #define Standard_Frame 0 #define Extended_Frame 1 /* CAN Communication Mode Selection */ //#define CAN_MODE TX_MODE #define CAN_MODE RX_MODE /* Frame Formate Selection */ //#define Frame_Format Extended_Frame #define Frame_Format Extended_Frame #define Frame_Format Extended_Frame #define DF_CanIDbattery 0x18904001//电池接收 #define DF_CanIDbattery1 0x100//电池接收 #define DF_CanIDbattery2 0x101//电池接收 #define DF_CanIDRCH_3 0x12000023//接受遥控器 #define DF_CanIDMotor1 0x98//20251025 修改接收轮速 #define DF_CanIDMotor2 0x99//20251025 修改接收轮速 #define DF_ExtIDShift 3//扩展帧移位 32-29 #define DF_StaIDShift 21//标准帧移位 32-11 //外部变量声明 //外部函数声明 void CAN1_Mode_Init( u8 tsjw, u8 tbs2, u8 tbs1, u16 brp, u8 mode ); void CAN2_Mode_Init( u8 tsjw, u8 tbs2, u8 tbs1, u16 brp, u8 mode ); u8 CAN_Send_Msg( CAN_TypeDef *CANx, u32 ID, u8 ide, u8 rtr, u8 *msg, u8 len); u8 CAN_Receive_Msg(CAN_TypeDef *CANx, uint8_t FIFONumber, u8 *buf ); void USB_LP_CAN1_RX0_IRQHandler(void) __attribute__((interrupt("WCH-Interrupt-fast"))); void CAN2_RX1_IRQHandler(void) __attribute__((interrupt("WCH-Interrupt-fast"))); #endif /* USER_INTERFACE_CAN_H_ */