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

📄 cancom.h

📁 CAN转232及485的通讯卡程序,调试通过
💻 H
字号:
/*
*********************************************************************************************************
* Copyright (c) 2003, 凌宝设计中心
* All rights reserved.
* 
* 文件名称:cancom.h
* 文件标识:无
* 摘    要:
* 
* 当前版本:1.0
* 作    者:王黎
* 完成日期:2003年9月9日
*********************************************************************************************************
*/

#ifndef __CANCOM_H		// 防止头文件被重复引用
#define __CANCOM_H

/*
*********************************************************************************************************
* 	
* 包含头文件	
* 	
*********************************************************************************************************
*/
#include <REG51.h>
#include <absacc.h>

/*
*********************************************************************************************************
* 	
* 数据类型定义	
* 	
*********************************************************************************************************
*/
typedef unsigned char  	BOOLEAN;       // 注意:不要使用bit定义,因为在结构体里无法使用
typedef unsigned char  	INT8U;         // 无符号8位数
typedef signed   char  	INT8S;         // 有符号8位数
typedef unsigned int   	INT16U;        // 无符号16位数
typedef signed   int   	INT16S;        // 有符号16位数
typedef unsigned long  	INT32U;        // 无符号32位数
typedef signed   long  	INT32S;        // 有符号32位数
typedef float          	FP32;          // 单精度浮点数
typedef double         	FP64;          // 双精度浮点数

#define BYTE           	INT8S          // 兼容以前版本的数据类型
#define UBYTE          	INT8U         
#define WORD           	INT16S
#define UWORD          	INT16U
#define LONG           	INT32S
#define ULONG          	INT32U
#define BOOL			      BOOLEAN

/*
*********************************************************************************************************
* 	
* 常量宏定义	
* 	
*********************************************************************************************************
*/
#define STARTFLAG 	 0xE0
#define FALSE 		   0
#define TRUE	   	   !FALSE
#define true		     TRUE
#define false		     FALSE

/*
*********************************************************************************************************
* 	
* 外部寄存器定义	
* 	
*********************************************************************************************************
*/
#define MODECTLREG		  XBYTE[0x7f00]     //模式寄存器
#define COMMANDREG		  XBYTE[0x7f01]     //命令寄存器
#define STATUSREG		    XBYTE[0x7f02]			//状态寄存器
#define InterruptR      XBYTE[0x7f03]     //中断寄存器
#define InterruptIER    XBYTE[0x7f04]     //中断使能寄存器

#define BUFFER0   			XBYTE[0x7f10] 		//验收代码0, TX帧信息EFF, RX帧信息EFF
#define BUFFER1   			XBYTE[0x7f11] 		//验收代码1, TX识别码1, RX识别码1
#define BUFFER2   			XBYTE[0x7f12] 		//验收代码2, TX识别码2, RX识别码2
#define BUFFER3   			XBYTE[0x7f13] 		//验收代码3, TX识别码3, RX识别码3
#define BUFFER4   			XBYTE[0x7f14] 		//验收屏蔽0, TX识别码4, RX识别码3
#define BUFFER5   			XBYTE[0x7f15] 		//验收屏蔽1, TX数据1,   RX数据1
#define BUFFER6   			XBYTE[0x7f16] 		//验收屏蔽2, TX数据2,		RX数据2
#define BUFFER7  			  XBYTE[0x7f17] 		//验收屏蔽3, TX数据3,		RX数据3
#define BUFFER8   			XBYTE[0x7f18] 		//TX数据4,	 RX数据4
#define BUFFER9   			XBYTE[0x7f19] 		//TX数据5,	 RX数据5
#define BUFFER10  			XBYTE[0x7f1a] 		//TX数据6,	 RX数据6
#define BUFFER11  			XBYTE[0x7f1b] 		//TX数据7,	 RX数据7
#define BUFFER12  			XBYTE[0x7f1c] 		//TX数据8,	 RX数据8

#define CLKOUT   		    XBYTE[0x7f1f]			//时钟分频寄存器 
#define	BUSTIME0		    XBYTE[0x7f06]     //总线时钟0
#define	BUSTIME1 		    XBYTE[0x7f07]  		//总线时钟1
#define	OUTCTL 			    XBYTE[0x7f08]			//输出控制寄存器



/*
*********************************************************************************************************
* 	
* 外部RAM定义	,0000H-03FF;
* 	
*********************************************************************************************************
*/
#define	 BadLenght        10	//定义数据包多小
#define  BadLenght_can    40  //定义CAN的数据包大少








/*
*********************************************************************************************************
* 	
* 功能函数声明
* 	
*********************************************************************************************************
*/
void CupInit(void);						// CPU初始化函数
void DisableInterrupt(void);			// 关闭CPU中断
void EnalbeInterrupt(void); 			// 打开CPU中断
void TimeDly(WORD);						// 延时一定时间
void SjaInit(void);						// SJA1000初始化函数
void Sendto485(unsigned char *data485);
void Sendto232(unsigned char  *data232);
unsigned char  CRC(unsigned char *crc_);
void Changetoadr(void);

void cantest (void);
void cansendtopc (void);

#endif

⌨️ 快捷键说明

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