当前位置:网站首页>第八章 可编程接口芯片及应用【微机原理】

第八章 可编程接口芯片及应用【微机原理】

2022-06-21 16:04:00 日星月云

前言

以下内容源自微型计算机原理(第四版)王忠民主编
来源于教学PPT
仅供学习交流使用
请您阅读文章声明,默认同意该声明

第8章可编程接口芯片及应用

8.1 可编程定时器/计数器芯片 8253/8254

微机系统中很多地方都要用到定时功能。例如第六章介绍的DRAM,系统中就是采用定时器来触发启动动态刷新。过程控制领域则大量需要计数功能。不论是定时还是计数,都是通过对时钟脉冲计数来完成的。当对标称方波进行脉冲计数,就可以完成定时。

定时和计数的产生
(1)定时控制在微机系统中具有极为重要的作用
(2)计数是许多过程控制领域常用的功能
(3)定时和计数之间的关系
定时器通过记录高精度晶振脉冲信号的个数从而输出准确的时间间隔。
计数器记录反映外设某种状态的具有一定随机性的脉冲信号。

8.1.1 8253的结构与功能

1. 8253的引脚
8253的外部引脚
在这里插入图片描述

24引脚双列直插式芯片
3个独立的16位计数器通道
每个计数器通道有6种工作方式
按二进制或十进制(BCD码)计数
在这里插入图片描述
2. 8253 的内部结构

1.计数通道

在这里插入图片描述
8253内部计数器的结构

8253内部有3个独立工作的16位计数通道
CR:16位初值寄存器
CE:减1计数器
OL:输出锁存器

在这里插入图片描述
2.数据总线缓冲器

3.读写控制逻辑
8253的端口地址及内部操作
在这里插入图片描述
4.控制字寄存器

计数通道的选择
读写方式的确定
工作方式的确定
计数方式的确定

8.1.2 8253的编程

1. 8253的控制字格式

在这里插入图片描述
2. 8253的初始化编程

  1. 确认端口地址
  2. 确定工作方式与计数初值
  3. 确定控制字
  4. 写计数器的控制字与计数器计数初值,完成初始化编程

设8253的端口地址为0040H0043H,已知时钟端CLK2输入信号的频率为2 MHz。使用8253计数器2产生频率为40 kHz的方波,初始化8253,完成所需功能。

1、确认端口地址


地址范围40H~43H
0#计数器端口地址:40H
1#计数器端口地址:41H
2#计数器端口地址:42H
控制寄存器端口地址:43H

2、确定工作方式与计数初值


工作于方式3,输出方波

计数初值=输入频率/输出频率
                =2000000Hz /40000Hz
                =50
                =0032H

3、确定控制字

在这里插入图片描述
4、初始化程序

MOV  AL,10110110B
OUT  43H,AL             ;送控制字
MOV  AL,32H
OUT  42H,AL             ;送低8位
XOR  AL,AL
OUT  42H,AL             ;送高8位

在计数过程中读8253的计数值

  1. 给控制字寄存器写入锁存命令
  2. 从锁存器中读出计数值,若是16位,则分别读出
  3. 不影响计数通道正常计数

在前例的基础上,读出2#计数器当前计数值的程序段:

   MOV  AL, 10000000B
  OUT  43H,AL

   IN    AL,42H     ;读低8位
   MOV  CL,AL
   IN    AL,42H     ;读高8位
   MOV  CH,AL   ;CX中是当前计数值

8.1.3 8253的工作方式

  • 计数结束产生中断方式
  • 可编程单次脉冲
  • 分频工作方式
  • 方波发生器
  • 软件触发选通
  • 硬件触发选通
  1. 开始计数:
  • 硬件触发还是软件触发
  • 写入方式字OUT引脚电平
  1. 计数中:
  • 计数中OUT输出波形
  • 计数过程中门控信号GATE对计数操作的影响
  1. 计数结束:
  • 是否重复计数
  • 计数初值写入初值寄存器后,在门控有效的前提下,要经过一个CLK输入后才开始计数
  • 计数器在CLK的下降沿使计数值减1

1. 方式0 —计数结束产生中断方式
门控失效则暂停计数。(门控有效后继续计数)
在这里插入图片描述
2. 方式1 —可编程单次脉冲

在这里插入图片描述
3. 方式2 —分频工作方式
Gate失效会暂停计数,(有效后重新开始计数)

在这里插入图片描述
4. 方式3 —方波发生器

GATE电平对波形的影响与方式2一致

在这里插入图片描述
5. 方式4 —软件触发选通
不能自动重复计数,每次启动计数都要靠重新写入计数值,所以称为“软件触发选通”,改变初值可以方便地发出选通信号的延迟时间。
在这里插入图片描述
6. 方式5—硬件触发选通

在这里插入图片描述
8253工作方式小结

  • 初始化后OUT输出:
    只有方式0,在写入控制字后输出为低;其余5种方式,都是在写入控制字后输出为高。
  • 计数开始的触发方式:
    方式0、2、3、4都是写入计数初值后,计数过程开始了,为软件触发。方式1和方式5在写入计数初值后,需由外部GATE信号的上升沿触发启动,为硬件触发计数。
  • 自动重复计数:
    方式2(分频器)和方式3(方波发生器)为自动重复工作方式,其他4种方式都是一次性计数,要继续工作需要重新启动。

8.1.4 8254与8253的区别

8.1.5 8253应用举例

8253在XT机中的应用

在这里插入图片描述

 1) 计数器0
该计数器向系统日历时钟提供定时中断
工作方式为方式3
计数器计数初值预置为0
OUT0输出方波的频率为1.19 MHz/65536=18.21Hz,
即每隔55ms申请一次日历时钟中断。
一分钟1092次,一小时65543次,24小时1573040(001800B0H)次。
中断服务程序对中断次数进行计数,形成实时时钟。
MOV	  AL,36H	
OUT	  43H,AL	
MOV	  AL,0	
OUT	  40H,AL	
OUT	  40H,AL
2) 计数器1
向DMA控制器定时发送动态存储器刷新请求
方式2工作,初值18
频率为1.19MHz/18=662878kHz。周期为15.09µs。
OUT1输出从低电平变为高电平使触发器置1,
输出一个正电平信号给8237DREQ0,
作为内存刷新的DMA请求信号DRQ0。
MOV	  AL,54H  	
 OUT	43H,AL  
 MOV	AL,12H  
OUT	41H,AL 
3) 计数器2
在IBM PC/XT机的BIOS中有一个声响子程序BEEP,
它将计数器2设置为工作方式3,
作为方波发生器输出约1 KHz的方波,
经滤波驱动后推动扬声器发声。 
初值:533H,初值决定了发声的频率,
即音调,而对门控信号的控制决定了发声的长短。
MOV	  AL,0B6H	
OUT	 43H,AL  
MOV	 AX,533H  
OUT	 42H,AL 
MOV    AL,AH
OUT     42H,  AL

8.2 可编程并行接口芯片 8255A

通信?——计算机与外部信息的交换

计算机和数据通信系统中的两种基本数据传送方式——并行通信、串行通信

和串行传送相比,在同样的时钟速率下,并行传送的数据传输率较高。串行通信则是用于远距离传输要求的场合,并行通信往往适用于信息传输率要求较高,而传输距离较短的场合

8.2.1 8255A的引脚与结构

1. 8255的引脚
可编程并行接口芯片8255
8255A采用40脚双列直插封装
单一+5V电源
8位并行输入输出接口芯片
全部输入输出与TTL电平兼容
用8255A连接外部设备时,通常不需要再附加其他电路,使用方便
在这里插入图片描述
8255外部引脚
在这里插入图片描述
2. 8255内部结构

  • 端口A、B、C
  • A组控制、B组控制
  • 数据总线缓冲器
  • 读、写控制逻辑
    在这里插入图片描述
    8255读写操作时的信号关系
    在这里插入图片描述

8.2.2 8255A的工作方式与控制字

1. 8255的工作方式

  • 方式0:基本输入输出方式
    适用于无条件传送和查询方式的接口电路

  • 方式1:选通输入输出方式
    适用于查询和中断方式的接口电路

  • 方式2:双向选通传送方式
    适用于与双向传送数据的外设
    适用于查询和中断方式的接口电路

2. 8255的控制字
1)工作方式选择控制字
在这里插入图片描述
**8255的工作方式初始化 **

假定要求8255A的各个端口工作于如下方式:
端口A——方式0,输出;
端口B——方式0,输入;
端口C的高4位——方式0,输出;
端口C的低4位——方式0,输入。

在这里插入图片描述
相应的方式选择控制字应为:1 00 0 0 0 1 1

假定要求8255A的各个端口工作于如下方式:
端口A——方式0,输出;
端口B——方式0,输入;
端口C的高4位——方式0,输出;
端口C的低4位——方式0,输入。
相应的方式选择控制字应为 83H

设在系统中8255A控制口的地址为D3H,则执行如下两条指令即可实现上述工作方式的设定。

 MOV AL,83H;
 OUT 0D3H,AL; 将方式选择控制字写入控制口

2) C口按位置位/复位控制字

注意:C口控制字虽然是对端口C操作,但应写入到控制口地址,而不是写入到C数据口

在这里插入图片描述
例:通过C置位/复位控制字使PC7置1,PC3置0

MOV    DX,0D3H
MOV    AL,00001111B;PC7置1,引脚上出现高电平
OUT     DX,AL
MOV    AL,00000110B;PC3置0,引脚上出现低电平
OUT    DX,AL

8.2.3 各种工作方式的功能

1.8255的工作方式0——基本输入/输出方式

  • A口、B口、C口的高4位和低4位均可设置为方式0。

  • 无须联络就可以直接进行8255A与外设之间的数据输入或输出操作。

  • 也适用于查询方式传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。
    在这里插入图片描述

2. 8255的工作方式1—选通输入输出方式
8255A的A口和B口与外设之间进行输入或输出操作时,需要C口的部分I/O线提供联络信号。只有A口和B口可工作于方式1

3. 8255的工作方式2—双向选通传送方式
同一端口的I/O线既可以输入也可以输出,只有A口可工作于方式2。此种方式下需要C口的部分I/O线提供联络信号。

8.2.4 8255A的应用举例

例:采用4个开关输入一个十六进制数,使用8255,将通过开关输入的数显示到七段数码管上。8255端口地址为60H~63H,与8088CPU连接。设计接口电路,编写程序。

解决思路:
1、作为接口芯片,8255如何与CPU连接?
如何与已知的开关七段数码管这两个外设连接?如何构成一个系统?
2、系统硬件连线完成,如何编写程序,完成系统指定的功能?

LED显示器原理

主要部分是7段发光管
顺时针分别称为a、b、c、d、e、f、g
有的产品还附带有一个小数点h
通过7个发光段的不同组合
主要显示0~9
也可以显示A~F
(实现16进制数的显示)
还可以显示个别特殊字符,
如-、P 等

在这里插入图片描述
LED类型—共阴极和共阳极

在这里插入图片描述
在这里插入图片描述
单一数码管显示代码
在这里插入图片描述
在这里插入图片描述

LEDtb	db    0C0h,0F9h,0A4h,…       ;显示代码表
	……
	mov    bx,    offset LEDtb
    mov    al,1	              	;AL←要显示的数字
    xlat						 ;换码:AL←DS:[BX+AL]
	mov    dx,    portA
	out      dx,    al	      	;输出显示

8255与外设连线图

在这里插入图片描述
8255与8088CPU连线图

在这里插入图片描述
在这里插入图片描述

DATA  SEGMENT
TABLE    DB   0C0H,0F9H, 0A4H,0B0H, 99H,92H,82H,0F8H
         DB   80H,90H,88H,83H,0C6H,0A1H,86H, 8EH
DATA  ENDS

CODE  SEGMENT
     ASSUME  CS: CODE,DS: DATA
START:
		MOV AX, DATA
        MOV DS,AX
        MOV  AL,91H  ;设置方式选择控制字,A口工作于方式0输入, B 口工作于方式0输出
        OUT   63H,AL                          
NEXT:   
 		IN  AL, 60H
        AND AL,0FH                               ; 取A口低4位
        MOV BX,OFFSET TABLE        
        XLAT
        OUT 61H,AL                                     ; 显示码输出
        MOV AH,1             ;判断是否有键按下
        INT 16H                   ; 
        JZ  NEXT                 ; 若无,则继续读端口A
        MOV AH,4CH      ; 否则返回DOS
        INT 21H
COED    ENDS
      	END    START 

8.3 串行通信及可编程串行接口芯片 8251A

8.3.1串行通信的基本概念

8.3.2串行通信接口及其标准

8.3.3可编程串行接口芯片 8251A

8.3.4 8251A 初始化编程

8.3.5 8251A 应用举例

8.4 模/数(A/D)与数/模(D/A)转换技术及其接口

8.4.1 D/A转换接口

8.4.2 A/D转换接口

最后

请您阅读文章声明,默认同意该声明
打赏通道
请添加图片描述

原网站

版权声明
本文为[日星月云]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_51625007/article/details/125350479