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

📄 sja_bcanconf.h

📁 这是一个基于51单片机的can总线转串口的程序
💻 H
📖 第 1 页 / 共 2 页
字号:
/************************************************************************
 *函数原型:      bit   BCAN_QUIT_RETMODEL(void)                             *
 *参数说明:  无                                                         *
 *返回值:                                                               *
 *           0 ; 表示成功退出复位工作模式                               *
 *           1 ; 表示不能退出复位工作模式                               *
 *                                                                      * 
 *说明:      CAN控制器退出复位工作模式                                  *
 ************************************************************************/ 
 bit   BCAN_QUIT_RETMODEL(void);

/************************************************************************
;*函数原型:   bit   BCAN_SET_BANDRATE(unsigned char CAN_ByteRate)       *
;*参数说明:  R7            波特率(Kbit/s) BTR0     BTR1               *
;*           0	            20              053H,    02FH                *
;*           1	            40              087H,    0FFH               *  
;*           2	            50              047H,    02FH               *
;*           3	            80              083H,    0FFH                *
;*           4	            100             043H,    02fH                *
;*           5	            125             03H,     01cH                 *
;*           6              200             081H,    0faH               *
;*           7	            250             01H,     01cH            *
;*           8	            400             080H,    0faH                *
;*           9	            500             00H,     01cH               *
;*           10	            666             080H,    0b6H                 *
;*           11	            800             00H,     016H             *
;*           12	            1000            00H,     014H                  *
;*返回值:                                                               *
;*           0 ;波特率设置成功                                          *
;*           1 ;波特率设置失败                                          *
;*                                                                      * 
;*说明:设置CAN控制器SJA1000通讯波特率.SJA1000的晶振为必须为16MHZ,       *
;*     其它晶体的频率的值的波特率,需自己计算 。该子程序只能用于        *
;*     复位模式                                                         *  
;************************************************************************/
bit   BCAN_SET_BANDRATE(unsigned char CAN_ByteRate);

/************************************************************************
;*函数原型:   bit    BCAN_SET_OBJECT(unsigned char  BCAN_ACR,         *
                                     unsigned char  BCAN_AMR)           *
*参数说明:                                                              *
 *    BCAN_ACR:存放验收代码寄存器(ACR)的参数设置                      *
 *    BCAN_AMR:存放接收屏蔽寄存器(AMR)的参数设置                      *
;*返回值:                                                               *
;*           0 ;通信对象设置成功                                        *
;*           1 ;通信对象设置失败                                        *
;*                                                                      * 
;*说明:设置CAN节点的通讯对象,允许接收的报文ID号的高8位(D10--D3) 。     *
;*     允许接收的报文,是由AMR和ACR共同决定的.                           *  
;*    满足以下条件的ID号的报文才可以被接收                              *
;*[(ID.10-ID.3)≡(AC.7-AC.0)]||(AM.7-AM.0)≡11111111              *
;*    该子程序只能用于复位模式                                          *                                                                                                                     *             
;************************************************************************/
bit    BCAN_SET_OBJECT(unsigned char  BCAN_ACR,unsigned char  BCAN_AMR);

/************************************************************************
;*函数原型: bit  BCAN_SET_OUTCLK (unsigned char Out_Control,            *
                                  unsigned char  Clock_Out);            *
;*参数说明:                                                                                   *
 *    Out_Control:存放输出控制寄存器 (OC)  的参数设置                   *
 *    Clock_Out:存放时钟分频寄存器 (CDR) 的参数设置                     *
 *                                                                      *   
;*返回值:                                                               *
;*           0 ;设置成功                                                *
;*           1 ;设置失败                                                *
;*                                                                      * 
;*说明:设置SJA1000的输出模式和时钟分频 。该子程序只能用于复位模式       *                                                                                                                     *             
;************************************************************************/
bit  BCAN_SET_OUTCLK (unsigned char Out_Control,    
                     unsigned char  Clock_Out);      


/************************************************************************
 *函数原型:  bit   BCAN_DATA_WRITE(unsigned char *SendDataBuf) 			*
 *参数说明:  特定帧各式的数据?                                         *
 *返回值:                                                               *
 *           0    ; 表示将数据成功的送至发送缓冲区                      *
 *           1	  ; 表示上一次的数据正在发送,                          *
 *           	  ; 表示发送缓冲区被锁定,不能写入数据                  *
 *            	  ;表示写入数据错误                                    * 
 *说明: 将待发送特定帧各式的数据,送入SJA1000发送缓存区中,然后启动     *
 *        SJA1000发送。                                                 *
 *   特定帧格式为:开始的两个字节存放 '描述符' ,以后的为数据             *
 *   描述符包括11位长的ID(标志符)\1位RTR\4位描述数据长度的DLC共16位    *
 *                                                                      *
 *注:本函数的返回值仅指示,将数据正确写入SJA1000发送缓存区中与否。     *
 *    不指示SJA1000将该数据正确发送到CAN总线上完毕与否                  *
 ************************************************************************/ 
 bit   BCAN_DATA_WRITE(unsigned char *SendDataBuf);
 
/************************************************************************
 *函数原型:  bit    BCAN_DATA_RECEIVE(unsigned char *RcvDataBuf);       *
 *参数说明:  RcvDataBuf,存放微处理器保存数据缓冲区                      *
 *返回值:    0;接收成功                                                 *
 *           1;接收失败                                                 * 
 *说明:CAN控制器接收数据,仅限于接收数据                                 *
 ************************************************************************/
 bit    BCAN_DATA_RECEIVE(unsigned char *RcvDataBuf);

/************************************************************************
 *函数原型:  unsigned char  BCAN_CMD_PRG(unsigned char cmd)             *
 *参数说明:  cmd:sja1000运行的命令字                                    *
 *             01:发送请求                                              *
 *             02:中止发送                                             *
 *             04:释放接收缓冲区                                       *
 *             08:清除超载状态                                         *
 *             0x10:进入睡眠状态                                        *
 *                                                                      *
 *返回值:                                                               *
 *           0 ; 表示命令执行成功                                       *
 *           1 ; 表示命令执行失败                                       *
 *                                                                      * 
 *说明:      执行sja1000命令                                            * 
 ************************************************************************/ 
 bit  BCAN_CMD_PRG(unsigned char cmd);

#endif

⌨️ 快捷键说明

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