NEC_V850_CAN控制器中文翻译.doc_第1页
NEC_V850_CAN控制器中文翻译.doc_第2页
NEC_V850_CAN控制器中文翻译.doc_第3页
NEC_V850_CAN控制器中文翻译.doc_第4页
NEC_V850_CAN控制器中文翻译.doc_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十六章 CAN控制器第十六章 CAN控制器16.1 概况说明该产品专有一个片上1通道的CAN(控制器局部网)控制器,它遵守ISO 11898中规定的CAN协议。16.1.1 特性 - 遵循ISO 11898并依照ISO/DIS 16845 (CAN一致性测试)测试- 允许标准帧和扩展帧发送/接收传输速率: 最高1Mbps(CAN时钟输入8 MHz)- 16个报文缓存器/1个通道- 接收/发送记录列表功能- 自动块传输功能- 多缓存接收块功能- 每个通道可设置4种屏蔽模式16.1.2 功能概述表16-1给出了CAN控制器的功能概述。表 16-1. 功能概述功能详情协议CAN协议ISO 11898 (标准帧和扩展帧发送/接收)波特率最高1 Mbps (CAN 时钟输入 8 MHz)。数据存储报文存储在CAN RAM 报文数目- 16个报文缓存器/1个通道- 各报文缓存器既可以设为发送报文缓存器也可以设为接收报文缓存器。报文接收- 每个报文缓存器可设置唯一的ID。- 每个通道可设置4种屏蔽模式。- 每接收一个报文便产生一个接收完成中断并存储在报文缓存器中。- 两个或更多的接收报文缓存器可用作FIFO接收缓存器(多缓存接收块功能)。- 接收记录列表功能报文发送- 每个报文缓存器可设置唯一的ID。- 每个报文缓存器的发送完成中断- 0至7号报文缓存器指定为发送报文缓存器,可用于自动块传输。 报文发送间隔可编程 (自动块发送功能 (以下称为“ABT”)。- 发送记录列表功能远程帧处理通过发送报文缓存器处理远程帧。时间标记功能- 当配合使用一个16位定时器时,可为接收报文设置时间标记功能。可选择时间标志捕获触发器 (可检测CAN报文帧中的SOF或 EOF)。诊断功能- 可读错误计数器- 验证总线连接的“有效协议操作标志”- 只收模式- 单次模式- CAN 协议错误类型解码- 自检模式强制从掉线状态解除- 可通过软件强制从掉线状态解除(通过忽略时间限制)。- 没有从掉线状态自动解除(必须重新使能软件)。节电模式- CAN 睡眠模式(可由CAN总线唤醒)- CAN 停止模式(不能由CAN总线唤醒)16.1.3 配置CAN控制器由以下四部分组成。(1)NPB 接口该功能部分提供一个NPB(NEC外设I/O总线)接口和CAN模块与主机CPU之间收发信号的方法。(2)MCM (报文控制模块)该功能部分控制到CAN协议层的和CAN模块内部CAN RAM的访问。(3)CAN 协议层该功能部分涉及CAN协议的操作及其相关的设置。(4)CAN RAM 此为CAN存储器功能部分,用于存储报文ID,报文数据等等。图 16-1. CAN模块的框图16.2 CAN 协议CAN(控制器局部网)是应用于汽车实时通信中的高速多路复用通信协议 (C类)。 CAN由ISO 11898规定。关于详情,请参见ISO 11898规范。CAN规范通常分为两层: 物理层和数据链路层。 数据链路层依次包括逻辑链路和媒质访问控制。 这些层的组成图示如下。图 16-2. 层的组成注 CAN控制器规范16.2.1 帧格式(1)标准帧格式- 标准格式帧使用11位标识符,这意味着它可以处理最多为2048个的报文。(2)扩展帧格式- 扩展格式帧使用29位(11 位 + 18 位)标识符,将可处理的报文数目增加至2048 x 218个。- 当仲裁区的SRR和IDE位均设为“接收电平”(CMOS电平等于“1”)时,设置为扩展格式帧。16.2.2 帧类型CAN协议使用下面四种类型的帧。表 16-2. 帧类型帧类型说明数据帧用于发送数据的帧远程帧用于请求一个数据帧的帧错误帧用于报告错误检测的帧过载帧用于对下一数据帧或远程帧的延时(1)总线值总线值分为显性和隐性。- 显性电平用逻辑0表示。- 隐性电平用逻辑1表示。- 当同时发送显性电平和隐性电平时,总线值变为显性电平。16.2.3 数据帧和远程帧(1)数据帧一个数据帧包含7个域。图 16-3. 数据帧备注D:隐性 = 0R:显性 = 1(2)远程帧一个远程帧包含6个域。图 16-4. 远程帧备注1.即使控制域中的数据长度码不为“0000B”,也不传送数据域。”2.D:显性 = 0R:隐性 = 1(3)域的说明帧起始 (SOF)帧起始域位于一个数据帧或远程帧的开始。图 16-5. 起始帧(SOF)备注D:显性 = 0R:隐性 = 1如果在总线空闲状态检测到显性电平,则执行硬件同步(当前TQ被赋值为SYNC 段)。这样的硬件同步之后如果在采样点采样到一个显性电平,则该位赋值为SOF。 如果检测到一个隐性电平,那么协议层将返回总线空闲状态并将前面的显性脉冲视为噪声。 这种情况下不产生错误帧。仲裁域仲裁域用来设置优先级、数据帧/远程帧和帧格式。图 16-6. 仲裁域(标准格式模式)注意事项1.ID28至ID18为标识符。2.标识符首先传送MSB。备注D:显性 = 0R:隐性 = 1图 16-7. 仲裁域(扩展格式模式)注意事项1.ID28至ID18为标识符。2.标识符首先传送MSB。备注D:显性 = 0R:隐性 = 1表 16-3. RTR 帧设置帧类型RTR 位数据帧0 (D)远程帧1 (R)表 16-4. 帧格式设置 (IDE位)和标识符 (ID)位的个数帧格式SRR 位IDE 位位个数标准格式模式无0 (D)11 位扩展格式模式1 (R)1 (R)29 位控制域控制域将“N”设为数据域的数据字节个数(N = 0至8)。 图 16-8. 控制域备注D:显性 = 0R:隐性 = 1在标准格式帧中,控制域的IDE位与r1位相同。表 16-5. 数据长度设置数据长度码数据字节计算DLC3DLC2DLC1DLC000000 个字节00011 个字节00102 个字节00113 个字节01004 个字节01015 个字节01106 个字节01117 个字节10008 个字节其它8个字节而与DLC3至 DLC0的值无关注意事项在远程帧中,即使数据长度码不是0000B,也不存在数据域。数据域数据域包含由控制域设定的数据量(字节单元)。 最多可设定8个数据单元。图 16-9. 数据域备注D:显性 = 0R:隐性 = 1CRC 域CRC域是用于检查发送数据错误的16位的域。图 16-10. CRC 域备注D:显性 = 0R:隐性 = 1- P(X)多项式用于产生15位的CRC序列,序列表示如下:P(X) = X15 + X14 + X10 + X8 + X7 + X4 + X3 + 1- 发送节点:发送CRC序列。CRC序列由帧起始、仲裁域、控制域和数据域的数据(位填充之前)计算得到。- 接收节点:使用不包括填充位的数据位,对接收数据中计算得到的CRC序列和CRC域中的CRC序列进行比较。 如果两个CRC序列不匹配,则该节点产生一个错误帧。ACK 域ACK域用来确认正常的接收。图 16-11. ACK 域备注D:显性 = 0R:隐性 = 1- 如果没有检测到CRC错误,则接收节点将ACK时间段设为显性电平。- 发送节点输出两个隐性电平位。帧结束(EOF)帧结束域表示数据帧/远程帧的结束。 图 16-12. 帧结束(EOF)备注D:显性 = 0R:隐性 = 1帧间间隔帧间间隔在数据帧、远程帧、错误帧或过载帧之后插入,以使一帧与下一帧隔开。- 总线状态根据错误状态不同而不同。(a) 错误生成节点帧间间隔由一个3位间断域和一个总线空闲域组成。图 16-13. 帧间间隔(错误生成节点)备注1.总线空闲: 总线不被任何节点使用的状态。2.D:显性 = 0R:隐性 = 1(b)错误既成节点帧间间隔由间断域、发送暂停域和总线空闲域组成。图 16-14. 帧间间隔(错误既成节点)备注1.总线空闲:任何节点都不使用总线的状态。发送暂停:错误既成状态下从该节点发送8个隐性电平位序列。2.D:显性 = 0R:隐性 = 1间断域通常为3位。 然而,如果发送节点在间断域的第3位检测到一个显性电平,它仍然执行发送。- 错误状态下的操作表 16-6. 错误状态下的操作错误状态操作错误生成该状态下的节点可在3位间断之后立刻发送。错误既成该状态下的节点在间断之后可发送8位。16.2.4 错误帧节点检测到错误之后输出错误帧。图 16-15. 错误帧备注D:显性 = 0R:隐性 = 1表 16-7. 错误帧域的说明编号名称位计数说明错误标志16错误生成节点: 连续输出6个显性电平位。错误既成节点: 连续输出6个隐性电平位。如果在一个节点输出既成错误标志时,另外一个节点输出一个显性电平,则既成错误标志不被清除直到在1行中检测到相同的6位电平。错误标志2 0 to 6接收错误标志1的节点检测位填充错误并产生此错误标志。错误标识符8连续输出8个隐性电平位。如果在第8位检测到显性电平,则从下一位发送一个过载帧。错误位检测到错误的位。从错误位的下一位输出错误标志。在CRC错误的情况下,此位在ACK界定符之后输出 。帧间间隔/过载帧帧间间隔或过载帧由此开始。16.2.5 过载帧在以下条件下发送过载帧。- 接收节点没有完成接收操作时注- 如果间断期间在前两位检测到显性电平- 如果在帧结束的最末位(第7位)或错误界定符/过载界定符的最末位(第8位)检测到显性电平 注 CAN在内部足够快以处理所接收到的不产生过载帧的帧。图 16-16. 过载帧备注D:显性 = 0R:隐性 = 1表 16-8. 过载帧域的说明编号名称位计数说明过载标志6连续输出6个显性电平位。来自其它节点的过载标志 0 至 6帧间间隔中接收过载标志的节点输出一个过载标志。过载界定符8连续输出8个隐性电平位。如果在第8位检测到显性电平,则从下一位发送一个过载帧。帧在帧结束、错误界定符或过载界定符之后输出。帧间间隔/过载帧帧间间隔或过载帧由此开始。16.3 功能16.3.1 决定总线优先级(1)当一个节点开始发送时:- 总线空闲期间,首先输出数据的节点发送数据。(2)当不止一个节点开始发送时:- 从仲裁域第1位开始连续输出显性电平最长的节点取得总线优先级(如果同时发送显性电平和隐性电平,则将显性电平作为总线的值)。- 发送节点对其输出的仲裁域和总线的数据电平进行比较。表 16-9. 决定总线优先级电平匹配连续发送电平不匹配连续发送(3)数据帧和远程帧的优先级- 当数据帧和远程帧均在总线上时,数据帧具有优先级,因为它的RTR位即仲裁域的最后一位承载了一个显性电平。备注 如果扩展格式数据帧和标准格式远程帧在总线上发生冲突(如果它们的ID28至ID18全部相同),标准格式数据帧优先。16.3.2 位填充如果相同的电平持续5位,位填充利用增加1位反相电平数据来建立同步,以防止突发错误。表 16-10. 位填充发送数据帧或远程帧发送期间,当帧起始和CRC域之间的数据连续5位为相同电平时,在下一位之前插入一个反相电平数据位。接收数据帧或远程帧接收期间,当帧起始和ACK域之间的数据连续5位为相同电平时,在删除下一位之后继续接收。16.3.3 多主机方式因为总线的优先级(获得发送功能的节点)取决于标识符,因此任何节点都可以作为总线主控。16.3.4 多播方式尽管只有一个发送节点,但是两个或更多的节点可以同时接收相同的数据,因为可以为两个或更多的节点设置相同的标识符。16.3.5 CAN睡眠模式/CAN停止模式功能CAN睡眠模式/CAN停止模式功能可使CAN控制器进入等待模式,以获得低功耗。 总线操作可以从CAN睡眠模式中唤醒控制器,但是不能从CAN停止模式唤醒控制器(CAN停止模式由CPU存取控制)。16.3.6 错误控制功能(1)错误类型表 16-11. 错误类型类型错误的说明检测状态检测方式检测条件发送/接收域/帧位错误比较输出电平和总线电平电平不匹配发送/接收节点总线上从帧起始输出数据至帧结束、错误帧和过载帧的位填充错误检查填充位的接收数据6个连续相同的输出电平的位 接收节点帧起始至CRC序列CRC错误比较接收数据生成的CRC序列和已接收的CRC序列CRC不匹配接收节点CRC域格式错误固定格式的域/帧检查检测固定格式的破坏接收节点CRC 界定符ACK 域帧结束错误帧过载帧ACK错误通过发送节点检查ACK段检测ACK段的隐性电平发送节点ACK段(2)错误帧的输出时序表 16-12. 错误帧的输出时序类型输出时序位错误、填充错误、格式错误、ACK错误在检测到错误的下一位开始输出错误帧。CRC错误在ACK界定符的下一位开始输出错误帧。(3)错误情况的处理发送节点在错误帧之后重新发送数据帧或远程帧(但是,它不在单次模式下重发帧)。(4)错误状态(a)错误状态的类型CAN规范定义了下面3种类型的错误状态。- 错误生成- 错误既成- 掉线通过表 16-13所示的CAN错误计数器寄存器(C0ERC)的TEC7 至 TEC0位(发送错误计数器位)和REC6至REC0位(接收错误计数器位)的值来区分这些错误状态的类型。当前的错误状态由CAN模块信息寄存器(C0INFO)表示。当各错误计数器的值等于或大于错误告警电平(96)时,将C0INFO寄存器的TECS0或RECS0位设为1。因为在这种情况下总线被认为具有严重的错误,所以必须测试总线状态。 错误计数器的值为128或更多则表明为错误既成状态,并将C0INFO的TECS1或RECS1位设为1。- 如果发送错误计数器的值大于或等于256(实际上,发送错误计数器不能表示一个大于或等于256的值),则达到掉线状态并将C0INFO寄存器的BOFF位设为1。- 如果启动时总线上仅一个节点在使用中(例如,当总线仅连接本机时的特殊的情况下),则即使发送了数据也不返回到ACK。 因此,重复进行错误帧和数据的重新发送。 但是,在错误既成状态下,发送错误计数器不增加且不进入掉线状态。表 16-13. 错误状态的类型类型操作错误计数器的值C0INFO 寄存器的表示给定错误状态具体操作错误生成发送0至95TECS1, TECS0 = 00- 检测到错误时输出生成错误标志(6个连续显性电平位)。接收0至95RECS1, RECS0 = 00发送96至127TECS1, TECS0 = 01接收96至127RECS1, RECS0 = 01错误既成发送128至255TECS1, TECS0 = 11- 检测到错误时输出既成错误标志 (6个连续隐性电平位)。- 间断(暂停发送)之后的发送期间发送8个隐性电平位。接收128或更大RECS1, RECS0 = 11掉线发送256 或更大(不显示)注BOFF = 1, TECS1, TECS0 = 11- 不能进行通信。接收帧时不存储报文,但是,会进行以下、和 的操作。 TSOUT切换。 REC增量/减量。 设置VALID位。- 如果CAN模块进入初始化模式,然后做出至任何操作模式的转换请求,且当11个连续隐性电平位被检测到128次时,则错误计数器复位为0并可恢复错误生成状态。注 当BOFF位被设为1时,发送错误计数器(TEC)的值无效。 当计数器的值在248至255范围之间时,如果发生一个会使发送错误计数器的值增8的错误,那么计数器不增加并认定为掉线状态。(b)错误计数器发生错误时,错误计数器向上计数,而当发送和接收成功时向下计数。 检测到错误之后错误计数器立即更新。表 16-14. 错误计数器状态发送错误计数器(TEC7 至 TEC0)接收错误计数器(REC6 至 REC0)接收节点检测到错误(除了生成错误标志或过载标志的位错误)。不改变+1(当REPS 位 = 0时)接收节点在错误帧的错误标志之后检测到显性电平。不改变+8(当REPS 位 = 0时)发送节点发送一个错误标志。作为例外,下列情况下错误计数器不改变 错误既成状态下检测到ACK错误,而既成错误标志输出期间未检测到显性电平。 在发送一个隐性电平作为填充位的仲裁域检测到填充错误,反而检测到显性电平。+8不改变输出生成错误标志或过载标志期间检测到位错误(错误生成发送模式)+8不改变输出生成错误标志或过载标志期间检测到位错误(错误生成接收模式)不改变+8(当REPS 位 = 0时)当节点从生成错误标志或过载标志开始检测到14个连续显性电平位时,随后检测到8个显性电平位。 在既成错误标志之后检测到8个连续显性电平时。+8(发送期间)+8(接收期间,当REPS 位 = 0时)当发送节点无错误的完成发送时(如果错误计数器 = 0,则0)。1不改变当接收节点无错误的完成接收时。不改变-1(1 REC6 至 REC0 127,当REPS 位 = 0时)-0(REC6 至 REC0 = 0,当REPS 位 = 0时)-设置119 至 255 中的值(当REPS 位 = 1时)(c)间断时发生位错误产生一个过载帧。注意事项 如果发生错误,则根据错误发生之前的发送错误计数器和接收错误计数器的内容控制错误标志输出(生成或既成)。 错误标志输出之后错误计数器的值增加。(5)从掉线状态恢复当CAN模块处于掉线状态时,CAN模块将其输出信号(CTxD)固定不变地设为隐性电平。CAN模块按照以下的掉线恢复顺序从掉线状态中恢复。 请求进入CAN初始化模式 请求进入CAN操作模式(a) 通过正常恢复顺序恢复操作(b) 跳过恢复顺序强行恢复操作(a)通过正常恢复顺序从掉线状态恢复操作CAN模块首先产生一个进入初始化模式的请求(参见图16-17中的时序)。 该请求立刻得到应答,并将C0CTRL寄存器的OPMODE位清除为000B。 诸如分析引起掉线状态的错误、使用应用软件重新定义CAN模块和报文缓存器或终止CAN模块的操作等处理,可以通过将GOM位清为0来执行。接下来,用户请求从初始化模式变为一种操作模式(参见图16-17中的时序)。 这会启动一个将CAN模块从掉线状态恢复的操作。 CAN协议ISO 11898定义了可从掉线状态恢复的条件,并且要求检测11个连续隐性电平位128次以上。 此时,将模式变为一个操作模式的请求被挂起直到满足恢复条件为止。 当满足恢复条件时(参见图16-17中的时序),CAN模块可以进入到它所请求的操作模式。 在CAN模块进入该操作模式之前,它一直处于初始化模式。 通过读取C0CTRL寄存器的OPMODE位可确认已完成所请求的操作模式。在掉线期间和掉线恢复顺序中,C0INFO寄存器的BOFF位保持设置(为1)。 在掉线恢复顺序中,接收错误计数器(REC6:0)对总线上检测到11个连续电平位的次数进行计数。因此,可通过读取REC6:0检查恢复状态。注意事项1当请求从初始化模式至任意操作模式的发送,以在掉线恢复序列中重新执行掉线恢复序列时,接收错误计数器被清除。因此,有必要在总线上重新进行128次11个连续隐性位的检查。2.在掉线恢复序列中,每检测到11个连续隐性电平位时REC6:0向上计数(+1)。 即使在掉线期间,CAN模块也能进入CAN睡眠模式或CAN停止模式。 要开始掉线恢复序列,则有必要转换至初始化模式一次。 但是,如果CAN模块处于CAN睡眠模式或CAN停止模式时,不接收转换至初始化模式的请求,因此必须首先解除CAN睡眠模式。 在这种情况下,只要CAN睡眠模式被解除,就会开始掉线恢复顺序且没必要转换至初始化模式。 睡眠模式下,即使在掉线期间CAN模块在CAN总线上检测到一个显性边沿,将保持睡眠模式并开始掉线恢复顺序。图 16-17. 通过正常恢复顺序从掉线状态恢复操作(b)跳过掉线恢复顺序的强行恢复操作CAN模块可通过跳过掉线顺序强行从掉线状态中解除,而不考虑总线的状态。 这里给出步骤。首先,CAN模块请求进入初始化模式。 关于操作和此时应该注意的部分,参见 (a) 通过正常恢复顺序从掉线状态恢复操作。然后模块请求进入一个操作模式。 同时,必须将C0CTRL寄存器的CCERC位设为1。于是,跳过由CAN协议ISO 11898定义的掉线顺序,然后模块直接进入操作模式。 这种情况下,在监测到11个连续隐性电平位后该模块连接到CAN总线。 有关详情,参见图 16-56中的处理。注意事项 CAN协议ISO 11898未定义该功能。当使用该功能时,应彻底估算其对网络系统的影响。(6)在初始化模式中将CAN模块错误计数器寄存器(C0ERC)初始化如果有必要将CAN模块错误计数器寄存器(C0ERC)和CAN模块信息寄存器(C0INFO)初始化来调试或评测程序,可通过在初始化模式下设置C0CTRL寄存器的CCERC位将它们初始化为默认值。 完成初始化之后,CCERC位自动清除为0。注意事项1.该功能仅在初始化模式下允许。 在CAN操作模式下,即使将CCERC位设为1,C0ERC和C0INFO寄存器也不会被初始化。2.请求进入CAN操作模式的同时可以设置CCERC位。16.3.7 波特率控制功能(1)预分频器CAN控制器为CAN提供一个将时钟(fCAN)分频的预分频器。 该预分频器产生一个CAN协议层基础时钟(fTQ),它由CAN模块系统时钟(fCANMOD)经1至256分频后得到(参见16.6 (12) CAN位速率预分频器寄存器(C0BRP)。(2)数据位时间(8至25个时间量子)一个数据位时间按照图 16-18所示定义。CAN控制器将时间段1、时间段2和重新同步跳转宽度(SJW)设为数据位时间的参数,如图16-18所示。时间段1等于传播段(prop)与CAN协议规范定义的相位段1的总时间。 时间段2等于相位段2。图 16-18. 段设置段名称可设置的范围设置符合CAN规范的注意事项时间段 1 (TSEG1)2TQ至16TQ时间段 2 (TSEG2)1TQ至8TQCAN控制器的IPT为0TQ。 为了保证CAN协议规范,必须在此设置等于相位段1的长度。 这意味着时间段1减去1TQ为时间段2的可设置范围的上限。重新同步跳转宽度(SJW)1TQ至4TQ时间段1的长度减去1TQ或4TQ,较小的那一个备注IPT:信息处理时间TQ:时间量子参考: CAN标准ISO 11898规范定义的组成数据位时间的段如图16-19所示。图 16-19. 参考:由CAN规范所定义的数据位时间的配置段名称段长度说明Sync 段(同步段)1建立硬件同步时,该段从电平由隐性变为显性的边沿开始Prop 段可设计为 1至8,或更长该段占用输出缓存、CAN总线和输入缓存的延时。设置该段长度,以便在相位段1开始之前返回ACK。prop 段的时间(输出缓存的延时) + 2 x (CAN总线的延时) + (输入缓存的延时)相位段 1可设计为1至8该段补偿数据位时间的错误。 该段越长,可允许范围越宽而通信速度越低。相位段 2相位段1或IPT较长的那个SJW可设计为从1TQ 到1或4TQ段的长度,较短的那个重新同步期间该宽度为相位段扩展或压缩的上限。备注IPT:信息处理时间TQ:时间量子(3)同步数据位- 因为接收节点没有同步信号,所以它在总线上利用电平的改变建立同步。- 发送节点与发送节点的位时序同步发送数据。(a)硬件同步当接收节点在帧间间隔检测到帧起始时建立硬件同步。- 当在总线上检测到下降沿时,TQ表示sync段且下一段为prop段。 这种情况下,不考虑SJW而建立同步。图 16-20. 总线空闲期间识别显性电平时的硬件同步(b)重新同步如果接收期间在总线上检测到电平改变则重新建立同步(仅当先前采样了一个隐性电平的情况)。- 边沿的相位错误由检测边沿和sync段的相对位置给出。0:如果边沿在sync段内正:如果边沿在采样点之前(相位错误)负:如果边沿在采样点之后(相位错误)如果相位错误为正: 相位段1比指定的SJW长。如果相位错误为负: 相位段2比指定的SJW短。- 接收节点的数据采样点随发送节点和接收节点波特率之间的差异而相应移动。图 16-21. 重新同步16.4 与目标系统的连接该微控制器包含一个必须使用外部收发器与CAN总线进行连接的CAN。图 16-22. 连接至CAN总线16.5 CAN控制器的内部寄存器16.5.1 CAN控制器的配置表 16-15. CAN控制器的寄存器列表项目寄存器名称CAN全局寄存器CAN 全局控制寄存器(C0GMCTRL)CAN 全局时钟选择寄存器(C0GMCS)CAN 全局自动块传输寄存器(C0GMABT)CAN 全局自动块传输延时寄存器(C0GMABTD)CAN模块寄存器CAN 模块屏蔽 1 寄存器 (C0MASK1L, C0MASK1H)CAN 模块屏蔽 2 寄存器 (C0MASK2L, C0MASK2H)CAN 模块屏蔽3 寄存器 (C0MASK3L, C0MASK3H)CAN 模块屏蔽 4 寄存器 (C0MASK4L, C0MASK4H)CAN 模块控制寄存器 (C0CTRL)CAN 模块最末错误码寄存器 (C0LEC)CAN 模块信息寄存器 (C0INFO)CAN 模块错误计数器寄存器 (C0ERC)CAN 模块中断使能寄存器 (C0IE)CAN 模块中断状态寄存器 (C0INTS)CAN 模块位速率预分频器寄存器(C0BRP)CAN 模块位速率寄存器(C0BTR)CAN 模块最末入指针寄存器 (C0LIPT)CAN 模块接收记录列表寄存器 (C0RGPT)CAN 模块最末出指针寄存器 (C0LOPT)CAN 模块发送记录列表寄存器 (C0TGPT)CAN 模块时间标记寄存器 (C0TS)报文缓存寄存器CAN 报文数据字节 01 寄存器 m (C0MDATA01m)CAN 报文数据字节 0 寄存器 m(C0MDATA0m)CAN 报文数据字节 1 寄存器 m(C0MDATA1m)CAN 报文数据字节 23 寄存器 m(C0MDATA23m)CAN 报文数据字节 2 寄存器 m(C0MDATA2m)CAN 报文数据字节 3 寄存器 m(C0MDATA3m)CAN 报文数据字节 45 寄存器 m(C0MDATA45m)CAN 报文数据字节 4 寄存器 m(C0MDATA4m)CAN 报文数据字节 5 寄存器 m(C0MDATA5m)CAN 报文数据字节 67 寄存器 m(C0MDATA67m)CAN 报文数据字节 6 寄存器 m(C0MDATA6m)CAN 报文数据字节 7 寄存器 m(C0MDATA7m)CAN 报文数据长度寄存器 m(C0MDLCm)CAN 报文配置寄存器 m(C0MCONFm)CAN 报文ID 寄存器 m(C0MIDLm, C0MIDHm)CAN 报文控制寄存器 m(C0MCTRLm)备注m = 0 至 15 16.5.2 寄存器访问类型表 16-16. 寄存器访问类型 (1/9)地址寄存器名称符号R/W位操作单元默认值1816FA00HCAN0 报文数据字节 01 寄存器 00C0MDATA0100R/W未定义FA00HCAN0 报文数据字节 0 寄存器 00C0MDATA000未定义FA01HCAN0 报文数据字节 1 寄存器 00C0MDATA100未定义FA02HCAN0 报文数据字节 23 寄存器 00C0MDATA2300未定义FA02HCAN0 报文数据字节 2 寄存器 00C0MDATA200未定义FA03HCAN0 报文数据字节 3 寄存器 00C0MDATA300未定义FA04HCAN0 报文数据字节 45 寄存器 00C0MDATA4500未定义FA04HCAN0 报文数据字节 4 寄存器 00C0MDATA400未定义FA05HCAN0 报文数据字节 5 寄存器 00C0MDATA500未定义FA06HCAN0 报文数据字节 67 寄存器 00C0MDATA6700未定义FA06HCAN0 报文数据字节 6 寄存器 00C0MDATA600未定义FA07HCAN0 报文数据字节 7 寄存器 00C0MDATA700未定义FA08HCAN0 报文数据长度码寄存器 00C0MDLC000000xxxxBFA09HCAN0 报文配置寄存器 00C0MCONF00未定义FA0AHCAN0 报文 ID 寄存器 00C0MIDL00未定义FA0CHC0MIDH00未定义FA0EHCAN0 报文控制寄存器 00C0MCTRL0000x00000000xx000BFA10HCAN0 报文数据字节 01 寄存器 01C0MDATA0101未定义FA10HCAN0 报文数据字节 0 寄存器 01C0MDATA001未定义FA11HCAN0 报文数据字节 1 寄存器 01C0MDATA101未定义FA12HCAN0 报文数据字节 23 寄存器 01C0MDATA2301未定义FA12HCAN0 报文数据字节 2 寄存器 01C0MDATA201未定义FA13HCAN0 报文数据字节 3 寄存器 01C0MDATA301未定义FA14HCAN0 报文数据字节 45 寄存器 01C0MDATA4501未定义FA14HCAN0 报文数据字节 4 寄存器 01C0MDATA401未定义FA15HCAN0 报文数据字节 5 寄存器 01C0MDATA501未定义FA16HCAN0 报文数据字节 67 寄存器 01C0MDATA6701未定义FA16HCAN0 报文数据字节 6 寄存器 01C0MDATA601未定义FA17HCAN0 报文数据字节 7 寄存器 01C0MDATA701未定义FA18HCAN0 报文数据长度码寄存器 01C0MDLC010000xxxxBFA19HCAN0 报文配置寄存器 01C0MCONF01未定义FA1AHCAN0 报文 ID 寄存器 01C0MIDL01未定义FA1CHC0MIDH01未定义FA1EHCAN0 报文控制寄存器 01C0MCTRL0100x00000000xx000B表 16-16. 寄存器访问类型 (2/9)地址寄存器名称符号R/W位操作单元默认值1816FA20HCAN0 报文数据字节 01 寄存器 02C0MDATA0102R/W未定义FA20HCAN0 报文数据字节 0 寄存器 02C0MDATA002未定义FA21HCAN0 报文数据字节 1 寄存器 02C0MDATA102未定义FA22HCAN0 报文数据字节 23 寄存器 02C0MDATA2302未定义FA22HCAN0 报文数据字节 2 寄存器 02C0MDATA202未定义FA23HCAN0 报文数据字节 3 寄存器 02C0MDATA302未定义FA24HCAN0 报文数据字节 45 寄存器 02C0MDATA4502未定义FA24HCAN0 报文数据字节 4 寄存器 02C0MDATA402未定义FA25HCAN0 报文数据字节 5 寄存器 02C0MDATA502未定义FA26HCAN0 报文数据字节 67 寄存器 02C0MDATA6702未定义FA26HCAN0 报文数据字节 6 寄存器 02C0MDATA602未定义FA27HCAN0 报文数据字节 7 寄存器 02C0MDATA702未定义FA28HCAN0 报文数据长度码寄存器 02C0MDLC020000xxxxBFA29HCAN0 报文配置寄存器 02C0MCONF02未定义FA2AHCAN0 报文ID 寄存器 02C0MIDL02未定义FA2CHC0MIDH02未定义FA2EHCAN0 报文控制寄存器 02C0MCTRL0200x00000000xx000BFA30HCAN0 报文数据字节 01 寄存器 03C0MDATA0103未定义FA30HCAN0 报文数据字节 0 寄存器 03C0MDATA003未定义FA31HCAN0 报文数据字节 1 寄存器 03C0MDATA103未定义FA32HCAN0 报文数据字节 23 寄存器 03C0MDATA2303未定义FA32HCAN0 报文数据字节 2 寄存器 03C0MDATA203未定义FA33HCAN0 报文数据字节 3 寄存器 03C0MDATA303未定义FA34HCAN0 报文数据字节 45 寄存器 03C0MDATA4503未定义FA34HCAN0 报文数据字节 4 寄存器 03C0MDATA403未定义FA35HCAN0 报文数据字节 5 寄存器 03C0MDATA503未定义FA36HCAN0 报文数据字节 67 寄存器 03C0MDATA6703未定义FA36HCAN0 报文数据字节 6 寄存器 03C0MDATA603未定义FA37HCAN0 报文数据字节 7 寄存器 03C0MDATA703未定义FA38HCAN0 报文数据长度码寄存器 03C0MDLC030000xxxxBFA39HCAN0 报文配置寄存器 03C0MCONF03未定义FA3AHCAN0 报文 ID 寄存器 03C0MIDL03未定义FA3CHC0MIDH03未定义FA3EHCAN0 报文控制寄存器 03C0MCTRL0300x00000000xx000B表 16-16. 寄存器访问类型 (3/9)地址寄存器名称符号R/W位操作单元默认值1816FA40HCAN0 报文数据字节 01 寄存器 04C0MDATA0104R/W未定义FA40HCAN0 报文数据字节 0 寄存器 04C0MDATA004未定义FA41HCAN0 报文数据字节 1 寄存器 04C0MDATA104未定义FA42HCAN0 报文数据字节 23 寄存器 04C0MDATA2304未定义FA42HCAN0 报文数据字节 2 寄存器 04C0MDATA204未定义FA43HCAN0 报文数据字节 3 寄存器 04C0MDATA304未定义FA44HCAN0 报文数据字节 45 寄存器 04C0MDATA4504未定义FA44HCAN0 报文数据字节 4 寄存器 04C0MDATA404未定义FA45HCAN0 报文数据字节 5 寄存器 04C0MDATA504未定义FA46HCAN0 报文数据字节 67 寄存器 04C0MDATA6704未定义FA46HCAN0 报文数据字节 6 寄存器 04C0MDATA604未定义FA47HCAN0 报文数据字节 7 寄存器 04C0MDATA704未定义FA48HCAN0 报文数据长度码寄存器 04C0MDLC040000xxxxBFA49HCAN0 报文配

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论