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

  • 前言
  • 第8章可编程接口芯片及应用
    • 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.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转换接口
  • 最后

前言

以下内容源自微型计算机原理(第四版)王忠民主编
来源于教学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, 10000000BOUT  43H,ALIN    AL,42H     ;读低8位MOV  CL,ALIN    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应用举例

例8.2】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

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 LEDtbmov    al,1                   ;AL←要显示的数字xlat                        ;换码:AL←DS:[BX+AL]mov    dx,    portAout      dx,    al            ;输出显示

8255与外设连线图


8255与8088CPU连线图


DATA  SEGMENT
TABLE    DB   0C0H,0F9H, 0A4H,0B0H, 99H,92H,82H,0F8HDB   80H,90H,88H,83H,0C6H,0A1H,86H, 8EH
DATA  ENDSCODE  SEGMENTASSUME  CS: CODE,DS: DATA
START:MOV AX, DATAMOV DS,AXMOV  AL,91H  ;设置方式选择控制字,A口工作于方式0输入, B 口工作于方式0输出OUT   63H,AL
NEXT:   IN  AL, 60HAND AL,0FH                               ; 取A口低4位MOV BX,OFFSET TABLE        XLATOUT 61H,AL                                     ; 显示码输出MOV AH,1             ;判断是否有键按下INT 16H                   ; JZ  NEXT                 ; 若无,则继续读端口AMOV AH,4CH      ; 否则返回DOSINT 21H
COED    ENDSEND    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转换接口

最后

请您阅读文章声明,默认同意该声明
打赏通道

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

  1. 微型计算机接口技术425页,微机原理与接口技术(修订版高等院校电工电子技术类课程十二五规划教材)...

    导语 内容提要 谢四连.董辉.许岳兵主编的<微机原理与接口技术(修订版)>内容分为两部分:第一部分全面系统地介绍了Intel系列微处理器的工作原理.指令系统以及汇编语言程序设计方法:第二部 ...

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

    8.1 可编程定时器/计数器芯片8253/8254 定时信号的产生 1.软件定时 方法:根据所需时间常数设计一个延迟子程序. 优点:节省硬件 缺点:执行延时程序期间CPU一直被占用,降低了CPU效率, ...

  3. 典型可编程接口芯片及应用

    可编程中断控制器芯片8259 https://blog.csdn.net/longintchar/article/details/79439466?utm_medium=distribute.pc_r ...

  4. 微型计算机接口与技术期末,微机原理与接口技术期末考试试题及答案.pdf

    微机原理与接口技术期末考试题库 1. 微机系统的硬件由哪几部分组成? 答:三部分:微型计算机 (微处理器,存储器,I/0接口,系统总线),外围设 备,电源. 2. 什么是微机的总线,分为哪三组? 答: ...

  5. 哈尔滨工程大学微型计算机原理与接口技术,哈尔滨工程大学微机原理与接口技术第2-3讲.ppt...

    哈尔滨工程大学微机原理与接口技术第2-3讲.ppt (28页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 第1章 计算机接口基本知识1. ...

  6. 微型计算机原理和接口技术试卷,《微机原理与接口技术》期末考试试卷(A卷)

    12/13学年第二学期末考试试题(A卷) 课程名称微机原理与接口技术 使用班级: 一.填空题(每空1分,共20分) 1.系统总线由(数据总线).(地址总线).(控制总线)三类传输线组成. 2.8位二进 ...

  7. 长安大学微型计算机原理与接口技术答案,长安大学微机原理与接口技术A卷答案...

    <微机原理与接口技术>试卷A 评分标准及参考答案 一.每空1分,共20分 1.01111011 10000011 2.F7.DCH 001001000111.10000110 BCD 3. ...

  8. 微型计算机接口期末,最新大学微机原理与接口技术期末试题及答案

    最新大学微机原理与接口技术期末试题及答案 MOV AH, AL AND AL, 0FH CMP AL, 0AH JB G1 ADD AL, 7 G1: ADD AL, 30H MOV CL, 4 AN ...

  9. 长安大学微型计算机原理与接口技术答案,长安大学微机原理与接口技术B卷答案...

    <微机原理与接口技术>试卷B评分标准及参考答案 一.一.每空1分,共20分 1.117.D99H 427.6631Q 000100010111.110110011001B 0010 011 ...

最新文章

  1. ORB-SLAM2代码/流程详解
  2. 用计算机创造的音乐,计算机音乐创作(普通组)
  3. 图片合成gif_使用在线图片工具处理静态和动态图片的技巧
  4. 新装的linux系统,用SSH连接出现乱码怎么办?附改名虚拟机文件方法
  5. CSS属性(display)
  6. HDOJ 5087 Revenge of LIS II DP
  7. Atitit . 编程模型的变革总结
  8. 关于引用mshtml的问题
  9. 唐纳德 高德纳给年轻人的建议 Donald Knuth - My advice to young people
  10. 第一章 C语言郝斌笔记
  11. mySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据
  12. 使用python中的matplotlib绘制路径图
  13. alibaba人一起写过的技术丛书
  14. Java中在指定范围内生成整型、长整型、双精度随机数流
  15. 洛谷P1796 汤姆斯的天堂梦【DP-数字三角形模型】【橙】
  16. 一加手机怎么root权限_一加手机OnePlus卡刷获取root权限图文教程
  17. 《被讨厌的勇气》——第四夜阅读摘记
  18. 江湖救急1—win10系统读不出u盘
  19. html判断按键状态,javascript判断鼠标按键和键盘按键的方法
  20. 通联支付以及第三方支付所需要注意的

热门文章

  1. 原生alert确定取消按钮
  2. 计算机基础-不等式的概念及解法
  3. zigbee 的BDB
  4. 基于kurento-one2many二次开发实现多房间直播+共享桌面+切换摄像头+聊天互动
  5. Matlab解方程组solve
  6. Java接口方法的三种类型
  7. 蓝桥杯基础练习 字母图形
  8. 晨间日记――为梦 想而设的仪式(一)
  9. 通用高校排课算法研究----前言
  10. 编译barnyard2-2.1.14出现的问题