Files
GPS-Navigator-/ETH/UdpServer/User/interface_can.h
2025-11-07 10:31:57 +08:00

58 lines
1.6 KiB
C

/*
* 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_ */