?? can.h
字號:
#ifndef CAN_H_
#define CAN_H_
#define CanBasicAdd 0xdf00 //SJA1000片選地址
#ifndef TYPE
#define TYPE
typedef unsigned char tByte;
#endif
#ifndef FUNCTION
#define FUNCTION
extern void SJAInit(tByte Reg_acr); //SJA1000初始化
extern tByte SJASendData(tByte *Tdata,tByte DatLen,tByte TarID,SaID,TxRx); //CAN發送數據
extern tByte SJARecvData(tByte *Rdata,tByte DatLen); //CAN接收數據
#endif
#define MODE (*(tByte volatile xdata *)(CanBasicAdd+0x00)) //模式寄存器
#define CMR (*(tByte volatile xdata *)(CanBasicAdd+0x01)) //命令寄存器
#define SR (*(tByte volatile xdata *)(CanBasicAdd+0x02)) //狀態寄存器
#define IR (*(tByte volatile xdata *)(CanBasicAdd+0x03)) //中斷寄存器
#define IER (*(tByte volatile xdata *)(CanBasicAdd+0x04)) //中斷使能寄存器
#define BTR0 (*(tByte volatile xdata *)(CanBasicAdd+0x06)) //總線定時寄存器1
#define BTR1 (*(tByte volatile xdata *)(CanBasicAdd+0x07)) //總線定時寄存器2
#define OCR (*(tByte volatile xdata *)(CanBasicAdd+0x08)) //輸出控制寄存器
#define ALC (*(tByte volatile xdata *)(CanBasicAdd+0x0B)) //仲裁丟失捕捉寄存器
#define ECC (*(tByte volatile xdata *)(CanBasicAdd+0x0C)) //錯誤代碼捕捉寄存器
#define TXER (*(tByte volatile xdata *)(CanBasicAdd+0x0F)) //發送錯誤計數器
#define ACR0 (*(tByte volatile xdata *)(CanBasicAdd+0x10)) //驗收代碼寄存器0
#define ACR1 (*(tByte volatile xdata *)(CanBasicAdd+0x11))
#define ACR2 (*(tByte volatile xdata *)(CanBasicAdd+0x12))
#define ACR3 (*(tByte volatile xdata *)(CanBasicAdd+0x13))
#define AMR0 (*(tByte volatile xdata *)(CanBasicAdd+0x14)) //驗收屏蔽寄存器0
#define AMR1 (*(tByte volatile xdata *)(CanBasicAdd+0x15))
#define AMR2 (*(tByte volatile xdata *)(CanBasicAdd+0x16))
#define AMR3 (*(tByte volatile xdata *)(CanBasicAdd+0x17))
#define FIN(i) (*(tByte volatile xdata *)(CanBasicAdd+0x10+i)) //發送/接收幀信息
#define ID1 (*(tByte volatile xdata *)(CanBasicAdd+0x11)) //發送/接收緩沖區之標示符1
#define ID2 (*(tByte volatile xdata *)(CanBasicAdd+0x12)) //發送/接收緩沖區之標示符2
#define DAT1(i) (*(tByte volatile xdata *)(CanBasicAdd+0x13+i)) //發送/接收數據首址
#define RBSA (*(tByte volatile xdata *)(CanBasicAdd+0x1E)) //接收緩沖器起始地址寄存器
#define CDR (*(tByte volatile xdata *)(CanBasicAdd+0x1F)) //時鐘分頻寄存器
#ifndef BIT_H_
#define BIT_H_
#define Bit(i) (0x1<<(i)) //位選擇
#endif
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -