备课笔记10D接口芯片.docx

上传人:b****5 文档编号:6209104 上传时间:2023-01-04 格式:DOCX 页数:18 大小:729.92KB
下载 相关 举报
备课笔记10D接口芯片.docx_第1页
第1页 / 共18页
备课笔记10D接口芯片.docx_第2页
第2页 / 共18页
备课笔记10D接口芯片.docx_第3页
第3页 / 共18页
备课笔记10D接口芯片.docx_第4页
第4页 / 共18页
备课笔记10D接口芯片.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

备课笔记10D接口芯片.docx

《备课笔记10D接口芯片.docx》由会员分享,可在线阅读,更多相关《备课笔记10D接口芯片.docx(18页珍藏版)》请在冰豆网上搜索。

备课笔记10D接口芯片.docx

备课笔记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

方式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

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1