资讯详情

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

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

  • 前言
  • 第八章可编程接口芯片及应用
    • 8.1 可编程定时器/计数器芯片 8253/8254
      • 8.1.1 8253的结构和功能
      • 8.1.2 8253的编程
      • 8.1.3 8253的工作方式
      • 8.1.4 8254与8253的区别
      • 8.1.5 8253应用举例
    • 8.2 并行编程接口芯片 8255A
      • 8.2.1 8255A引脚和结构
      • 8.2.2 8255A工作方法和控制字
      • 8.2.3 各种工作方法的功能
      • 8.2.4 8255A的应用举例
    • 8.3 串行通信和可编程串行接口芯片 8251A
      • 8.3.1串行通信的基本概念
      • 8.3.2串行通信接口及其标准
      • 8.3.33可编程串行接口芯片 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转换接口
  • 最后

前言

请阅读文章声明,默认同意该声明

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

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

定时功能应用于微机系统的许多地方。例如,第六章介绍DRAM,该系统使用定时器触发启动动态刷新。过程控制领域需要大量的计数功能。定时和计数都是通过时钟脉冲计数来完成的。当脉冲计数标称方波时,定时可以完成。

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

8.1.1 8253的结构和功能

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

24引脚双列直插芯片 三个独立的16位计数器通道 每个计数器通道有6种工作方法 按二进制或十进制(BCD码)计数

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

8253端口地址及内部操作

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

8.1.2 8253的编程

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

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

1.确认端口地址

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

2.确定工作方法和计数初值

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

3.确定控制字

初始化程序

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

  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

如果门控失效,将暂停计数。(门控有效后继续计数)

Gate计数将暂停失效(有效后重新开始计数)

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

计数不能自动重复,每次启动计数都要重新写入计数值,因此称为软件触发选通

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

8.1.4 8254与8253的区别

8.1.5 8253应用举例

】8253计数器2产生频率为40KHZ的方波,设8253的端口地址为0040H~0043H,已知时钟端CLK,输入信号的频率为2MHz。试设计8253与8088总线的接口电路并编写产生方波的程序。 8253与8088总线的接口电路如图8.12所示。

为了使计数器2产生方波,应使其工作于方式3,输入的2MHz的CLK,时钟信号进行50次分频后可在OUT2端输出频率为40kHz的方波,因此,对应的控制字应为10010111B,计数初值为十进制数50。程序如下所示:

MOV AL, 10010111B;对计数器2送控制字
MOV DX, 0043H
OUT DX, AL
MOV AL, 50H ;送计数初值50
MOV DX,0042H
OUT DX, AL

 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的引脚与结构

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

  • 端口A、B、C
  • A组控制、B组控制
  • 数据总线缓冲器
  • 读、写控制逻辑

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

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

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

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

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,输入。 相应的方式选择控制字应为

设在系统中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 各种工作方式的功能

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

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

  • 也适用于查询方式传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。

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

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

8.2.4 8255A的应用举例

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

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

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

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

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转换接口

最后

请您阅读文章声明,默认同意该声明

标签: 26针db直插连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台