电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

单片机扩展io接口设计课件

74页
  • 卖家[上传人]:F****n
  • 文档编号:88146073
  • 上传时间:2019-04-19
  • 文档格式:PPT
  • 文档大小:1.61MB
  • / 74 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、1,第9章 MCS-51扩展I/O接口设计,在单片机的I/O口线不够用的情况下,可以借助外部器件对I/O口进行扩展。可供选用的器件很多,方案也有多种。,(1)并行总线扩展的方法 (2)串行口扩展方法 (3)I/O端口模拟串行方法,I/O接口是MCS-51与外设交换数字信息的桥梁。,2,9.1 I/O接口并行扩展概述,I/O接口电路应满足以下要求:,1.实现和不同外设的速度匹配,2. 输出数据锁存,I/O电路应具有数据锁存器,以保证接收设备接收。,3. 输入数据三态缓冲,数据总线可“挂”有多个数据源,为不发生冲突,只允许当前时刻正在进行数据传送的数据源使用数据总线,其余的数据源应处于隔离状态。,3,I/O数据的几种传送方式,为实现和不同的外设的速度匹配,I/O接口必须根据不同外设选择恰当的I/O数据传送方式。,I/O数据传送的几种传送方式是:,(1)同步传送 (2)查询传送 (3)中断传送。,4,I/O接口和I/O端口,I/O端口:简称I/O口,指具有端口地址的寄存器或 缓冲器。,I/O接口:是指单片机与外设间的I/O接口芯片。,一个I/O接口芯片可以有多个I/O端口: (1)数据口(2

      2、)命令口(3)状态口,I/O端口编址是给所有I/O接口中的寄存器编址。,5,并行总线扩展I/O接口, 访问扩展I/O口的方法与访问数据存储器完全相同,使用相同的指令,所有扩展的I/O口与片外数据存储器统一编址。 利用并行总线扩展的方法扩展外部并行I/O口时,必须注意P0, P2口的负载问题,若负载能力不够,必须进行总线驱动能力扩展。 扩展外部并行I/O口对外设的硬件具有依赖性(驱动功率、电平匹配、干扰抑制、隔离等)。,6,4.3.3 可编程并行I/O接口,7,8,8255A应用实例,9,8255A各端口的地址,A口:0111 1111 1111 1100B 7FFCH B口:0111 1111 1111 1101B 7FFDH C口:0111 1111 1111 1110B 7FFEH 控制 :0111 1111 1111 1111B 7FFFH,10,8255的应用,例:从8255A的A口读入数据,送到8255A的B口输出,解:MOV DPTR ,#7FFFH MOV A,#90H ; MOVX DPTR,A MOV DPTR,#7FFCH MOVX A , DPTR MOV DPT

      3、R, #7FFDH MOVX DPTR,A,11,9.4 用锁存器或缓冲器扩展并行I/O口,利用TTL或CMOS电路的缓冲驱动器(74244、74245)和锁存器(74273、74373、74377),通过P0口构成各种类型的输入/输出口。,这些类型的芯片具有数据缓冲或锁存功能,但没有地址线和读写控制线,仅有数据输入/输出线和选通控制端。因此这类芯片扩展并行I/O口的方法与扩展数据存储器不同。其选通端应由地址线和控制线的组合控制。,12,扩展并行输出口,带数据使能端正边沿触发的高速 D触发器 74377,13,扩展并行输出口,三态正边沿触发的高速 D触发器 74374,14,15,16,9.5 用MCS-51的串行口扩展并行口,17,用74LS164扩展并行输出口,例9-8 编写将内部RAM单元30H、31H的内容经串行口 由74LS164并行输出子程序。,START: MOV R7,#02H ;设置要发送的字节个数 MOV R0,#30H ;设置地址指针 MOV SCON,#00H ;设置串行口为方式0 SEND: MOV A,R0 MOV SBUF,A ;启动串行口发送过程 WAI

      4、T: JNB TI,WAIT ;1帧数据未发完,循环等待 CLR TI INC R0 ;取下一个数 DJNZ R7,SEND ;未完,发完从子程序返回 RET,18,用74LS165扩展并行输入口,例9-7 从16位扩展口读入5组数据(每组二个字节), 并把它们转存到内部RAM 20H开始的单元中。,19,MOV R7,#05H ;设置读入组数 MOV R0,#20H ;设置内部RAM数据区首址,START: CLR P1.0 ;并行置入数据,S/L*=0 SETB P1.0 ;允许串行移位,S/L*=1 MOV R1,#02H ;设置每组字节数,即外扩 ;74LS165的个数,RXDAT: MOV SCON,#10H ;设串口方式0,允许接收,启动,WAIT: JNB RI,WAIT ;未接收完一帧,循环等待 CLR RI ;清RI标志,准备下次接收,MOV A,SBUF ;读入数据 MOV R0,A ;送至RAM缓冲区,INC R0 ;指向下一个地址,DJNZ R1,RXDAT ;未读完一组数据,继续 DJNZ R7,START ;5组数据未读完重新并行置入 ;对数据进行处理,20

      5、,串行扩展总线接口技术,一、串行扩展特点:, 最大程度发挥最小系统的资源功能。 简化连接线路,缩小印板面积。 扩展性好,可简化系统的设计。 串行扩展的缺点: 数据吞吐容量较小,信号传输速度较慢,但随着CPU芯片工作频率的提高,以及串行扩展芯片功能的增强,这些缺点将逐步淡化。,21,串行扩展总线接口技术,二、串行扩展方式分类:,1、一线制,一线制的典型代表为Dallas公司推出的单总线(1-wire)。,22,串行扩展总线接口技术,2、二线制:,二线制的典型代表为philips公司推出的I2C总线(SMBus)。,23,串行扩展总线接口技术, 由Motorala公司推出的SPI(Serial peripheral Interface); 由NS公司推出的Micro wire/PLUS。,3、三线制,24,串行扩展总线接口技术,虚拟串行扩展概念:,用通用I/O口来模拟串行接口,构成虚拟的串行扩展接口。只要严格控制模拟同步信号,并满足串行同步数据传送的时序要求,就可满足串行数据传送的可靠性要求。,25,I2C总线,I2C总线是一种具有自动寻址、高低速设备同步和仲裁等功能的高性能串行总线,能够

      6、实现完善的全双工数据传输。 I2C总线只有两根信号线:数据线SDA和时钟线SCL。 各节点供电可以不同,但需共地,另外SDA和SCL需分别接上拉电阻。,I2C总线传输速率为100 kb/s(改进后的规范为400 kb/s),总线驱动能力为400 pF。,26,I2C总线,27,一、I2C总线的接口电路结构,I2C总线由数据线SDA和时钟线SCL构成。SDA和SCL都是双向传输线,平时均处于高电平备用状态,只有当需要关闭I2C总线时,SCL线才会箝位在低电平。,28,二、I2C总线信号定义,29,三、 I2C总线的数据传送,30,三、I2C总线的数据传送,31,三、I2C总线的数据传送,当主控器作为接收器接收被控器送来的最后一个数据时,必须给被控器发送一个非应答信号(A),令被控器释放SDA线,以便主控器可以发送停止信号来结束数据的传输。I2C总线上的应答信号是比较重要的,在编制程序时应该着重考虑。,32,四、I2C总线数据传输协议,总线节点的寻址字节:,主机产生起始信号后,发送的第一个字节为寻址字节。该字节的头7位(高7位)为从机地址,最后位(LSB)决定了报文的方向:0表示主机写信息

      7、到从机,1表示主机读从机中的信息。 当发送了一个地址后,系统中每个器件都将头7位与自己的地址比较,如果一样器件会应答主机的寻址,至于是接收还是发送由R/W位决定。,33,四、I2C总线数据传输协议,从机地址由一组固定位和一组可编程位部分构成。例如,某些器件有4个固定的位(高4位)和3个可编程的地址位(低3位),那么同一总线上共可以连接8个相同的器件。,从机地址和1位方向位构成了I2C总线器件的寻址字节SLA。,34,I2C总线数据传输协议,35,I2C总线数据传输的格式,地址字节和数据字节都是高位在前,低位在后。,36,I2C总线数据传输的格式,(1) 主控器的写数据操作格式,(2)主控器的读数据操作格式,无论哪种工作方式,都是由主控器来启动总线,发送寻址字节和终止运行;在I2C总线接口的外围器件中,器件内部有多个地址空间时,其读写操作都有地址自动加 1功能 。,37,五、51单片机与I2C总线的接口,38,六、I2C总线数据传送软件包,MCS-51只能采用虚拟I2C总线方式,并且只能用于单主系统,虚拟I2C总线接口可用通用I/O口中任一端线充任,数据线定义为SDA,时钟线定义为SCL

      8、。,MCS-51单主系统虚拟I2C总线软件包由二大类共9个归一化子程序组成。二大类程序分别为典型信号模拟子程序和数据传送通用子程序。,39,1、典型信号模拟子程序,40,主程序,在主程序初始化中,应有如下的语句: SDA BIT P1.7 SCL BIT P1.6 MTD EQU 30H ;MTD发送数据缓冲区首址 MRD EQU 40H ;MRD接收数据缓冲区首址 SLA EQU 60H ;SLA寻址字节SLAR/W的存放单元 NUMBYT EQU 61H ;NUMBYT传送字节数存放单元,41,1) 启动I2C总线子程序STA:,STA: SETB SDA SETB SCL ;起始条件建立时间大于4.7 s NOP NOP CLR SDA NOP ;起始条件锁定时间大于4 s NOP CLR SCL ;箝住总线,准备发送数据 RET,42,2) 停止I2C总线子程序STOP,STOP: CLR SDA SETB SCL ;发送停止条件的时钟信号 NOP ;停止总线时间大于4 s NOP SETB SDA ;停止总线 NOP NOP CLR SDA CLR SCL RET,43,3)

      9、 发送应答位信号子程序MACK,MACK: CLR SDA SETB SCL NOP ; 即SCL为高,时间大于4.0 s NOP CLR SCL SETB SDA RET,44,4) 发送非应答位信号子程序MNACK,MNACK: SETB SDA SETB SCL NOP NOP CLR SCL CLR SDA RET,45,2、I2C总线数据传送的模拟子程序,I2C总线的数据操作除了基本的启动(STA)、终止(STOP)、发送应答位(MACK)、发送非应答位(MNACK)外,还应有应答位检查(CACK)、发送一字节(WRBYT)、接收一字节(RBYT)、发送N字节(WRNBYT)和接收N字节(RDNBYT)这5个子程序。,46,(1) 应答位检查子程序CACK,CACK:SETB SDA ;置SDA为输入方式 SETB SCL ;使SDA上数据有效 CLR F0 ;预设F0=0 MOV C,SDA ;输入SDA引脚状态 JNC CEND ;正常应答转CEND,且F0=0 SETB F0 ;无正常应答,F0=1 CEND:CLR SCL ;子程序结束,使SCL=0 RET,用F0作标志位,正常应答位后,F0=0;否则F0=1。,47,(2) 发送一字节数据子程序WRBYT,初始化,要发送的位送C,1 or 0?,送“1”,送“0”,8位送完?,RET,Y,48,调用该子程序前,将要发送的数据送入A中。占用资源R0、C。 WRBYT:MOV R0,#08H WLP :RLC A JC WR1 AJMP WR0 WLP1: DJNZ R0,WLP RET WR1: SETB SDA SETB SCL NOP NOP,CLR SCL CLR SDA AJMP WLP1 WR0:CLR SDA SETB SCL NOP NOP CLR SCL A

      《单片机扩展io接口设计课件》由会员F****n分享,可在线阅读,更多相关《单片机扩展io接口设计课件》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.