单片机IO扩展及应用_第1页
单片机IO扩展及应用_第2页
单片机IO扩展及应用_第3页
单片机IO扩展及应用_第4页
单片机IO扩展及应用_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.1.1 I/O口的直接使用1.数据的无条件传送2.中断方式的条件传送7.1.2 为什么要扩展I/O口1.单片机本身接口功能有限1)口电路只有数据所存和缓冲无控制功能。2)口电路数量少。P0、P2数据地址线,P3控制信号。2.单片机控制应用中的复杂接口要求1)速度差异大。2)设备种类繁多。3)数据信号形式多种多样。7单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.1.1 I/O口的直接使用7.1.2 为什么要扩展I/O口1.单片机本身接口功能有限2.单片机控制应用中的复杂接口要求3.扩展I/O接口电路的功能1)速度协调(异步)。2)输出数据所存。3)输入数据三态缓冲。4)数据转换。7.1.3 I/O扩展的相关技术1.接口与端口(一个接口包含多个端口)。2.数据总线隔离技术。3.单片机I/O编址计数(独立编址、统一编址)。7单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.1.1 I/O口的直接使用7.1.2 为什么要扩展I/O口7.1.3 I/O扩展的相关技术7.1.4 单片机I/O控制方式1.无条件传送方式2.查询方式3.中断方式7.2 单片机简单I/O扩展7.2.1 简单输入口扩展使用74LS244(三态缓冲器)7.2.2 简单输出口扩展使用74LS377(8D锁存器)7单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.2 单片机简单I/O扩展7.3

8255A可编程通用并行接口芯片7.3.1 可编程I/O接口扩展概述中小规模集成电路:74LS244、74LS377可编程接口芯片:8255A(可编程通用并行接口)8155(带RAM和定时器的可编程并行接口)8259(可编程中断控制器)8279(可编程键盘/显示器接口)6253(可编程通用定时器)1.口电路1)3个8位并行I/O接口A口(数据口)、B口(数据口)和C口(数据口、控制口)。2)2组控制A组:PA和PC0~3、B组:PB和PC4~7

。7.3.2 8255A的逻辑结构和信号引脚1.口电路2.总线接口电路1)数据总线缓冲器:8位、三态2)读、写控制逻辑:片选信号(低电平有效):读信号(低电平有效):写信号(低电平有效)A1

、A0:端口选择信号A1

、A0端口00A口

01B口

10C口

11控制寄存器3)控制逻辑电路7.3.2 8255A的逻辑结构和信号引脚7.3

8255A可编程通用并行接口芯片7.3.1 可编程I/O接口扩展概述7.3.2 8255A的逻辑结构和信号引脚7.3.3 8255A的工作方式及数据I/O操作1.8255A的工作方式1)方式0:基本输入/输出方式输出锁存,输入三态,不用联络信号。2)方式1:选通输入/输出方式输入/输出均锁存,C口用于传送联络信号,读C口可了解外设当前状态。INTRBIBFBSTBBINTRASTBAIBFAC口位线::选通信号,输入,低电平有效。IBF:输入缓冲器信号,输出,高电平有效。INTR:中断请求信号,输出,高电平有效。输入:7.3.3 8255A的工作方式及数据I/O操作1.8255A的工作方式1)方式0:基本输入/输出方式2)方式1:选通输入/输出方式输入:输出:INTRBIBFBSTBBINTRASTBAIBFAC口位线:C口位线:INTRBOBFBACKBINTRAACKAOBFA:输出缓冲器满信号,输出,低电平有效。INTR:中断请求信号,输出,高电平有效。:应答信号,输出,低电平有效。7.3.3 8255A的工作方式及数据I/O操作1.8255A的工作方式1)方式0:基本输入/输出方式2)方式1:选通输入/输出方式3)方式2:双向数据传送方式输入:仅A口、C口控制线C口位线:INTRASTBAIBFAACKA输出:C口位线:INTRAOBFA7.3

8255A可编程通用并行接口芯片7.3.1 可编程I/O接口扩展概述7.3.2 8255A的逻辑结构和信号引脚7.3.3 8255A的工作方式及数据I/O操作7.3.4 8255A控制字及初始化编程1.8255A的控制字1)工作方式控制字:基本输入/输出方式D7:工作方式标志。D6、D5:A组方式选择。00(方式0)、01(方式1)、1X(方式2)D4:口A方向。1(输入)、0(输出)D3:口C高四位方向。1(输入)、0(输出)D2:B组方式选择。1(方式1)、0(方式0)D1:口B方向。1(输入)、0(输出)D0:口C低四位方向。1(输入)、0(输出)7.3.4 8255A控制字及初始化编程1.8255A的控制字1)工作方式控制字:基本输入/输出方式2)C口位置位/复位控制字:基本输入/输出方式D3、D2、D1

:口C位方式选择。D7:工作方式标志。D0:口C所选位值。7.3.4 8255A控制字及初始化编程1.8255A的控制字2.8255A的初始化编程例:PA口以方式0输入,PB口以方式1输出,PC口高位输出、PC口低位输入。控制寄存器地址为003AH。MOV R0,#3AH ;控制口地址MOV A,#10010101B ;写控制字MOVX @R0,A ;设工作方式MOV DPTR,#7F03H ;控制口地址MOV A,#10000110B ;写控制字MOVX @DPTR,A ;设工作方式MOV DPTR,#7F00H ;PA数据口地址MOV A,@R0 ;取RAM的数据MOVX @DPTR,A ;由PA口输出例:8255的片选地址为7F00H-7F03H,PA口以方式0输出单片机片内RAM数据,PB口工作于方式1输入。

例:8255的片选地址为7F00H-7F03H,PA口以方式0输出单片机片内RAM数据,PB口工作于方式1输入。

80518255AA1A0P2.7P2.0P0.7P0.0P0.1PA.7PA.0PB.7PB.0D.7D.0MOV DPTR,#7F03H ;控制口地址MOV A,#10000110B ;写控制字MOVX @DPTR,A ;设工作方式MOV DPTR,#7F00H ;PA数据口地址MOV A,@R0 ;取RAM的数据MOVX @DPTR,A ;由PA口输出7单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.2 单片机简单I/O扩展7.3

8255A可编程通用并行接口芯片7.4

8155带RAM和定时器/计数器的可编程并行接口芯片8155=8255A+RAM+定时器/计数器7.4.1 8155基本结构及工作方式7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式1.主要接口信号AD7-AD0:地址数据复用线ALE

:地址锁存信号

:读选通信号

:写选通信号

:片选信号

:接口与存储器选择信号

:复位信号2.I/O口及其工作方式PA(8位)、PB(8位)口:数据输入、输出控制方式PC(6位)口:数据输入(ALT1)、输出(ALT2)、 PA口控制端口方式(ALT3)、 PA和PB口控制端口方式(ALT4)7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式1.主要接口信号2.I/O口及其工作方式1)无条件传送:PA、PB、PC口数据输入/输出2)中断方式传送:PA、PB口数据输入/输出 PC口控制信号INTR:中断请求信号。BF:缓冲器满信号。:选通信号。7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式1.主要接口信号2.I/O口及其工作方式3.RAM单元及I/O口编址1)RAM单元:256单元。AD7-AD02)I/O口:6个单元。AD2-AD03)7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式7.4.2 8155与MCS-51单片机的连接8155与MCS-51的兼容信号1.用或非门产生IO/M信号1)P0.7-P0.3=00000,则IO/M=12)IO地址:00H-07H3)RAM地址:08H-FFH缺陷:系统中只能有8155,8155无片选。7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式7.4.2 8155与MCS-51单片机的连接1.用或非门产生IO/M信号2.以高位地址直接作为IO/M信号3)IO地址:0100H-0105HP2.0--IO/M

P2.1--CE(线选法)2)RAM地址:0000H-00FFH7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式7.4.2 8155与MCS-51单片机的连接7.4.3 8155的命令/状态寄存器1.命令字:805181557.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式7.4.2 8155与MCS-51单片机的连接7.4.3 8155的命令/状态寄存器1.命令字:805181552.状态字:805181557.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.4.1 8155基本结构及工作方式7.4.2 8155与MCS-51单片机的连接7.4.3 8155的命令/状态寄存器7.4.4 8155的定时器/计数器1.定时器/计数器的计数结构D7D6D5D4D3D2D1D0M2M1T13T12T11T10T9T8输出方式计数器高6位D7D6D5D4D3D2D1D0T7T6T5T4T3T2T1T0计数器低8位7.4.4 8155的定时器/计数器1.定时器/计数器的计数结构2.定时器/计数器的使用7.4

8155带RAM和定时器/计数器的可编程并行接口芯片1)采用减法计数方式(MCS-51采用加法计数)初值直接确定2)固定计数方式(MCS-51有三种计数方式)3)由外部提供计数脉冲(MCS-51由内部或外部提供)4)计数溢出方式M2M100单个方波01连续方波10单个脉冲11连续脉冲7.4.5 8155初始化7.4

8155带RAM和定时器/计数器的可编程并行接口芯片

8155定时器/计数器对计数脉冲进行千分频,即计数到1000后,TIMEROUT端重新置数产生连续方波。PA口为输入方式,PB口为输出方式,PC口为输入方式,禁止中断。T8T9T10T11T12T13M1M2D0D1D2D3D4D5D6D7T0T1T2T3T4T5T6T7D0D1D2D3D4D5D6D7017单片机I/0扩展及应用7.1 单片机为什么需要I/O扩展7.2 单片机简单I/O扩展7.3

8255A可编程通用并行接口芯片7.4

8155带RAM和定时器/计数器的可编程并行接口芯片7.5

8279可编程键盘/显示器接口芯片7.6

MCS-51单片机键盘接口技术7.6.1单片机键盘和键盘概述独立式键盘矩阵式键盘键盘接口的功能:1)键盘扫描(判断是否有键按下)2)键识别(确定按键的行列位)3)产生闭合键的键码4)排除多键、串键(复按)及去抖动7.6

MCS-51单片机键盘接口技术7.6.1单片机键盘和键盘概述7.6.2单片机键盘接口和键功能的实现1.键盘接口处理的内容1)键盘扫描(判断是否有键按下)7.6.2单片机键盘接口和键功能的实现1.键盘接口处理的内容1)键盘扫描(判断是否有键按下)2)去抖动硬件法(触发器等)软件法(延时20- 30ms)3)键码计算键码=行首号+列号00H08H10H18H00H01H02H....06H07H08H09H0AH....0EH0FH10H11H12H....16H17H18H19H1AH....1EH1FH7.6.2单片机键盘接口和键功能的实现1.键盘接口处理的内容1)键盘扫描(判断是否有键按下)2)去抖动3)键码计算4)等待键释放加延时5)键盘接口小结1)2)3)4)软硬件结合:附加功能:屏蔽功能:对一个键处理时屏蔽其它键等待功能:对一个键无论按多长时间仅 处理一次7.6.2单片机键盘接口和键功能的实现1.键盘接口处理的内容2.键盘接口的控制方式随机方式中断方式定时方式3.键处理子程序有键按下处理软件(子程序)7.6.3使用8155作单片机键盘接口7.6

MCS-51单片机键盘接口技术7.6.1单片机键盘和键盘概述7.6.2单片机键盘接口和键功能的实现1.接口电路逻辑图A为输出,地址:0101H;C为输入,地址:0103H2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论