【48812】CAN总线接口模块作业原理

时间: 2024-07-04 12:49:36 |   作者: 技术方案

  操控器局域网(CAN)模块是用于与其他外围设备或单片机进行通讯的模块,这种接口协议能在较大的噪声 环境中进行通讯,具有十分杰出的扰搅扰功用。

  CAN模块是一个通讯操控器,履行的是Bosch公司的CAN2.0A/B协议。它能支撑CAN1.2、CAN 2.0A、CAN 2.OB 协议的旧版别和CAN2.OB现行版别,此操控器模块包括完好的CAN体系。

  CAN模块由协议驱动和信息缓冲及操控组成,CAN协议驱动CAN总线上接纳和发送信息的一切功用。信息装载 到某个相应的数据寄存器后再发送,经过读相应的寄存器可查看状况与过错信息。在CAN总线上检测到的任 何信息都要进行过错查看,然后与过滤器作比较,判别是否被接纳和存储到两个接纳寄存器之一。

  CAN模块支撑以下帧类型:规范数据帧、扩展数据帧、长途帧、犯错帧、过载帧和闲暇帧。

  用于各节点之间传送数据音讯,由7个不同的位场组成:帧开端、裁定场、操控场、数据场、CRC场、应对 场和帧完毕。数据帧结构如图1所示。

  当CAN网络上一个节点需求其他节点所具有的数据信息时,可以终究靠发送长途帧来恳求另一节点发送。该 长途帧的标识符标识了所需数据的类型,因而,被送回的数据信息的标识符和长途帧的标识符完全一致。数 据源节点在接纳到长途帧后,依据长途帧的标识符判别所需数据信`患类型,并在总线闲暇时将相应数据送 出。长途帧由6个位场组成:帧开端、裁定场、操控场、CRC场、应对场和帧完毕。除了没有数据场和RTR为 隐性外,长途帧结构和数据帧完全相同,长途帧结构如图2所示。

  为进行过错界定,每个CAN操控器均设有两个过错计数器:发送过错计数器(TEC)和接纳过错计数器 (REC)。CAN总线上的一切节点按其过错计数器数值状况可分为3个状况:过错活动状况、过错认可状况和 总线封闭状况。节点状况转化如图3所示。

  上电复位后,两个过错计数器的数值都为0,节点处于过错活动状况,可正常参加总线通讯,检测到过错时 ,发送活动过错标志。当过错计数器任一数值超越127时,节点进入过错认可状况。处于过错状况的节点可 参加总线通讯,但犯错后,发送认可过错标志,并在开端进一步发送数据之前等候一段附加时刻(暂停发送 场)。

  当发送过错计数器和接纳计数器均小于或等于127时,节点从过错认可状况再次变为过错活动状况。若发送 过错计数器数值超越255后,节点进入总线封闭状况,既不能向总线发送数据,也不能从总线接纳数据。当 软件履行操作形式恳求指令,并等候128次总线开释(BusˉFree)序列(11位接连隐性位)后,节点从总线 脱离状况从头再回到过错活动状况。

  过错帧由两个不同的位场组成,第一个场由来自不同的节点的过错标志叠加而成,第二个场为过错界定符 ,过错帧结构如图4所示。

  超载帧由超载标志和超载界定符组成。超载标志由6个显性位组成,其格局与活动过错标志相同。超载界 定符由8个隐性位组成,其格局与过错界定符相同。导致发送超载帧的两个条件为:

  当超载标志宣布后,每个节点监督总线状况,直至检测到从显性至隐性位的跳变,此刻,一切的节点均己 完成了超载标志的发送,随后一切节点开端发送8个隐性位组成的超载界定符,超载帧结构如图5所示。