第六章 TMS320F28335片内外设_CAN,SPI.pptVIP

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 TMS320F28335片内外设_CAN,SPI

邮箱描述 在eCAN模式下,提供32个邮箱,每个邮箱包括8字节长、29位标识符和几个控制位的消息邮箱。每个邮箱可以设置为发送或接收。在eCAN模式,每个邮箱都有各自的接收屏蔽(或滤波)寄存器。 每个邮箱包括如下内容: 消息标志符: 29位扩展标志符;或11位标准标志符; 标志符扩展位,IDE(MSGID31) 接收滤波器使能位,AME(MSGID30) 自动应答模式位,AAM(MSGID29) 发送优先级,TPL(MSGCTRL12~8) 远程发送请求位,RTR(MSGCTRL4) 输出长度代码,DLC( MSGCTRL3~0) 最多8个字节的数据区域。 CAN有关寄存器 总体设置 每个邮箱设置 消息行为配置如下 Transmit Mailbox 发送邮箱 CPU将预发送的数据到配置成发送的邮箱; 在写数据和标识符(即ID号)到RAM后,如果已经使能了邮箱(通过设置相应的CANME.n位),将相应的TRS[n]位置位,则消息将被发出。如果不止一个邮箱被设为发送邮箱,并且不止一个TRS[n] 位被置位,则消息按照优先级依次发送。 在标准模式下,邮箱传输的优先级决定于邮箱号, 最高的邮箱号优先级最高。在eCAN模式下,邮箱传输的优先级决定于消息控制寄存器MSGCTRL中TPL位段 。最高值的TPL邮箱首先被发送。只有当两个邮箱在TPL中具有同样的值,邮箱号较大的邮箱具有较高的优先级,且首先被发送。 如果一个传输由于仲裁丢失或错误而失败,则消息将从新传输。在从新传输之前,CAN模块检查是否有另外一个传输在请求,然后传输优先级最高的邮箱。 Receive Mailbox接收邮箱 在CAN模块接收消息时,首先比较接收消息的标识符与接收邮箱的标识符,当两者匹配是,接收标识符,控制位,和数据字节将被写进匹配的RAM。同时,相应的接收消息挂起(receive-message-pending)位,RMP[n](RMP.31-0)被设置,如果中断被使能则产生中断。如果标识符不匹配,则消息不存储。 当消息接收后,消息控制器从邮箱编号最高的邮箱开始搜索匹配的标识符。在标准模式下邮箱15有最高的接收优先级。在eCAN模式,邮箱31具有最高的优先级。在读数据后,CPU必须将RMP[n] (RMP.31?0)的相应位复位。如果同一邮箱又接收到另一个消息, 且接收消息等待(receive-message-pending)位已经被置位,相应的消息丢失位 (RML[n] (RML.31?0)) 被设置。这种情况下,如果覆盖保护位( overwrite?protection bit) OPC[n](OPC.31?0) 被清除,则存储的消息被新的数据覆盖。 如果邮箱被设置为接收邮箱,且远程发送请求位RTR位被设置,则邮箱可以发送一个远程帧。一旦一个远程帧发送出去,则邮箱的TRS位被CAN模块清除。 在正常工作模式下CAN模块操作 如果CAN模块用在正常模式(非自测模式)时,CAN网络中至少要有两个CAN模块,且波特率设置相同。其它CAN模块不必设置为真正接收发送节点的消息。但是,必须设为相同的波特率,这是因为,一个CAN发送模块期望网络中至少一个节点确认正确接收一个发送的消息。 任何接收到消息的CAN节点 将确认(除非确认机理被明确关闭)响应,不管是否被设置为存储接收的消息。 在自测模式下(self-test mode, STM),不需要另外一个节点。在该模式下,一个传输节点产生自己的确认信号。唯一要求是节点必须配置一个有效的波特率。 CAN有关寄存器说明 邮箱使能寄存器 (Mailbox Enable Register) 邮箱方向寄存器 Mailbox-Direction Register (CANMD) 消息标识寄存器 Message Identifier Register (MSGID) 消息控制寄存器 Message-Control Register (MSGCTRL) 传输请求寄存器 Transmission-Request Set Register (CANTRS) 当邮箱N准备发送数据时,CPU需要设置TRS[n]位为1以开始传输。这些位正常情况下由CPU设置,由CAN模块逻辑复位。CAN模块可以设置这些位产生一个远程请求帧。当一个传输成功或中断时,这些位被复位。如果一个邮箱被设置为接收邮箱,则在CANTRS中相应的位被忽略,除非该接收邮箱被设置为控制(handle)远程帧。 如果RTR位被

您可能关注的文档

文档评论(0)

wyjy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档