|
以前我做了一个小板子,使用mega16 芯片 +sja1000+82c250+4位数码管 做了一个Can节点,
使用zlg Canbus2.0 的 zlgcantest 通讯成功!
于是我又将此板子升级,在can部分增加了光耦隔离,和电源隔离
变为:mega16+sja1000+6n137+82c250+4位数码管+dc0505
结果就是通讯不成功!最后没办法,就又写了一个can自收自发的自检测程序
结果原先的小板子,速度非常快的就可以得到自己发送的数据,
而通过改进的光耦隔离板子,在发送的时候需要3秒才能得到自己发送的数据
while(!(read_sja(SR) & 0x08));//检测SR.3位,判断发送是否完成
一直在这个循环中3秒才行!
目前,使用的芯片为贴片的,并且都焊在pcb上啦.
在准备拆除6n137测试前,我想请教大家是否遇到过此类问题!
另外,sja1000自检测(自收自发)是否走了82c250的接收和发送?
昨天晚上,找了个朋友帮忙解决,告诉我说可能是cpu运行慢,这让我想到我的晶振换成
16M的,于是下载程序时设置了下熔丝,结果,锁住一块板子,今天吃完饭还要去解锁!
备注: 原先板子 mega16L 8MAU
光耦板子 mega16 16MAU |
阿莫论坛20周年了!感谢大家的支持与爱护!!
该献的血还是要献的。你不献他不献。难道让我去献? --- 出自坛友:lovejp1981
|