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

请教:TMS320F28035PAGQ在芯片内部温度达到80℃以上时,CAN通讯出差异常问题!

问题现象:

        我选用TMS320F28035PAGQ做了一个样板,采用热风枪,出风温度调在120℃,单独加热DSP(用于模拟使DSP芯片内部温度达到80℃以上的工作环境),DSP的温度会慢慢上升,当温度升高到80℃以上时,就会出现CAN通讯故障后,电脑端的上位机显示为BUS HEAVY状态“”,一旦DSP的温度回落到80℃以下,CAN通讯立刻自动恢复正常。当DSP温度保持在80℃以上时,通过重启DSP,CAN通讯故障现象依然存在,除非DSP温度降下来,CAN通讯才会自动恢复正常。通过更换不同型号CAN收发器芯片,故障现象也依然存在。

        测试过程中,CAN通讯线的2个终端电阻都是120Ω,线长约1.5米,通过更换不同品牌的P-CAN,重新焊接DSP,更换同型号的DSP,故障现象依然存在,用示波器观察DSP供电电压3.3V及CAN收发器供电电压5V的电平,未发现异常变化;

        用DSP的GPIO配置了一个LED灯的状态指示,CAN故障发生时,DSP无重启现象,LED灯的指示状态正常,软件逻辑运行正常,PWM输出正常。

        在出现CAN通讯故障时,用示波器捕获CAN信号波形,如下图,通道1:DSP-TX,通道2:DSP-RX,通道3:CAN-H,通道4:CAN-L,信号可通过收发器传播,初步判断不是收发器问题。通过示波器对比有故障及没故障的CAN总线波形,可以看到通讯速率都保持在250kBit/s,且示波器抓到故障时CAN总线上有很频繁的相同CAN数据,CAN波形并没有受到明显的干扰,好像是由于这个CAN数据的帧没有被其它的CAN节点应答的想象。

       

      DSP接DEBUG观察CAN寄存器Error and status register(CANES),当DSP温度升高到CAN通讯故障时,CANES值为0X80001, 表示CAN module received no acknowledge与CAN module is transmitting a message regardless of mailbox configuration,即DSP发出的CAN帧中ACK场没有被填充应答,之后CAN一直尝试着重新发送,根据该现象可以确定故障时DSP发送的帧没有被其他CAN节点应答。(一帧CAN报文中ACK段长度为2个位,包含应答间隙(ACK Slot)和应答界定符(ACK Delimter)。在应答场里,发送站发送两个隐性位。当接收器正确地接收到有效的报文,接收器就会在应答间隙(ACK Slot)期间(发送ACK信号)向发送器发送一“显性”的位以示应答。 )

      通过在同一个样板上,更换了不同型号的DSP“TMS320F28035PAGT”,软件相同,但是此型号的芯片表现比较好,CPU芯片内部温度显示95℃,CAN仍然保持正常通讯。此型号芯片的工作温度范围:-40℃~105℃。

      请大家帮忙分析看看,可能是什么原因造成这种异常情况的出现?

      CAN底层软件问题?

      硬件问题?

mangui zhang:芯片还是有一些差异可能要经过筛选吧但是手册上的温度范围低温可能可以更低高温应该能满足范围

赞(0)
未经允许不得转载:TI中文支持网 » 请教:TMS320F28035PAGQ在芯片内部温度达到80℃以上时,CAN通讯出差异常问题!
分享到: 更多 (0)