[CAN-bus/DeviceNet] 刚写的can总线调试记录

[复制链接]
 楼主| 1181zjf 发表于 2007-7-29 21:24 | 显示全部楼层 |阅读模式
 楼主| 1181zjf 发表于 2007-7-29 21:27 | 显示全部楼层

忘了添加文件

  <br /> 相关链接:<a href='https://bbs.21ic.com/upfiles/img/20077/2007729212729628.rar'>https://bbs.21ic.com/upfiles/img/20077/2007729212729628.rar</a>
xihulu_r 发表于 2007-7-30 09:00 | 显示全部楼层

下不了,被删除了?

能否发到俺油箱一份?谢谢!<br />xihulu_email@sohu.com
 楼主| 1181zjf 发表于 2007-7-30 16:32 | 显示全部楼层

xihulu_r 已发送!

注意查收.
jingsong 发表于 2007-8-1 17:08 | 显示全部楼层

怎么下不了,请发邮箱一份,谢谢!!!

liuhaifeng_js@163.com<br />谢谢!!!
 楼主| 1181zjf 发表于 2007-8-2 10:20 | 显示全部楼层

已发送

  
alearc 发表于 2007-8-2 10:52 | 显示全部楼层

如雪中送碳

非常感谢发我一份,急需~!<br />alearc@126.com
landcloud 发表于 2007-8-16 20:58 | 显示全部楼层

感谢楼主

landcloud0517@163.com<br />
soooooog 发表于 2007-8-17 10:46 | 显示全部楼层

给发一份,谢谢

  
soooooog 发表于 2007-8-17 10:47 | 显示全部楼层

给发一份,谢谢

给发一份,谢谢<br />song-ql@163.com
xrb 发表于 2007-8-18 15:23 | 显示全部楼层

调试CAN

发一份给我,谢谢!xiarongbang@163.com
cyongkai 发表于 2007-8-22 20:24 | 显示全部楼层

给我发一份!!

能不能给我发一份!!谢谢!!<br />邮箱:chkaihao@sogou.com
 楼主| 1181zjf 发表于 2007-8-23 06:43 | 显示全部楼层

主要调试内容

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CAN总线调试记录<br />一.说明:<br />最近一个项目用到了CAN总线,借此机会学习了CAN总线.有关CAN总线的协议在这不再详述,可以在网络上搜到相关资料.<br />二.实验平台:<br />&nbsp;&nbsp;&nbsp;CAN232MB+SJA1000+AT89C52+MCP2551<br />&nbsp;&nbsp;&nbsp;CAN232MB----232转CAN模块(广州周立功邮购)<br />&nbsp;&nbsp;&nbsp;SJA1000----CAN控制器(广州周立功邮购)<br />&nbsp;&nbsp;&nbsp;AT89C52----这个不用介绍了吧&nbsp;^_^&nbsp;<br />&nbsp;&nbsp;&nbsp;MCP2551----CAN总线收发器<br />三.实验电路<br />&nbsp;&nbsp;&nbsp;<br />电路说明:<br />电路参考ZLG网站上的资料,并加了一些测试用的发光二极管.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CPU晶振11.0592M<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SJA1000晶振16M&nbsp;&nbsp;<br />片选地址&nbsp;:由于SJA1000的片选信号接了P2_7,所以片选地址为0x0000到0x7f00<br />之间的值(实验用的是0x7f00).<br />四.开发记要:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.Basic模式<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.zlg网站提供的测试程序中sja1000的晶振为12M,sja1000初始化配置为100kpbs,测试失败,换为16M晶振,串口调试助手看到了数据.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.验收代码寄存器ACR验收屏蔽寄存器&nbsp;AMR分别配置为0xff&nbsp;0xff,无条件接收.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.第3步通过后,再做选择性的接收测试,例如,将can232MB(ZLG网站有说明书)配置为ID为00&nbsp;00&nbsp;05&nbsp;50,ACR=0x02,AMR=0x00;&nbsp;SJA1000的ID配置为0x02,ACR&nbsp;=0xaa,AMR=0x00;实验用了两台电脑对发数据,单片机从串口接收到的数据通过sja1000传给CAN232MB,最后传到另一台计算机上显示出来<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;例如:PC1发送一组数据到89C52,00&nbsp;48&nbsp;01&nbsp;02&nbsp;03&nbsp;04&nbsp;05&nbsp;06&nbsp;07&nbsp;08(前两个字节为ID标识符和数据长度,是CAN232MB能通过验收的标识符,注意哦!!!),单片机收到数据后,转发到PC2。通过PC2用串口调试助手发数据,如:01&nbsp;02&nbsp;03&nbsp;04&nbsp;05&nbsp;06&nbsp;07&nbsp;08(这里没有标识符,已经在CAN232B中设置,自动加的)。不用CAN232MB也可以做实验,做两块一样的sja1000实验板,对发数据。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.最后加上高速光耦6n136或6n137,电路如下图<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />注意:使用6n136时,第7脚不与VCC相连。<br />五.程序<br />&nbsp;&nbsp;实验的代码来自zlg网站,略做修改即可。我实验用的是basic模式,peli模式自检测发送也测试成功,还没做进一步研究,确保硬件无误后,再调试程序,以免多走弯路。还有波特率的设置,验收代码寄存器,验收屏蔽寄存器,标识符的设置是重点。还有就是下载的代码中sja1000用的是12M晶振,不过没调通(乱码都看不到),换为16M的调试成功,最后一点,用STC89C52调试不成功,可能是时续的问题,AT89C52可以。<br />
luky133 发表于 2007-8-24 10:41 | 显示全部楼层

刚学CAN,能否发我一份,谢谢

luky133@yahoo.com.cn
ppbbcc 发表于 2007-8-24 12:17 | 显示全部楼层

麻烦给我一份,我调试有些问题

piwenbo@sina.com
huziwang 发表于 2007-9-24 14:09 | 显示全部楼层

刚写的can总线调试记录

麻烦也给我传一份吧<br />hongjiefirst1@163.com
 楼主| 1181zjf 发表于 2007-9-30 20:42 | 显示全部楼层

程序

  
 楼主| 1181zjf 发表于 2007-9-30 20:44 | 显示全部楼层

如下

  <br /> 相关链接:<a href='https://bbs.21ic.com/upfiles/img/20079/200793020440354.rar'>https://bbs.21ic.com/upfiles/img/20079/200793020440354.rar</a>
 楼主| 1181zjf 发表于 2007-9-30 23:31 | 显示全部楼层

can总线有第二方案啦

前段时间调通了51+sja1000<br />最近又调通了avr(mega8)+mcp2515<br />mcp2515优点是同mcu接口简单,spi接口.<br />mega8带spi接口和adc,可以采集模拟量,通过can总线传送到主控mcu,如果都选用贴片元件,pcb可以做的很小^_^
 楼主| 1181zjf 发表于 2007-10-4 15:49 | 显示全部楼层

stc89c52 & sja1000

刚才又试了stc89c52,通讯正常.<br />以前用stc的没成功,怀疑是sja1000的总线波特率设置正确!!!<br />这样用stc的isp功能比用51编程器(编程器太烂)还快.<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

25

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部