⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reg.h

📁 CAN总线调试通过的程序
💻 H
📖 第 1 页 / 共 3 页
字号:
#define         NormalMode        0x02                      //正常输出模式
#define         ClkOutMode        0x03                      //时钟输出模式
           /*TX1 的输出管脚配置*/
#define         OCPOL1_BIT        0x20                      //输出极性控制位
#define         Tx1Float          0x00                      //配置为悬空
#define         Tx1PullDn         0x40                      //配置为下拉
#define         Tx1PullUp         0x80                      //配置为上拉
#define         Tx1PshPull        0Xc0                      //配置为推挽
            /*TX0 的输出管脚配置*/
#define         OCPOL0_BIT        0x04                      //输出极性控制位
#define         Tx0Float          0x00                      //配置为悬空
#define         Tx0PullDn         0x08                      //配置为下拉
#define         Tx0PullUp         0x10                      //配置为上拉
#define         Tx0PshPull        0X18                      //配置为推挽

/*
 ********************************************************************************************************************
 * 测试寄存器的地址定义 PeliCAN模式
 ********************************************************************************************************************
 */
#define         REG_CAN_TEST      0x09          //测试寄存器

/*
 ********************************************************************************************************************
 * 以下为发送缓冲区寄存器定义
 ********************************************************************************************************************
 */
#define         REG_CAN_TXBUF0    0x0A            //发送缓冲区1
#define         REG_CAN_TXBUF1    0x0B            //发送缓冲区2
#define         REG_CAN_TXBUF2    0x0C            //发送缓冲区3
#define         REG_CAN_TXBUF3    0x0D            //发送缓冲区4
#define         REG_CAN_TXBUF4    0x0E            //发送缓冲区5
#define         REG_CAN_TXBUF5    0x0F            //发送缓冲区6
#define         REG_CAN_TXBUF6    0x10            //发送缓冲区7
#define         REG_CAN_TXBUF7    0x11            //发送缓冲区8
#define         REG_CAN_TXBUF8    0x12            //发送缓冲区9
#define         REG_CAN_TXBUF9    0x13            //发送缓冲区10

/*
 ********************************************************************************************************************
 * 以下为接收缓冲区寄存器定义
 ********************************************************************************************************************
 */
#define         REG_CAN_RXBUF0    0x14         //接收缓冲区1
#define         REG_CAN_RXBUF1    0x15         //接收缓冲区2
#define         REG_CAN_RXBUF2    0x16         //接收缓冲区3
#define         REG_CAN_RXBUF3    0x17         //接收缓冲区4
#define         REG_CAN_RXBUF4    0x18         //接收缓冲区5
#define         REG_CAN_RXBUF5    0x19         //接收缓冲区6
#define         REG_CAN_RXBUF6    0x1A         //接收缓冲区7
#define         REG_CAN_RXBUF7    0x1B         //接收缓冲区8
#define         REG_CAN_RXBUF8    0x1C         //接收缓冲区9
#define         REG_CAN_RXBUF9    0x1D         //接收缓冲区10

/*
 ********************************************************************************************************************
 *                          时钟分频器地址和位定义 PeliCAN 模式
 ********************************************************************************************************************
 */
//#define         REG_CAN_CDR       31            //时钟分频 寄存器

//#define         CLKOff_BIT        0x08                      //时钟关闭位,时钟输出管脚控制位
//#define         RXINTEN_BIT       0x20                      //用于接收中断的管脚TX1
//#define         CBP_BIT           0x40                      //CAN 比较器旁路控制位
//#define         CANMode_BIT       0x80                      //CAN 模式控制位



/*
 ********************************************************************************************************************
 *                          BasicCAN 模式寄存器定义结束
 ********************************************************************************************************************
 */
#endif
/*
 ********************************************************************************************************************
 *                        SJA1000寄存器定义结束
 ********************************************************************************************************************
 */
#endif


/************************************************************************
                       BASICCAN 模式
 * 以下的定义为SJA1000的内部寄存器的地址,不可修改                      *
 *     各寄存器的具体功能清参阅sja1000的数据手册                        *
 ************************************************************************/
#define         REG_CR       0x00       //内部控制寄存器

#define         REG_CMR           0x01       //命令寄存器

#define         REG_SR            0x02       //状态寄存器

#define         REG_INTERRUPT     0x03       //中断寄存器

#define         REG_ACR           0x04       //验收代码寄存器

#define         REG_AMR           0x05       //验收屏蔽寄存器

#define         REG_BTR0          0x06       //总线定时寄存器0

#define         REG_BTR1          0x07       //总线定时寄存器1

#define         REG_OCR           0x08       //输出控制寄存器

#define         REG_TEST          0x09       //测试寄存器
/************************************************************************
 *时钟分频寄存器(内部地址01FH)                                          *
 ************************************************************************/
#define         REG_CDR           0x1F          //时钟分频寄存器

//以下为发送缓冲区寄存器定义

#define         REG_TxBuffer1     0x0A         //发送缓冲区1
#define         REG_TxBuffer2     0x0B         //发送缓冲区2
#define         REG_TxBuffer3     0x0C         //发送缓冲区3
#define         REG_TxBuffer4     0x0D         //发送缓冲区4
#define         REG_TxBuffer5     0x0E         //发送缓冲区5
#define         REG_TxBuffer6     0x0F         //发送缓冲区6
#define         REG_TxBuffer7     0x10         //发送缓冲区7
#define         REG_TxBuffer8     0x11         //发送缓冲区8
#define         REG_TxBuffer9     0x12         //发送缓冲区9
#define         REG_TxBuffer10    0x13         //发送缓冲区10

//以下为接收缓冲区寄存器定义
#define         REG_RxBuffer1     0x14         //接收缓冲区1
#define         REG_RxBuffer2     0x15         //接收缓冲区2
#define         REG_RxBuffer3     0x16         //接收缓冲区3
#define         REG_RxBuffer4     0x17         //接收缓冲区4
#define         REG_RxBuffer5     0x18         //接收缓冲区5
#define         REG_RxBuffer6     0x19         //接收缓冲区6
#define         REG_RxBuffer7     0x1A         //接收缓冲区7
#define         REG_RxBuffer8     0x1B         //接收缓冲区8
#define         REG_RxBuffer9     0x1C         //接收缓冲区9
#define         REG_RxBuffer10    0x1D         //接收缓冲区10

/************************************************************************
 *定义命令字                                                            *
 ************************************************************************/
#define         TR_CMD           0x01          //发送请求命令
#define         AT_CMD           0x02          //夭折发送命令
#define         RRB_CMD          0x04          //释放接收缓冲区
#define         COS_CMD          0x08          //清除超载状态
#define         GTS_CMD          0x10          //进入睡眠状态命令

/************************************************************************
 *定义12M的晶体下,CAN总线波特率                                        *
 ************************************************************************/
#define         ByteRate_20k      0x00          //波特率20kbps
#define         ByteRate_40k      0x01          //波特率40kbps
#define         ByteRate_50k      0x02          //波特率50kbps
#define         ByteRate_80k      0x03          //波特率80kbps
#define         ByteRate_100k     0x04          //波特率100kbps
#define         ByteRate_125k     0x05          //波特率125kbps
#define         ByteRate_200k     0x06          //波特率200kbps
#define         ByteRate_250k     0x07          //波特率250kbps
#define         ByteRate_400k     0x08          //波特率400kbps
#define         ByteRate_500k     0x09          //波特率500kbps
#define         ByteRate_666k     0x0a          //波特率666kbps
#define         ByteRate_800k     0x0b          //波特率800kbps
#define         ByteRate_1000k    0x0c          //波特率1000kbps

/*-------------------------------------------------------------------------------------------
 *  以下为BASICCAN SJA1000的错误字                                                          *
 -------------------------------------------------------------------------------------------*/
#define     CAN_INTERFACE_0K    0                                                        /*SJA1000接口正常                       */
#define     CAN_BUS_0K          0                                                       /*CAN总线工作正常                       */
#define     CAN_INTERFACE_ERR   0XFF                                                    /*SJA1000接口错误

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -