备课笔记10D接口芯片.docx
- 文档编号:6209104
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:18
- 大小:729.92KB
备课笔记10D接口芯片.docx
《备课笔记10D接口芯片.docx》由会员分享,可在线阅读,更多相关《备课笔记10D接口芯片.docx(18页珍藏版)》请在冰豆网上搜索。
备课笔记10D接口芯片
《微机原理及应用》备课笔记(D)
第七章可编程接口芯片及应用.
7-1接口的分类和功能
7-1-1接口的分类
一、按I/O的信号分
1.数字信号
1)并行数据I/O接口
2)串行数据I/O接口
3)频率和脉冲信号I/O
4)状态信号输入和控制信号输出
2.模拟信号
1)A/D输入
2)D/A输出
二、按接口的适用范围和选择灵活性分
1.专用接口——高性能,高成本,专用性
2.通用接口——通用性,价格低,性能有限
1)布线逻辑多功能——通过硬件电路跳线选择不同的功能(例如:
万用表)
2)可编程多功能——通过软件编程设置选择不同的功能(例如手机选择不同的铃声等)
7-1-2接口的功能
1.输入缓冲和输出锁存数据
2.信号变换。
包括码制转换、电平变换、D/A和A/D变换等。
3.地址译码
4.外设控制及其命令传送(包括状态输入、控制命令输出、中断信号等)
7-2可编程并行接口Intel8255A
7-2-18255的功能(只读)
●三组8位并行I/O接口(PA、PB、PC)。
可以分别编程设定三种工作方式
●方式0——基本输入输出方式,3组8位并行I/O接口,无联络信号
●方式1——选通输入输出方式,2组8位并行I/O接口,每组3条联络信号
●方式2——选通双向传输方式,仅适用端口A,8位数据端口和5条联络信号
●8位数据线
●2位地址线,区分片内4个端口
●RESET:
高电平有效。
复位后所有I/O端口均处于输入状态。
7-2-28255内部结构和引脚功能
8255有40条引脚:
分别是VCC、GND、PA、PB、PC、DB0~7、…
7-2-38255端口操作寻址方式与编程
一、8255端口操作寻址方式
8255寻址方式与相应操作
A1
A0
/RD
/WR
/CS
操作
0
0
0
1
0
读端口A
0
1
0
1
0
读端口B
1
0
0
1
0
读端口C
0
0
1
0
0
写端口A
0
1
1
0
0
写端口B
1
0
1
0
0
写端口C
1
1
1
0
0
写工作方式字
×
×
×
×
×
无操作(高阻抗)
×
×
1
1
1
无操作(高阻抗)
1
1
0
1
0
非法操作
二、8255A方式控制字
体现可编程多工作模式
D7
D6
D5
D4
D3
D2
D1
D0
1
PA方式
PA
PCH
PB方式
PB
PCL
其中:
PA、PB、PCL、PCH0——输出方式
1——输入方式
D6、D5
PA方式
D2
PB方式
00
方式0
0
方式0
01
方式1
1
方式1
1×
方式2
二、8255A端口C置/复位命令字
D7
D6
D5
D4
D3
D2
D1
D0
0
×
×
×
B2
B1
B0
1/0
D00——复位操作
1——置位操作
B2、B1、B0三位编码用于指示对端口C的哪一位进行操作。
7-2-48255工作方式0——基本输入输出方式
一、特点:
●基本输入输出方式,通常不用联络信号,只能用于无条件I/O或查询方式I/O传送。
●输出方式时,三个端口都有输出锁存功能;输入时,除PA有输入锁存和输入缓冲功能,PB、PC只有输入缓冲功能
●PA、PB、PCL、PCH均可作为独立的I/O端口分别编程为输入或输出方式,可有16种不同的输入输出组态
●如果用于查询式输入输出,通常指定PC某些位作为联络信号,而用PA和PB作为并行数据输入输出端口
二、应用举例
例1:
从PA0~PA7输出8位二进制数据N,延时一段时间后,再将PA4引脚输出改为高电平。
设8255端口地址为60H~63H.。
程序:
MOVAL,10001011B;8BH,PA输出,其余输入,方式0
OUT63H,AL;写方式控制字
MOVAL,N
OUT60H,AL;输出数据
CALLDELAY;延时
INAL,60H;读回刚才输出地数据
ORAL,10H;使D4位为1
OUT60H,AL;使PA4引脚输出高电平
例2:
输入PC1引脚状态,如果是高电平,则输入PB的8位数据,存入DTB单元。
否则等待。
MOVAL,10011011B;9BH,全部输入方式0
OUT63H,AL
LP:
INAL,62H;输入状态端口PC
ANDAL,02H;检测PC1引脚状态
JZLP;如果不是高电平则转等待
INAL,61H;输入PB的8位数据
MOVDTB,AL;存入DTB单元
例3:
已知如下图所示接口电路,试编程使右边8个LED只点亮其中一个,然后,每按动一下选通按钮,LED亮点循环下移一位。
设8255A的端口地址为220H~223H。
解:
按照PA输出方式0工作,PCH按照输入方式工作,其它均为输入方式0。
方式控制字:
10001011=08BH
程序:
MOVAL,08BH;8255工作方式初始化
MOVDX,223H;用DX指向控制端口
OUTDX,AL;写入工作方式控制字
MOVAL,07FH;PA输出状态初始化
MOVDX,220H;用DX指向数据端口
OUTDX,AL;写入PA端口,输出
WAIT0:
MOVDX,222H;用DX指向状态端口
INAL,DX;读PC端口
ANDAL,80H;屏蔽无关位,只保留PC7状态
JNZWAIT0;等待PC7输入低电平
WAIT1:
INAL,DX;读PC端口
ANDAL,80H
JZWAIT1;等待PC7输入高电平
MOVDX,220H
INAL,DX;读PA端口的输出值
RORAL,1;循环移一位
OUTDX,AL;输出PA端口新的输出值
JMPWAIT0;循环
7-2-58255工作方式1——选通输入/输出方式
选通方式——每个选通输入/输出接口除了包括一个8位的数据I/O端口外,还有3条联络线,并且内部有联络逻辑。
一、方式1输入
1.联络线引脚安排
2.联络线功能与逻辑
/STB——选通信号,输入
IBF——输入缓冲器满,输出
INTR——中断请求,输出
INTE——中断允许触发器控制位,通过对口C的/STB所占引脚置/复位命令,控制INTR输出是否允许。
置位允许,复位禁止。
3.方式1输入联络时序图
4.
二、方式1输出
1.联络线引脚安排
2.联络线功能与逻辑
OBF——输出缓冲器满,输出
ACK——应答信号,输入
INTR——中断请求,输出
INTE——中断允许触发器控制位,通过对口C的/ACK所占引脚置/复位命令,控制INTR输出是否允许。
置位允许,复位禁止。
3.方式1输出联络时序图
4.
应用举例
例4:
已知如右图所示接口电路,试编程使右边8个LED只点亮其中一个,然后,每按动一下选通按钮,LED亮点循环下移一位。
设8255A的端口地址为220H~223H。
解:
按照PA输出方式1工作,其它均为输入方式0。
联络信号如图所示。
方式控制字:
10101011=0ABH
程序:
MOVAL,0ABH;8255工作方式初始化
MOVDX,223H;用DX指向控制端口
OUTDX,AL;写入工作方式控制字
MOVAL,07FH;PA输出状态初始化
MOVDX,220H;用DX指向数据端口
OUTDX,AL;写入PA端口,输出
WAIT:
MOVDX,222H;用DX指向状态端口
INAL,DX;读PC端口
ANDAL,80H;屏蔽无关位,只保留PC7(OBF低电平有效表示输出缓冲器满,高电平表示输出缓冲器空)状态
JZWAIT0;等待OBF变高电平)
MOVDX,220H
INAL,DX;读PA端口的输出值
RORAL,1;循环移一位
OUTDX,AL;输出PA端口新的输出值
JMPWAIT0;循环
三、可编程定时/计数器8253
7-3-18253的功能
●三个独立的16位定时/计数器通道
●每个定时/计数器都可编程选择6种工作方式
●每个定时/计数器都由16位计数器、16位初值寄存器和16位输出锁存器构成
●每个定时/计数器有CLK、GATE和OUT三个外部信号引脚
●8位数据线,2条地址线,片内四个端口地址
●24引脚
7-3-28253内部结构和引脚功能
一、内部结构
1、计数执行部件CE——16位
1)当GATE信号输入有效时,对CLK引脚输入的脉冲进行减法计数;
2)当计数到一定时候(如归0,或过半),OUT引脚输出信号改变。
改变规则与工作方式有关;
2、计数初值寄存器CR——16位,需CPU分二次写入,计数开始时16位一次并行装入执行部件。
3、输出锁存器OL——要读取计数器的当前值须通过OL。
由于内部总线是8位的,需要分二次读出。
在二次读期间高低8位间可能发生借位,因此必须现将CE中计数值先锁存入OL,在分二次读出。
4、控制寄存器——用于存储对该计数通道的工作方式控制命令。
5、每个计数通道的数据端口分配一个地址,三个计数通道控制字共用一个控制端口。
共需要四个端口地址,二条地址线。
6、对数据端口写入的数据进入初值寄存器CR,对数据端口读回的数据来自输出锁存器OL。
二、引脚功能(略)
三、8253与8088三总线的连接——见上图
1、数据总线的连接
2、地址线的连接
3、控制线的连接
7-3-38253端口操作寻址方式与编程
一、8253端口操作寻址方式
A1
A0
/RD
/WR
/CS
操作
0
0
0
1
0
读计数器0
0
1
0
1
0
读计数器1
1
0
0
1
0
读计数器2
0
0
1
0
0
写入计数器0
0
1
1
0
0
写入计数器1
1
0
1
0
0
写入计数器2
1
1
1
0
0
写工作方式字
1
1
0
1
0
非法操作
×
×
×
×
1
无操作(高阻抗)
×
×
1
1
×
无操作(高阻抗)
二、8253编程
8253工作方式控制字
7-3-48253工作方式0——计数结束产生中断
一、特点:
1、写入方式0控制字后,OUT输出变低电平;
2.、写入计数初值后,如果GATE=1,则CLK引脚每输入一个一个脉冲(下降沿),计数值减1;
3、GATE=0,则停止计数,屏蔽CLK输入作用
4、计数器减1计数归零时,OUT输出变高电平
5、OUT变高前,重新写入初值,则新的初值立即装入计数执行部件,按新值继续计数。
直到计数器归零,OUT才输出变高。
二、应用举例
例1、用CNT#0对从CLK引脚输入的外部脉冲计数。
设端口地址为40~43H.。
解:
把GATE引脚接高电平,CNT#0工作在方式0,初值设为0,启动计数。
读计数值时,先发锁存命令,在分二次读出计数值的低、高8位。
程序:
MOVAL,00110000H;=30H,通道0,只写高字节,方式0,二进制计数。
OUT43H,AL;初始化
MOVAL,0
OUT40H,AL
OUT40H,AL;启动计数
。
。
。
MOVAL,00000000H;=0,通道0,锁存命令,方式0,二进制计数
OUT40H,AL
INAL,40H;读计数值的低8位
MOVBL,AL;暂存
INAL,40H;读计数值的高8位
MOVBH,AL;
NEGBX;实际计数值
7-3-48253工作方式3——方波频率发生器
一、特点
二、工作原理
1、写入控制字后,OUT输出变低电平
2、写入计数初值N后,OUT输出变高电平
3、如果GATE=1,则每输入一个脉冲计数值减1;
4、当计数值减到N/2或(N+1)/2时,OUT输出变低电平
5、当计数值减到0时,OUT输出变高电平,同时计数初值自动重装。
6、如果CR写入新的初值,不会立即装入计数执行部件,而是等当前计数值归零后才将新值装入计数执行部件计数。
7、GATE=0,则停止计数,屏蔽CLK输入作用
总之,OUT输出基本是方波。
三、应用举例
例2:
设已有一个1.923MHz基准时钟信号,试采用8253产生周期为1秒的方波信号。
画出8253外侧(CLK,GATE,OUT引脚)电路接线图和软件程序(假设8253内侧与CPU的接线已接好,8253端口地址为:
60H~63H)。
解:
(解决方案不是唯一的)可以用两个计数通道级联,扩展定时时间,如图所示。
使用8253计数通道0#,工作在方式3(方式2也可以),对基准时钟进行1923分频,OUT0输出1KHz时钟信号,十进制计数。
方式控制字:
00110111B=37H,计数初值=1923。
使用计数通道1#,工作在方式0,十进制计数,对OUT0输出的1KHz时钟信号再进行1000计数,输出1秒定时低电平脉冲,在脉冲的后沿变高电平。
方式控制字:
01100001B=61H,计数初值=1000(只需写入高八位10H)。
程序如下:
CW0EQU37H
N0EQU1923
CW1EQU61H
N1HEQU20H
MOVAL,CW0
OUT63H,AL
MOVAX,N0
OUT60H,AL
MOVAL,AH
OUT60H,AL
MOVAL,CW1
OUT63H,AL
MOVAL,N1H
OUT61H,AL
例3:
设8253在微机系统中的端口地址为60H~63H,现有一个2.0MHz的时钟信号,试利用8253的通道0#设计一电路,产生频率为100Hz的方波信号输出。
画出接口电路示意图,计算定时常数,写出方式控制字,并写出相应的程序。
解:
1)电路图
2.0MHz
100Hz
2)定时常数计算:
N=
=
=20000,小于65536,大于10000
3)方式控制字:
计数通道2#,16位读写,工作方式3,二进制计数(各0.5分)
10110110B=0B6H
4)程序:
MOVAL,0B6H;
OUT63H
MOVAX,20000
OUT60H,AL;
MOVAL,AH
OUT60H,AL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 备课 笔记 10 接口 芯片