打印

AT91sam系列的can通信连续读取数据问题

[复制链接]
1123|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xz4950|  楼主 | 2013-10-22 18:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前一直用stm32做can通信 用STM32板子上的can通信 一直很好用,最近接触at91sam9x35  它的can通信方式和STM32 不一样,一直can接受出现问题?请教几个问题。
1、at91sam9x35 和一个stm32进行can通信 一直没有问题,at91sam9x35 和12个stm32通信 问题就出来了  at91sam9x35的接受can信息有两种模式一种简单模式(接受到第一个can信息 就忽略后来的can信息)一种是覆盖模式(接受到新的信息直接将老信息覆盖掉),看到介绍 傻眼了! 怎么接收信息才能不丢失信息呢?
2、at91sam9x35 上面PDF 介绍说 运用多个邮箱进行轮换方式,置位邮箱控制寄存器(CAN-MCR)中的MTCR 来控制邮箱状态寄存器(CAN_MSR)的MRDY,来继续接受数据,我进行了设置3个邮箱,可不知道怎么设置 CAN-MCR中的MTCR,忙活了一周 也没有能控制好轮询接受。
3、一个can里面有8个邮箱,当中断来临时 判断can状态寄存器 MBx(x=0-7);是否有事件发生  有事件发生就进行can信息读取,用for循环将8个邮箱查找一遍,有信息就读取(1、先查看邮箱模式判断是接受还是发送邮箱,2、读取数据,我的问题主要出现在读取问题上),8个读取后应该置位CAN-MCR中的MTCR,可是不管我怎么置位 都不能连续读取数值了,命名12个从机 我开3个邮箱 或者8个邮箱,只能接受3个或者8个数据,剩下的从机信息就丢失了! 4、at91sam系列的can通信 怎么连续读取数据呢 请高人指点

相关帖子

沙发
阿南| | 2013-10-22 19:54 | 只看该作者
这个最好找ATMEL的原厂工程师交流一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝