1 CKS32F107xx系列USART的LIN模式-德赢Vwin官网 网

CKS32F107xx系列USART的LIN模式

描述

CKS32F107xx系列在支持正常USART功能的同时,亦支持LIN(局域互联网)模式。

LIN模式是通过设置USART_CR2寄存器的LINEN位选择。在LIN模式下,下列位必须保持为0:

USART_CR2寄存器的CLKEN位

USART_CR3寄存器的STOP[1:0],SCEN,HDSEL和IREN

LIN发送

在前几讲中,对USART发送器进行了部分介绍,其所描述的同样步骤适用于LIN主发送,但和正常USART发送有以下区别:

清零M位以配置8位字长

置位LINEN位以进入LIN模式。这时,置位SBK将发送13位’0’作为断开符号。然后发一位’1’,以允许对下一个开始位的检测。

LIN接收

当LIN模式被使能时,断开符号检测电路被激活。该检测完全独立于USART接收器。断开符号只要一出现就能检测到,不管是在总线空闲时还是在发送某数据帧其间,数据帧还未完成,又插入了断开符号的发送。

当接收器被激活时(USART_CR1的RE=1),电路监测RX上的起始信号。监测起始位的方法同检测断开符号或数据是一样的。当起始位被检测到后,电路对每个接下来的位,在每个位的第8,9,10个过采样时钟点上进行采样。如果10个(当USART_CR2的LBDL=0)或11个(当USART_CR2的LBDL=1)连续位都是’0’,并且又跟着一个定界符,USART_SR的LBD标志被设置。如果LBDIE位=1,中断产生。在确认断开符号前,要检查定界符,因为它意味RX线已经回到高电平。

如果在第10或11个采样点之前采样到了’1’,检测电路取消当前检测并重新寻找起始位。如果LIN模式被禁止,接收器继续如正常USART那样工作,不需要考虑检测断开符号。

如果LIN模式没有被激活(LINEN=0),接收器仍然正常工作于USART模式,不会进行断开检测。如果LIN模式被激活(LINEN=1),只要一发生帧错误(也就是停止位检测到’0’,这种情况出现在断开帧),接收器就停止,直到断开符号检测电路接收到一个’1’(这种情况发生于断开符号没有完整的发出来),或一个定界符(这种情况发生于已经检测到一个完整的断开符号)。

图1说明了断开符号检测器状态机的行为和断开符号标志的关系。图2给出了一个断开帧的例子。

USART

图1 LIN 模式下的断开检测(11 位断开长度—设置了 LBDL 位)

USART

图2 LIN 模式下的断开检测与帧错误的检测

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分