打印
[Atmel]

每天跟我读点资料:SAM D21数据手册(165)

[复制链接]
656|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
25.6.3.3 IrDa 调制和解调

     IrDA调制和解调使能用下列步骤。当使能,传输和接收是IrDA 115.2kb/s
     。IrDA 编码使能(CTRLB.ENC=1).
     。同步模式(CTRLA.CMODE=0).
     。16* 采样速率(CTRLA.SAMPR[0]=0).
     在传输期间,每个低比特被传输为一个正脉冲宽度为波特率周期的3/16如图所示:



     接收解码有两个主要功能。一个是同步进来的数据到IrDA波特率计数器。同步执行是在每个开始的0脉冲。第二个功能是解码进入的Rx的数据。如果脉冲宽度达到由配置设置( RXPL.RXPL )最小长度,就开始接收。当波特率记数器到达它的中间值(1/2比特),它被传输到接收器。

     图25-9 描述了RXPL.RXPL设为19。这表明,脉冲宽度应至少为20SE时钟周期。当假设BAUD = 0xE666或每比特160 SE周期,这相当于2/16波特时钟所需的最小脉冲宽度。在这种情况下,第一位被接受为一个零,第二位是1 ,第三位是1.低脉冲被拒绝,因为它不符合2/16波特时钟的最低要求。


    请注意,发射机和接收机的极性是相反的。在传输过程中,零位被作为1发送脉冲。在接收过程中,一个接收的零脉冲收为0位。

25.6.3.4 间隔字符检测和自动波特率

    间隔字符检测和自动波特率使能是通过下面的配置:
    。自动帧格式(CTRLA.FORM=0x04或0x05)
    。同步模式(CTRL.CMODE=0)
    。16倍采样速率使用小数波特率发生器(CTRLA.SAMPR=1)

    自动波特率按照LIN格式。所有的LIN帧开始于一个间隔范围紧跟着同步段。USART用一个间隔检测大于11标称位时间配置的波特率门槛。在任何时间,如果超过11连续显性位的总线上检测到的USART检测Break域。当一个间隔段被检测,接收中断标志(INTFLAG.RXBRK)设置并且USART期望的同步段的字符是0x55,此字段用于以保持同步更新实际波特率。如果接收的同步段的字符不是0x55,然后不符同步段错误标志(STATUS.ISF)紧跟着错误中断标志(INTFLAG.ERROR)被设置,并且波特率不变。










相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:http://shop34182318.taobao.com/ http://shop562064536.taobao.com

2399

主题

6963

帖子

68

粉丝