Board logo

标题: [求助]can收到报文现象,高手指点 [打印本页]

作者: zhwdy81    时间: 2005-10-27 16:18     标题: [求助]can收到报文现象,高手指点

小弟在做一个汽车模块,要使用定时捕捉检测车速,然后将得到的车速,发送给仪表。
但是我收到的报文(长度6字节)每次都还跟有一个3字节的报文,并且id不知道哪儿搞来得,报文是我6字节报文的前3个字节。

小弟的过程是这样的
捕捉中断(设标志)----〉查询标志-------〉处理车速----〉can发送程序
作者: mist_24    时间: 2005-10-28 08:43

ID和数据应该是连着的两部分,有单独的接收寄存器;并且ID应该是你自己设定的
作者: mist_24    时间: 2005-10-28 14:12

接收屏蔽寄存器怎么设定的??
作者: zhwdy81    时间: 2005-11-3 11:47

            lda    #$19
            sta    cidar0          ;$0CF0X2=$19E0(软件问题,上位机软件将id*2了)
            lda    #$E0            ;!!!
            sta    cidar1
            clra
            sta    cidar2
            sta    cidar3

 

            lda    #$0
            sta    cidmr0
            lda    #$0F
            sta    cidmr1          ;$0F
            lda    #$FF
            sta    cidmr2

[此贴子已经被作者于2005-11-3 11:47:28编辑过]


作者: zhwdy81    时间: 2005-11-3 17:08

我设定的id是2dd,而出来的是除了这个以外还有一个id是791的3字节报文

[此贴子已经被作者于2005-11-3 17:08:19编辑过]


作者: zhwdy81    时间: 2005-11-3 17:15

搞定了,原来是id处理问题
小弟初学单片机,对can的11位id理解有点错误,嘿嘿
原来在发送的时候要将id左移一位然后补0,今天突然发现了,原来是rtr在作怪




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0