candeal1.h

来自「C8051系列单片机开发与C语言编程!」· C头文件 代码 · 共 37 行

H
37
字号
//////////////candeal1.h/////////////////////
#include "can.h"
void transmit (char MsgNum,char *p,char len) 
/*将*p数据写入can消息发送,len为数据长度*/
{	char i;
	SFRPAGE = CAN0_PAGE;
	CAN0ADR = IF1CMDMSK;         
	CAN0DAT = 0x0087;            
	/*   IF1 Command Mask Registers  =0x0087
	WR/RD=1,Mask=0,Arb=0,Control=0,ClrIntPnd=0,TxRqst=1,DataA=1,DataB=1,一次发送8字节数据*/
	CAN0ADR = IF1DATA1;          
	for(i=0;i<len;i+=2){
		CAN0DATH=*p++;
		CAN0DATL=*p++;
	}
 	CAN0ADR = IF1CMDRQST;        
	CAN0DATL = MsgNum;            
}
void receive_data (uchar MsgNum,char *p,char len)
/*将接收数据存入*p指针中,len为接收长度*/
{
	char i;
  	SFRPAGE = CAN0_PAGE;
	CAN0ADR = IF2CMDMSK;       	
	CAN0DATL = 0x0f;          
	/*   IF1 Command Mask Registers  =0xxx0f
	WR/RD=0,Mask=0,Arb=0,Control=0,ClrIntPnd=1,NewDat=1,DataA=1,DataB=1,一次发送8字节数据*/
	CAN0ADR = IF2CMDRQST;      
	CAN0DATL = MsgNum;       	  
	CAN0ADR = IF2DATA1;     	  
	for(i=0;i<len;i+=2){
		*p++=CAN0DATH;
		*p++=CAN0DATL;
	}
	isnewdata=1;
 }

⌨️ 快捷键说明

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