CAN 通讯扩展利器MCP25625

关键字 :CAN扩展通讯

CAN在工业以及汽车领域的控制器中得到了越来越广泛的应用,CAN通讯很适合工业,汽车内部总线通讯,具有优先级,错误自我诊断功能,通讯速率可以从200K-1M,相对485而言,CAN由硬件决定了报文的优先级以及错误帧的自我检测。免去了通讯协议自己规划定制的麻烦,以及协议疏漏可引起的bug。

现在CAN通讯的接口也从一个扩展到了2个或者更多,当微控制器没有CAN口或者只有一个不够用的时候,如果因为CAN口更换控制器,可能需要更换芯片的平台,导致工程上工作量的增加,延长工程的时间成本,人力成本。

Microchip推出了MCP25625,一个可以通过SPI接口扩展CAN控制及的芯片。该芯片还内部集成了CAN的收发器,如果客户选用了这个芯片扩展CAN口还可以节省一个外部的CAN收发器。

我们来看看MCP25625的特点

  1. MCP25625是一颗集成了CAN收发器的如何0B规范的CAN控制器
  2. 通讯速率最高可以达到1M
  3. 待机电流10uA
  4. 扩展接口使用SPI接口,可以达到10M速率
  5. 芯片IO可以兼容7V-5.5V的信号
  6. 芯片可以提供车规级,温度扩展级

MCP25625使用SPI口与外部控制器通讯,实现为控制器扩展CAN口的功能其典型的连接框图如下:

   

  

由于MCP25625内部集成了CAN的收发器,所以客户无需再单独外购CAN的收发器,简化了客户的PCB板,以及采购流程MCP25625的VDDA必须连接5V,这个电源给片内的CAN收发器供电。芯片自身以及IO可以在2.7V-5.5V电压下工作,因此可以方便的与3.3V控制器相连接而无需额外的电平转换器件。MCP25625可以通过自身的CLOCK OUT引脚为外部的微控制器提供时高精度的钟源。

MCP25625支持五种工作模式

  1. 配置模式
  2. 正常模式
  3. 监听模式
  4. 睡眠模式
  5. 循环模式

芯片的工作模式需要通过CANCTRL寄存器的REQOP[2:0]位完成,把模式写入寄存器后,通过查询CANSTAT的OPMOD[2:0]位,确认配置的模式是否生效芯片的STBY管脚通过高,低状态实现芯片正常工作模式以及待机模式的转换,达到降低功耗的目的。MCP25625实现CAN2.0B的功能,符合ISO 11898-1的标准,CAN控制器的框图如下:

   



 

MCP25625具有三个发送buffer,两个接收buffer,6个接收滤波器以及两个屏蔽滤波器。其结构框图如下:
 

 

MCP25625通过中断引脚告知外部的微控制器发送以及接收状态,当CAN的数据发送成功后在INT引脚发出一个中断信号,告诉控制器,数据发送完成,接收MCP25625接收到信息后也会通过中断引脚告知外部的微控制器,其信息接收框图如下:

 

MCP25625的TxnRTS引脚可以配置位请求发送引脚,可通过TXRTSCTRL配置相应的功能该引脚有内部100K的上拉电阻。RX0BF,RX1BF也可以通过BFPCTRL寄存器配置为报文接收中断,当报文被接收后,通过该引脚触发中断信号,通知微控制器,报文接收完毕

MCP25625的报文滤波器与屏蔽滤波器的关系如下图所示:

当接收到的ID,通过接收滤波器以及屏蔽滤波器匹配后,其内容会被接收到相应的接收缓冲区。

MCP25625具有两个错误计数器:接收错误计数器跟发送错误计数器。计数器的数值可被外部控制器读取,计数器的数值会根据CAN总线协议规范增加减少,任何一个计数器的数值达到128的时候,会进入被动错误状态,达到255时候进入总线光比状态。

MCP25625需要外接石英振荡器,其框图如下:


MCP25625上电复位电路如下图所示:

 MCP25625集成了CAN收发器的外挂CAN控制器,可以跟任何的控制器平台通过SPI接口方便的扩展CAN口,可以广泛的应用于工控类,汽车类CAN通讯产品的应用。

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论