单片机与嵌入式系统(111X)—09典型单片机系统AVR-串行接口与通信要点解读.pptVIP

单片机与嵌入式系统(111X)—09典型单片机系统AVR-串行接口与通信要点解读.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
作业: 第13章:1、3、8、9 11.6 TWI双线串行接口 特点 简单,但是强大而灵活的通讯接口,只需要两根线 支持主机和从机操作 器件可以工作于发送器模式或接收器模式 7 位地址空间允许有128 个从机 支持多主机仲裁 高达400 kHz 的数据传输率 可以抑制总线尖峰的噪声抑制器 完全可编程的从机地址 睡眠时地址匹配可以唤醒AVR 这两根线一是时钟SCL,一是数据SDA。 外部硬件只需要两个上拉电阻 总线上的设备都有自己的地址 传输数据 时钟线为高时,数据线电压必须保持稳定 数据的更新在时钟的低电平时机 SCL高电平时,SDA线上电压变化位起始和结束标志 上升?结束标志 下降?起始标志 START 与STOP 状态之间发出一个新的START 状态,称为REPEATED START 状态,适用于主机在不放弃总线控制的情况下启动新的传送 地址数据包格 所有在TWI 总线上传送的地址包均为 9 位 7 位地址位:用户定义,其中预留0000000作为广播包 1 位R/W 控制位(1?读;0?写) 1 位应答位:从机应在ACK 周期通过拉低SDA 作出应答 广播包时需要所有从机拉低SDA作为ACK 注意: 广播功能:用于主机需要发送相同的信息给多个从机时 广播帧“读”指令没有意义,引起总线冲突 从机地址:标明通信对象 数据帧格式 数据包为9 位:8 位数据位及1 位应答位 数据的 MSB 首先发送。 主机产生时钟及 START 与STOP 状态 接收器响应接收,在第9 个SCL 周期拉低SDA ,发出ACK。 收到最后的字节后,发出NACK (接收器使SDA 为高)来告知发送器,通知接收结束。 一个完整的传输过程 一个传输过程: 1个START 状态 1个SLA+R/W 至少一个数据包 1个STOP 状态组成 只有START与STOP 状态的空信息是非法的 问题:在TWI(I2C)传输中没有流量控制,当主机的SCL频率高于从机所能接受的通信速率如何处理?能否进行通信? 能否通过延长SCL的低电平时间来降低通信速度?延长低电平时间是否会影响高电平时间? SCL 高电平时间是由主机决定的,从机延长SCL 低电平的时间不会影响SCL 高电平的时间,因此不会影响数据的采集 当主机设定的时钟速度相对于从机太快,利用SCL 的线与功能来实现主机与从机的握手改变SCL 的占空比可降低 TWI 数据传送速度,可以完成通信。 多主机总线仲裁 TWI 协议允许总线上由多个主机,存在两个问题: 同时只能有1个主机启动通信过程,多主机必须进行仲裁 不同的主机SCK不同,必须进行同步 多主机SCL同步 通过线与的方式,使得SCL低电平最长 多主机仲裁 通过SDA线与的方式+主机内部进行检测实现 通过SDA上发送的数据进行总线总裁 遇到发送为高电平、检测为低电平的时候主机自动放弃总线 地址决定了总线的优先占用 TWI模块原理结构图 物理引脚模块 总线接 口单元 速率生 成单元 地址匹 配单元 控制单元 比特率发生器单元 由TWI状态寄存器TWSR的预分频系数 比特率寄存器TWBR设定。 比特率计算 TWI 相关寄存器(5个) 比特率寄存器:TWBR 数据寄存器:TWDR 地址寄存器:TWAR 广播帧 接收允许 控制寄存器:TWCR TWI 中断标志 1. 当TWI 完成当前工作,希望应用程序介入时置位 2. 置位时,SCL 信号的低电平被延长 出现如下条件时接口发出ACK 脉冲: TWEA: 使能应答位 发出ACK的条件 1. 器件的地址与主机发出的地址相符合 2. TWGCE 置位时接收到广播呼叫 3. 接收到一个字节的数据 START 状态标志 当CPU 希望自己成为总线上的主机时需要置位TWSTA 发送START 之后软件必须清零TWST STOP状态标志 在主机模式下,如果置位TWSTO,TWI 接口将在总线上产生STOP 状态,然后TWSTO 自动清零。在从机模式下,置位TWSTO 可以使接口从错误状态恢复到未被寻址的状态。 TWWC: TWI 写碰撞标志 当TWINT 为低时写数据寄存器TWDR 将置位TWWC。当TWINT 为高时,每一次对TWDR 的写访问都将更新此标志。 TWEN: TWI 使能 使能TWI 中断 状态寄存器:TWSR TWI 状态 这5 位用来反映TWI 逻辑和总线的状态。 TWI 预分频位 TWI 状态 主机发送模式状态码 主机接收模式状态码 TWI的使用过程 1. 应用程序写TWCR 发送START信号 2. 硬件:START信号发出, 置位TWINT 3. 应用:TWSR=0x08? 写SLA_W到TWDR,配置TWCR 4. 硬件:

文档评论(0)

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

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

1亿VIP精品文档

相关文档