- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模拟SPI口实现对CAN控制器mcp2515的操作程序(2009-06-18 11:33:20)
can总线?mcp2515?参考程序?it? #include 2515.h#include SPI.h#include reg51.h#include Function.h
#define CAN_10Kbps 0x31#define CAN_25Kbps 0x13#define CAN_50Kbps 0x09#define CAN_100Kbps 0x04#define CAN_125Kbps 0x03#define CAN_250Kbps 0x01#define CAN_500Kbps 0x00
?//void SPIReset(void);//void SPIByteWrite(unsigned char ,unsigned char );//unsig ned char SPIByteRead(unsigned char );unsigned char dummy;?void Init2515(unsigned int IDF){燬PIReset();燿elay_ms(1);??/SPIByteWrite(CANCTRL,0x80);//CAN 工作在配置模式???? SPIByteWrite(RXM0SIDH,0x00);?SPIByteWrite(RXM0SIDL,0x00);?SPIByteWrite(RXF0SIDH,0x00);?SPIByteWrite(RXF0SIDL,0x00);??SPIByteWrite(RXM1SIDH,0x00);?SPIByteWrite(RXM1SIDL,0x00);?SPIByteWrite(RXF2SIDH,0x00);?SPIByteWrite(RXF2SIDL,0x00);??//设置波特率为10Kbps?//set CNF1,SJW=00,长度为1TQ,BRP=49,TQ=[2*(BRP+1)]/Fsoc=2*50/8M=12.5us?SPIByteWrite(CNF1,CAN_125Kbps);?//set CNF2,SAM=0,在采样点对总线进行一次采样,PHSEG1=(2+1)TQ=3TQ,PRSEG=(0+1)TQ=1TQ?SPIByteWrite(CNF2,0x80|PHSEG1_3TQ|PRSEG_1TQ);?//set CNF3,PHSEG2=(2+1)TQ=3TQ,同时当CANCTRL.CLKEN=1时设定CLKOUT引脚为时间输出使能位?SPIByteWrite(CNF3,PHSEG2_3TQ);??//set TXB0,设置发送缓冲器0的标识符和发送的数据,以及发送的数据长度? SPIByteWrite(TXB0CTRL,0x03);//设置发送缓冲器0控制寄存器清零TXREQ,发送优先级最高?//BitModiMcp2515(TXB0CTRL,0x08,0x00);??SPIByteWrite(TXB0SIDH,IDF);//设置发送缓冲器0的标准标识符,待修改***?SPIByteWrite(TXB0SIDL,0xE0);//用到标准标识符?SPIByteWrite(TXB0DLC,DLC_8);//设置发送数据的长度为8个字节?//SPIByteWrite(TXB0D0,0x1E);//有待修改及确定是否使用?//SPIByteWrite(TXB0D1,0x10);//有待修改及确定是否使用???????//设置接收缓冲器0的标识符和初始化数据??//SPIByteWrite(RXB0SIDH,0x55);//设置接收缓冲器0的标准标识符,待修改***??//SPIByteWrite(RXB0SIDL,0xE0);//用到标准标识符??SPIByteWrite(RXB0CTRL,0x20);//仅仅接收标准标识符的有效信息,FIILHIT0=0表示RXB0 ,采用FILHIT0??SPIByteWrite(RXB0DLC,DLC_8);//设置接收数据的长度为8个字节????? SPIByteWrite(RXF0SIDH,0xE0);//初始化接收滤波器0,待修改***??SPIByteWrite(RXF0SIDL,0xE0);??SPIByteWrite(RXM0SIDH,0xFF);//初始化接收屏蔽器0,待修改***??SPIByteWrite(RXM0SIDL,0xE0);???????????????//设置接收缓冲器1的标识符和初始化数据?? //SPIByteWrite(RXB1SIDH,IDF
您可能关注的文档
最近下载
- 2025年电源管理芯片产业分析报告.pdf VIP
- 预防呼吸机相关肺炎的集束化管理策略课件.pptx VIP
- 【高三上】江淮十校2026届高三第一次联考语文试题含答案.docx
- 北京市海淀区2024-2025学年七年级上学期期末英语试题(含答案与解析).pdf VIP
- 2023年IATF16949汽车质量管理体系程序文件汇编(内含39个程序以及质量手册).docx VIP
- 关务风险管理.pptx VIP
- (2025秋新版)人教版八年级英语上册《Unit 4 Amazing Plants and Animals》PPT课件.pptx
- 2025年最新征信报告可编辑模版1.pdf
- {工作手册}物资编码手册.pdf VIP
- 食品厂产品留样制.doc VIP
文档评论(0)