- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
can总线多机通讯接收
#includeSJA1000REG_1.h
#includereg52.h
#includestdio.h
#includestring.h
#includeintrins.h
#define STD_FRAMEID_LENTH 2 //标准帧ID长度
#define EXT_FRAMEID_LENTH 4 //扩展帧ID长度
#define LOW_BYTE(x) (unsigned char)(x)
#define HIGH_BYTE(x) (unsigned char)((unsigned int)(x)8)
#define OSCCLKL
#define CPUCLK (OSCCLK/12)
#define SJA_BASE_ADDR 0X7E00
#define T0_MASK 0x0f
sbit LED=P2^5;
sbit SJA1000_RST=P2^6;
unsigned char xdata *SJA_CS_Point=(unsigned char xdata*)SJA_BASE_ADDR;
void SJA1000_Init(unsigned char btr0,unsigned char btr1,unsigned char *filter);
void WriteSJAReg(unsigned char RegAdr,unsigned char Value); //写寄存器
unsigned char ReadSJAReg(unsigned char RegAdr); //读寄存器
char SetBitMask(unsigned char RegAdr,unsigned char BitValue); //设置寄存器特定位
char ClearBitMask(unsigned char RegAdr,unsigned char BitValue); //清除寄存器特定位
char WriteSJARegBlock(unsigned char RegAdr,unsigned char *ValueBuf,unsigned char len); //连续写寄存器
char ReadSJARegBlock(unsigned char RegAdr,unsigned char *ValueBuf,unsigned char len); //连续读寄存器
char SetSJASendCmd(unsigned char cmd); //发送模式cmd 0为正常发送 1为单次发送 2为自发自收
char SJASendData(unsigned char *databuf,unsigned char cmd); //sja1000发送函数,将数据写入sja1000发送缓冲区,再将其发到总线上
char SJARcvData(unsigned char *databuf); //SJA1000接收函数 读取接收缓冲区的CAN报文
//void SJA1000_Config_Filter(char mode,char *Filter); //配置滤波器模式和滤波参数 mode大于0为双滤波器,其他为单滤波
unsigned char SJA_CAN_Filter[8]={ 0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff};
typedef struct //结构定义
{
unsigned long ID;
unsigned char FF;
unsigned char RTR;
unsigned char DLC;
unsigned char CanData[8];
}
CanFrame_t;
CanFrame_t UserRecData;
unsigned char UserData[8];
unsigned char UserID[4];
unsigned char UserFF,UserRTR,UserDLC;
void UserDataDeal()
{
unsigned char temp2;
temp2=UserData[0];
P1=temp2;
}
void NumDataDeal()
{
UserID[0]=((UserRecData.ID5)8)0xff;
UserID[1]=(UserRecData.ID5)0xf0;
UserRTR=UserRecData.RTR;
UserFF=UserRecData.FF;
UserDLC=UserRecData.DLC;
UserData[0]=UserR
您可能关注的文档
最近下载
- 济南版(2024)初中生物学七年级上册《脊椎动物身体背部有脊柱》教学设计及反思.docx
- 中铁建工集团质量管理手册.pdf
- 二级中医医院评审细则解读院感部分.pptx
- 2024年迪瑞医疗分析报告:强化协同,仪器放量布局市场.pdf
- 部编版初中道德与法治九年级上册单元作业设计 (优质案例12页) .pdf
- 广东实验中学2023-2024学年八年级上学期期中考试语文试卷.docx VIP
- 2020年世界发展报告:全球价值链时代的贸易换发展.pdf VIP
- 湖北省水利工程重大设计变更报告编制大纲.pdf
- 2024高中地理教师课程标准考试模拟试卷及参考答案.docx VIP
- 《材料成型工艺学》全套教学课件.ppt
文档评论(0)