5549|4

74

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

CAN通讯中不断配置邮箱,发送数据有没有问题? [复制链接]

本帖最后由 dontium 于 2015-1-23 13:34 编辑

我用的是28系列芯片,CAN通讯,发送数据很多,COB-ID也不一样,只用一个发送邮箱完成不同数据的发送,每次发送数据前,先要重新配置此邮箱的COB-ID、数据长度等,不知道这样做有没有问题?
现在我遇到的问题是,通讯有时会错误,察看CANES寄存器,一般都是CANES.4=1导致的。
请教版主CANES.4=1是什么原因引起的,因为CANES.4=1后,CAN通讯模块就象死了一样,接收发送中断再也进不去了---------非常感谢!!!

最新回复

小弟我用的是2812,现在做测试程序,想实现把开发板上的数据发送到pc上,接法是:dsp--can转换器----pc;在pc上通过串口调试器观看收到的数据。我现在通过仿真器可以观察到程序可以发数据,可是在PC端却无法接受数据,ID号设为一致,波特率为250k。用示波器观察can引脚始终为高,波特率设置如下:     EALLOW;         /*(BRPREG+1)=10 feeds a 15MHz CAN clock*/         ECanaShadow.CANBTC.bit.BRP = 39;            /*150/10=15*/         ECanaShadow.CANBTC.bit.TSEG2 = 5;         ECanaShadow.CANBTC.bit.TSEG1 = 7;         ECanaRegs.CANBTC.all = ECanaShadow.CANBTC.all;                 ECanaShadow.CANMC.all = ECanaRegs.CANMC.all;         ECanaShadow.CANMC.bit.CCR = 0;         ECanaRegs.CANMC.all = ECanaShadow.CANMC.all;         EDIS; 还想请问用示波器观察正常的can收发是什么样的波形啊  详情 回复 发表于 2008-7-31 03:24
点赞 关注

回复
举报

62

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

能进去才是怪事那

本帖最后由 dontium 于 2015-1-23 13:34 编辑

上述现象比较怪:1、上位机与一个节点单独通讯,试了很多次都没有出现这个问题;
                2、当上位机和两个节点通讯,一般能通讯上一段时间,然后节点就出这个问题了!
    在此过程中的通讯为,上位机和两个节点不断交换数据。
    不大象是初始化未完成。
    谢谢回复哈
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
问问CAN方面的知识青年:当通讯速率为1M的情况下,一般可以连接多少个节点不出错?500K呢?
我现在测试了一下,上面问题是在通讯速率为1M情况下出现的,在500K通讯速率下没有试出来!
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

4
 

呵呵

经过我这些天的实践,CANES.CCE位并不完全是由于CANMC.CCR的变化引起的,还有其他原因。我想问问:怎样把错误计数器CANTEC和CANREC的数值清零???直接清除好像不行,我又不想使总线关闭后它自动清零-------非常感谢!

[ 本贴由 estan 于 2007-7-17 09:22 AM 最后编辑 ]
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

5
 

can与PC 通信

小弟我用的是2812,现在做测试程序,想实现把开发板上的数据发送到pc上,接法是:dsp--can转换器----pc;在pc上通过串口调试器观看收到的数据。我现在通过仿真器可以观察到程序可以发数据,可是在PC端却无法接受数据,ID号设为一致,波特率为250k。用示波器观察can引脚始终为高,波特率设置如下:
    EALLOW;
        /*(BRPREG+1)=10 feeds a 15MHz CAN clock*/
        ECanaShadow.CANBTC.bit.BRP = 39;   
        /*150/10=15*/
        ECanaShadow.CANBTC.bit.TSEG2 = 5;
        ECanaShadow.CANBTC.bit.TSEG1 = 7;
        ECanaRegs.CANBTC.all = ECanaShadow.CANBTC.all;
       
        ECanaShadow.CANMC.all = ECanaRegs.CANMC.all;
        ECanaShadow.CANMC.bit.CCR = 0;
        ECanaRegs.CANMC.all = ECanaShadow.CANMC.all;
        EDIS;
还想请问用示波器观察正常的can收发是什么样的波形啊
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表