这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » ZLGCAN,can 请教ZLGCAN:置发送请求位,can总线马上复位,为什么

共2条 1/1 1 跳转至

ZLGCAN,can 请教ZLGCAN:置发送请求位,can总线马上复位,为什么?

院士
2006-09-17 18:14:16     打赏
ZLGCAN,can 请教ZLGCAN:置发送请求位,can总线马上复位,为什么?



关键词: ZLGCAN     请教     发送     请求     总线     马上     复位         

院士
2006-12-22 22:43:00     打赏
2楼
问 硬件有华邦的W77E58,SJA1000、6N137、82C250。另一个节点是周立功的USBCAN1转换器,波特率设置为03,1C,也就是125k。初始化时候监视外部数据地址,显示初始化是成功的,然后向发送缓冲器写10个字节的数据,写入后,置位命令寄存器的发送请求位,此时SJA1000马上显示复位。然后状态寄存器的值变为c4,软件复位后,仍然是04,只有硬件重新上电之后,才是0C。不知道是什么原因,很着急,请帮忙。 1: OH! Reply is here.CAN的一个普遍问题 [转载自工控网]

CAN的一个普遍问题
作者:穿山甲,2004-3-9 17:02:00发表于:《现场总线论坛》 共有17人回复  
  我现在在调试CAN总线,用的是SJA1000+80C196单片机+6N137+82C250,遇到的问题是:
  初始化正常,SJA工作正常,把板子连到总线上,利用仿真器发送一帧数据,出现问题。
  我发现当发送一帧数据后,状态寄存器为C4,也就是说传输错误计数器已经超过了限制(255),请问在什么情况下会发生这样的错误?

以下是对《CAN的一个普遍问题》的回复:  
清风笑:    2004-3-11 12:46:00
   当工作于BasicCAN工作模式时,在每次发送CAN信息帧的“响应场”,SJA1000芯片都会检查CAN总线上其他节点发来的总线确认信号,以判断是否发送完成;这是由CAN2.0规范所决定的。
   当单个SJA1000芯片发送CAN信息帧时,会无法收到总线上其他节点的确认信息,从而判断本节点本次发送过程失败,导致自动进入“重发”模式,发送错误计数器REG_CAN_TXERR的值增加;如果REG_CAN_TXERR的值超过限值,将使SJA1000芯片发生总线离线,进入复位状

穿山甲:    2004-3-11 13:47:00
   多谢清风笑的指点,我现在把两块板子已经连了起来(A板发送,B板接收),还是这样,我想知道为什么B板没有应答,问题可能会出现在哪?B板初始化应该是过去的,连线也是正确和通的。多谢!!

瑜家学子:    2004-3-12 11:58:00
   出现这种情况可能是两边的波特率设置有问题,还有可能就是两边的工作模式不同,如一边是Basic模式而另一边却是Peli模式,由于二者在SJA1000中接收缓冲区的数据格式的不同,从而导致接收不正确。再不行的话可能就是硬件的问题了,如接线是否正确,有没有虚焊,建议你用示波器看看发送端和接收端的波形,仔细看看发送是否成功了,接收端是否有数据





共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]