TI中文支持网
TI专业的中文技术问题搜集分享网站

SN65HVD230 待机模式收到数据错误

你好,

同一电路板上两个SN65HVD230互相通信测试,

第一片 RS引脚通过10k连接到GND,它连接CAN1

第二片RS引脚通过10k连接到3.3V,它连接CAN2

CAN1通过第一片SN65HVD230发数,

CAN2接收,示波器可以看到有数据过来,但是CPU无法正常接收,估计是校验没法通过。

这时把第二片RS引脚接地,CPU的CAN2可以正确收到CAN1的数据。

第二种情况,把CAN线,再连接一个USB转CAN的工具,到PC,打开这个工具后,工具能正常收数,这时CAN2也能正确收数,注意此时RS是10k电阻接3.3V的。

下图是两根CAN信号线,无法正常接收情况:

下图是可以正常接收情况:

附加一份原理图:

希望得到帮助,谢谢!

Kailyn Chen:

 Rs拉高时候,driver是off,receiver是activity,所以按理CAN1是看不到数据发送过来的。

至于当RS拉高时候,接上USB转CAN工具,能正常收发,对于从低功耗状态return到normal operation状态,datasheet中有这样一句描述: The host controller (MCU, DSP) returns the device to a transmitting mode (high speed or slope control) when it wants to transmit a message to the bus or if during standby mode it received bus traffic indicating the need to once again be ready to transmit.

Hongbo Dong:

回复 Kailyn Chen:

首先谢谢回答,但是没发解决疑问。

在数据手册第二页,description:

The circuit of the SN65HVD230 enters a low-current standby mode during which the driver is switched off andthe receiver remains active if a high logic level is applied to pin 8. The DSP controller reverses this low-currentstandby mode when a dominant state (bus differential voltage > 900 mV typical) occurs on the bus.

这句话的意思是,PIN8 = High,但是当CAN的两根线压差超过0.9V,会退出待机模式。 这个是它区别于SN65HVD231的地方。

我们做的是车载设备,而这个芯片能消耗8mA,比我们整个电路板都多,请帮忙认真分析下,谢谢!

 

Kailyn Chen:

那我想是不是可以做如下实验:

当CAN1 和CAN2 的Rs均为low时,收发均没问题。

当CNA1 RS为low,CAN2的Rs为高时,CAN1 发数据,CAN2接收错误,按照datasheet上描述,HVD230的driver off,但receiver还是activity的,那么此时能否用其他trancevier发送数据试试,CAN2是否能正常接收呢?

另外,两片CAN的Vref均接地的,建议接1/2 Vcc.波形更直观些。

赞(0)
未经允许不得转载:TI中文支持网 » SN65HVD230 待机模式收到数据错误
分享到: 更多 (0)