第十周 可编程数字接口电路 您所在的位置:网站首页 电平灯电路 第十周 可编程数字接口电路

第十周 可编程数字接口电路

2023-07-14 05:45| 来源: 网络整理| 查看: 265

大家好,又是我,沉迷学习无法自拔的小笨蛋康sir。

这个文集(点我)将会同步更新我观看吴宁老师的《微机原理与接口技术》教学视频写的笔记,学习笔记,大概每周一章。

有问题大家可以在评论下面留言讨论,欢迎纠错!

欢迎收藏阅读,动动小手给个硬币点个赞。

                                                                ——@正能量的康sir

也可移步我的博客(https://blog.csdn.net/qq_33956508)会更新一些其它技术类文章。

第十周 可编程数字接口电路

内容提要:

两种可编程并行接口芯片的应用

 可编程芯片:可以通过软件命令,控制芯片的工作方式

数据传输方向

输入/输出方式

可编程定时计数器8253

可编程并行接口8255

第51讲 可编程定时计数器8253

计数与定时

定时/计算器的工作基准是时钟脉冲

       

       

计数脉冲周期恒定——定时

定时的时间长度取决于时钟脉冲的周期及脉冲数

要求定时100秒——计数脉冲数:100

计数初值

由需求和条件决定

8253芯片特点

 可编程的逻辑器件;

 非通道型的接口,具有特定功能;

 可实现计数和定时;

 工作方式:

 减法计数

 计数值减为0时输出相应控制信号

 输出控制信号的形式可通过软件设置

① 外部主要引脚信号功能及内部结构

② 计数启动方式

③ 工作方式

④ 控制命令字格式

⑤ 应用

1. 外部引线及内部结构

连接系统端的主要引线:

D0----D7

#CS

#RD

#WR

A0,A1

连接外设端的主要引线

CLK ----------- 时钟脉冲输入

GATE ---------- 门控信号输入

OUT ------------ 定时输出

       

       

内部结构特点

 具有三个完全相同的、独立的计数/定时器

       

       

控制寄存器存放控制命令字

每个计数器占用1个端口地址

(3个计数器、一个控制寄存器所以占四个端口 A1A0是片内地址)

结构特点

 内部3个计数器均为减法计数器

 根据计数脉冲的频率及需要定时的时间长度确定计数初值

每个计数器含16位初值寄存器、16位计数寄存器。(相同端口地址。存放计数初值)

控制寄存器 存放控制命令字

外部引线及内部结构

 三个可独立工作的16位定时/计数器,一个控制寄存器。共占用4个端口地址。

 4个端口的地址编码:

A1 A0

0 0 CNT0

0 1 CNT1

1 0 CNT2

1 1 控制寄存器

2. 计数启动方式

启动方式由GATE端信号的形式决定

软件启动——GATE端为高电平

硬件启动——GATE端有一个上升沿

3. 工作方式

 方式0

 软件启动,不自动重复计数;

 计数结束输出高电平。

       

       

方式1

 硬件启动,不自动重复计数;

 计数开始输出低电平,结束后又变高。

       

       

① 计数一旦启动,GATE端既使变低也不会影响计数。

② 可重复触发。当计数到0后,不用再次写入计数初值,只要再次出现GATE上升沿,即可产生一个同样宽度的负脉冲

方式2

 软、硬件启动,自动重复计数。

 计数到最后一个脉冲时输出低电平

       

       

① 可输出频率为(1/N)CLK脉冲频率的连续方波信号。

② 每1个OUT端脉冲包含(N-1)*CLK的正脉冲,1CLK的负脉冲。

方式3

 软、硬件启动,自动重复计数。

 输出对称方波

       

       

① 若N为偶数,输出频率为(1/N)CLK频率的连续对称方波信号。

② 若N为奇数,输出波形为 (N+l)/2CLK 周 期 正脉 冲 , (N-1)/2CLK 负脉冲。

方式4

 软件启动,不自动重复计数。

 计数结束输出一个CLK宽度的低电平

       

       

方式5

 硬件启动,不自动重复计数

 波形与方式4相同

       

       

工作方式小结

 需要两个写脉冲——两次写操作

 第1个写脉冲写入控制字

 第2个写脉冲写入计数初值

 不同的工作方式,有不同的计数启动方法。

 可根据对输出波形的要求,选择不同的工作方式。

 能输出连续波形的只有方式2和方式3。

4. 控制字

用于设定各计数器的工作方式

               

       

最大16位BCD数:9999

最大16位二进制数:FFFF

8253为减法计数器

最大计数初值:0(1000000000000000)

5. 8253的应用

硬件设计:与系统的连接

软件设计

初始化程序设计

写入控制字

置计数初值

与系统的连接示意

       

       

应用中的注意点

 每一次启动计数,需有两次写操作:

 写控制字

 写计数器初值:如果初值为8位字长,则一次写入;若初值为16位字长,则需两次写入

每个计数器的控制命令字均送入控制寄存器

各计数器的计数初值送到该计数器的计数寄存器及初值寄存器

初始化程序流程

       

       

当有两个以上计数器被应用时的初始化程序设计流程:

       

       

       

       

原则:先写入控制字,后写入计数初值

8253应用例:

 采用8253作定时/计数器,其接口地址为0120H~0123H。

 输入8253的时钟频率为2MH。要求:

 CNT0每10ms输出一个CLK周期宽的负脉冲

 CNT1输出10KHz的连续方波信号

 CNT2在定时5ms后产生输出高电平

 画线路连接图,并编写初始化程序.

工作的计数器

工作方式

计数初值

启动方式

计数脉冲频率

 计算计数初值:

CNT0:10ms/0.5us=20000   (可有2MH推出周期0.5us)

CNT1:2 MHz/10KHz=200

CNT2: 5ms/0.5us=10000

 确定控制字:

CNT0:方式2,16位计数值 控制字00110100

CNT1:方式3,低8位计数值 控制字01010110

CNT2:方式0,16位计数值 控制字10110000

       

       

初始化程序

CNT0:

MOV DX,0123H;控制器的地址

MOV AL,34H;计数器0的控制字

OUT DX,AL

MOV DX,0120H;计数器0的位置

MOV AX,20000

OUT DX,AL;写低8位

MOV AL,AH

OUT DX,AL;写高8位(OUT的操作数不能直接是AH)

CNT1:

……

CNT2:

……

8253接口

 可编程8bit并行接口(但是内部计数器是16位的)。通过软件初始化控制其工作方式和计数/ 定时时长

 实现对外部设备的定时/计数控制。

减法计数器。

第52讲 可编程并行接口8255

补充知识:并行通信和串行通信

在通信过程中,如果能够同时传送数据的所有位(位数山机器的字长决定)就称为并行通信;如果数据是逐位顺序传送,则称为串行通信

1. 并行接口8255的特点:

通道型接口

 主要用于数据的输入或输出

含3个独立的8位并行输入/输出端口

 2个为8位端口(PA,PB);

 1个可拆分为两个4位端口(PC口)

各端口均具有数据的控制和锁存能力

 既可作为输入端口,也可以作输出端口。

可通过编程,设置各端口工作在某一确定状态下。

       

       

2. 结构

A组控制:A端口,C口高4位

B组控制: B端口,C口低4位

针对A、B组的控制字存放在控制寄存器中

       

       

3. 引线

连接系统端的主要引线:

 D0----D7

 #CS

 #RD

 #WR

 A0,A1

 REAST

       

       

连接外设端的引脚:

 PA0 —— PA7

 PB0 —— PB7

 PC0 —— PC7

分别对应ABC三个端口

8255与系统的连接示意图

       

       

4. 工作方式

基本输入/输出方式(方式0)

选通工作方式(方式1)

双向传送方式(方式2)

方式0:

 相当于三个独立的8位简单接口

 各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出

 C端口可以是一个8位的简单接口,也可以分为两个独立的4位端口

 常用于连接简单外设,适于无条件或查询方式

方式0的应用:

 习惯上:

 A端口和B端口作为8位数据的输入或输出口

 C口的某些位作为状态输入

 注:

  若使C端口低4位中某一位作为输入口,则低4位中其他位都应作为输入口。同时可设高4位作为输出。

       

       

方式1:

利用一组选通控制信号控制A端口和B端口的数据输入输出

 A口、B口作输入或输出口,C口的部分位用作选通控制信号

 A口、B口在作为输入和输出时的选通信号不同

方式1下A、B端口作为输出的选通控制信号和输出波形

       

                       

       

方式1下A、B端口作为输入的选通控制信号和输出波形

       

                       

       

方式1的应用:

 方式1主要用于中断控制方式下的输入输出

 C口的8位除用作选通信号外,其余位可工作于方式0下,作为输入或输出口。

方式2:

 双向输入输出方式。可以既作为输入口,又作为输出口。

 只有A端口可工作在方式2下

方式2下A端口的选通控制信号和输出波形

       

       

方式2的应用:

 可使A端口作为双向端口所有

 用于中断控制方式

 当A口工作于方式2时:

 B口可工作于方式1,此时C口的所有位都用作选通控制信号的输入输出

 B口也可工作于方式0,此时C口的剩余位也可工作于方式0

4. 方式控制字及位控制字

 方式控制字:

用于确定3个端口的工作方式及数据传送方向;

 位控制字

 仅用于C端口

 可设置C口某位的初始状态(为高电平或低电平)

 当其工作于方式0下且作为输出口时,一般需要对作为输出的位设置初始状态(即初始化)

8255控制字

       

       

5. 8255芯片的应用

 芯片与系统的连接

 芯片的初始化

 相应的控制程序

8255应用例:

 8086CPU通过8255实施监控。8255端口地址为1020H-1023H,启动操作由端口B的PB7控制(高电平有效),端口A输入8个监控点的状态(每个引脚接一个监控点),只要其中任一路出现异常情况(高电平),系统就通过与PC0相连的信号灯报警(高电平灯亮),要求信号灯亮灭3次。要求:

 设计系统线路图,要求用138译码器设计译码电路;

 编写8255初始化程序及启动、测试和报警控制程序

地址范围0001 0000 0010 00XX

       

       

控制流程

       

       

控制程序

MOV DX,1023H;控制寄存器地址

MOV AL,10010000B;方式控制字

OUT DX,AL

MOV AL,0;位控制字

OUT DX,AL

MOV DX,1021H

MOV AL,80H;PB7输出高电平,启动布防

OUT DX,AL

A:MOV DX,1020H;这里的四句是监控程序

IN AL,DX

CMP AL,0

JZ A

MOV CX,3

MOV DX,1022H;C端口

MOV AL,1;PC0位输出1(高电平)

B: OUT DX,AL

CALL DELAY

NOT AL;按位取反 C0位变换亮灭(高低电平)

CALL DELAY

LOOP B

JMP A

8255应用要求

 主要引线功能及结构

 3种工作方式及其特点

 应用:

 芯片与系统的连接

 芯片的初始化编程

 数据输入/输出控制程序设计

可编程数字接口小结

学习要求

了解什么是可编程

可编程定时/计数器8253

启动方式

不同工作方式下的输出波形

初始化编程

与系统的连接

还要注意根据需要选择相应的工作方式

可编程并行数字接口8255

不同工作方式适应场合

与系统的连接

初始化编程

相关控制程序

利用8255和8253构造报警系统

(略)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有