Part Number:TMS320F28377DOther Parts Discussed in Thread:C2000WARE
最近在学习CAN模块,然后遇到了一个问题纠结了我很久
can模块支持自回环模式通信,假如我不使用can的自回环模式,在芯片外部将CANATX和CANARX(不经过can收发器)引脚直接相连,这样他们能否进行数据的传输?
我直接使用自回环的例程,将相应的测试模式自回环模式寄存器位给屏蔽掉了,具体屏蔽程序如下:
// HWREG(CANA_BASE + CAN_O_CTL) |= CAN_CTL_TEST;
// HWREG(CANA_BASE + CAN_O_TEST) = CAN_TEST_LBACK;
测试发现,数据无法正常传输,CAN模块无法接收到自己发送的数据,但是理论上来说,这和自回环模式原理是类似的,只不过一个是外部连接一个内部连接,应该是可以进行数据的正常收发的。
不知道是不是还有其他寄存器没有设置,希望TI的工程师能给点意见,谢谢!
Susan Yang:
user4921973 说:在芯片外部将CANATX和CANARX(不经过can收发器)引脚直接相连,这样他们能否进行数据的传输?
这样是不能通信的。回环的话,分为External Loopback Mode和Loopback Mode
https://www.ti.com.cn/cn/lit/ug/spruhm8i/spruhm8i.pdf
的22.4.3.2 Loopback Mode 22.4.3.3 External Loopback Mode
您可以仔细研究一下
例程的话,可以看一下
C2000Ware_3_04_00_00\device_support\f2837xd\examples\cpu1\can_loopback_interrupts\cpu01