《微机接口技术与实例》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:李广波,王海,李岗等编著
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2010
  • ISBN:9787118066739
  • 页数:280 页
图书介绍:本书以问答方式系统地回答了微机接口技术中最基本、最实用的问题。列举了微机接口技术中的应用例题,通过学习这些例题,可以全面、系统地掌握微机接口技术的设计、计算、应用和编程方法。内容包括:微机接口概论、并行接口、串行接口、定时器/计数器接口、DMA接口、模拟量接口、中断接口、人机接口和存储器接口。本书概念清晰、内容丰富、题多面广、实用性强。适合用做高等学校计算机专业教学参考书,也可作为电大、自考学员的自学读物,对从事计算机应用系统的科技人员也有很高参考价值。

第1章 微机接口概论 1

1-1 什么是微机接口技术? 1

1-2 接口有哪些主要功能? 1

1-3 如何分析和设计微机接口? 2

1-4 接口处理的信息有哪些? 3

1-5 何谓端口?分哪几类? 3

1-6 I/O端口的编址方式有哪几种? 4

1-7 程序查询传送方式分哪2种? 4

1-8 微机与外设连接时,需要解决哪些问题? 6

1-9 什么是可编程接口? 7

1-10 如何设计接口电路? 7

1-11 什么是I/O接口? 7

1-12 什么是I/O端口? 8

1-13 接口是如何组成的? 8

1-14 接口硬件是如何组成的? 8

1-15 接口软件包括哪些内容? 9

1-16 如何进行接口硬件设计? 9

1-17 如何进行接口软件设计? 9

第2章 并行接口 10

2-1 什么叫并行接口?什么情况下采用并行接口? 10

2-2 并行接口的基本结构、功能和信号有哪些? 10

2-3 8255A可编程并行接口的基本结构是什么? 10

2-4 8255A有哪些主要功能? 11

2-5 8255A有哪几种工作方式? 11

2-6 怎样设置8255A的工作方式控制字? 12

2-7 怎样设置8255A按位置位/复位控制字? 12

2-8 为什么要对8255A进行初始化编程?怎样进行初始化编程? 14

2-9 简单的I/O接口芯片与可编程接口芯片的异同有哪些? 14

2-10 8255A工作于方式0和方式1时的区别有哪些? 14

2-11 根据接口电路功能,I/O接口电路应包括哪些电路单元? 14

2-12 8255A的方式1是如何应用的(实例1)? 14

2-13 8255A的方式1是如何应用的(实例2)? 15

2-14 8255A的方式2是如何应用的(实例)? 16

2-15 8255A的方式0是如何应用的(实例)? 18

2-16 如何编写8255A用于LED显示器接口程序? 20

2-17 怎样编写8255A工作在方式0、方式1和方式2等不同形式的初始化程序? 21

2-18 试编写通过8255A接口控制8个发光二极管亮、暗的应用实例。 22

2-19 试编写利用8255A作为两机并行通信接口的应用实例。 23

2-20 试编写通过8255A开关控制红、绿、黄灯的亮、暗的应用实例。 25

2-21 试编写8255A工作在方式1控制微型打印机的应用实例。 26

2-22 8255A作为中断方式的打印机接口的程序是如何编写的? 27

2-23 试编写8255A工作在方式0和方式1下分别与打印机接口的应用实例。 28

2-24 如何编写8255A作为打印机接口打印出26个小写英文字母的程序? 29

2-25 利用8255A组成键盘扫描接口的程序是怎样编写的? 31

2-26 8255A是如何应用在PC机中的? 32

2-27 如何编写8255A作为连接A/D接口的程序(一)? 34

2-28 如何编写8255A作为连接A/D接口的程序(二)? 35

2-29 ADC0809是如何通过8255A同PC总线接口的(举例)? 35

2-30 8255A工作在方式0时,如果要进行读操作,设8255A的端口地址为80H~83H,试问CPU和8255A分别要进行什么操作? 37

2-31 8255A工作在方式0时,如果要进行写操作,设8255A的端口地址为80H~83H,试问CPU和8255A分别要进行什么操作? 37

2-32 当8255A工作在中断方式2时,CPU是如何区分输入或输出的? 37

2-33 8255A可允许中断请求的工作方式有哪几种? 37

2-34 8255A有PA、PB和PC3个8位并行端口,通常PC端口用做何种信息的端口? 38

2-35 8255A工作在方式1的输入状态时,通过何种信号标识端口已经准备好了向CPU输入的数据? 38

2-36 8255A内部的中断允许信号INTE起什么作用? 38

2-37 根据接口电路功能,I/O接口电路应包括哪些电路单元? 38

2-38 什么是片选? 38

2-39 8255A的3种工作方式,各用于哪种传送方式? 38

2-40 接口电路中多通道和多功能是什么? 39

2-41 8255A工作在方式0时,如果要进行写操作,设8255A的端口地址为60H~63H,CPU与8255A要进行什么操作? 39

2-42 假定8255A的A、B端口工作在方式1,A端口输入,B端口输出。PC2~PC0作为B端口的控制状态信息,PC5~PC3作为A端口的控制状态信息。设端口地址为60H~63H。试叙述方式1的特点是什么,I/O过程怎样? 39

2-43 8255A工作在方式0和方式1有哪些区别? 41

2-44 若8255A的PA端口工作于方式1输入,采用中断控制传送方式,PB端口采用方式0输出,PC端口的各位作为输出,假设控制端口的地址为0363H。初始化是什么样的? 41

2-45 设8255A的A端口和B端口都工作在方式1,采用中断方式来输入数据,C端口的PC6、PC7作为输入,设8255A的地址为60H~63H。如何进行初始化? 41

2-46 何谓控制寄存器,8位控制寄存器可控制多少种状态? 41

2-47 要求通过8255A芯片C端口的PC2位产生一个方脉冲信号,设地址为05A0H~05A6H,问如何设计程序? 42

2-48 设8255A控制端口地址为0083H,现要对C端口的PC7置“1”、PC6置“0”,用什么样程序来实现? 42

2-49 将8255A的C端口接8个发光二极管,其8个负极均接地,用按位置位/复位控制字,使这8个发光二极管依次亮、灭,如何编写程序? 42

2-50 设8255A的地址为0500H~0506H,将A组和B组置成方式0,A端口和C端口作为输入,B端口作为输出,它的初始化程序是什么样的? 43

2-51 设8255A的地址为0500H~0506H,将A组置成方式2,B组置成方式1,B端口作为输出端口,其初始化是什么样的? 43

2-52 设8255A的地址为0500H~0506H,将A组置成方式1,A端口设为输入,PC6和PC7为输出,B组置成方式1,B端口为输入,其初始化程序是什么? 43

2-53 要求在8255A的C端口的PC3上产生一个窄的正脉冲,设8255A的控制端口地址为00EEH,该如何编写程序? 43

2-54 要求在8255A C端口的PC5上产生一个正跳变,控制端口地址为00E6H,如何编写程序? 43

2-55 若使8255A的PC7上发出一个宽度为2ms的正脉冲,已知8255A的地址为54H~57H,如何编写程序段? 44

2-56 什么叫读/写操作? 44

2-57 设8255A的4个端口地址为80H、81H、82H、83H,要使8255A的B端口工作在方式1输出时的INTEB=1,其程序段应是什么? 44

2-58 设8255A的端口地址为80H~83H,下列4种情况下,初始化程序各应是什么? 44

2-59 8255A用查询方式与打印机接口时的电路连接和打印机各信号的时序图如图2-22所示,8255A的端口地址为80H~83H,A端口工作于方式0,试将数据区中变量DATA的8位数据送打印机,程序以RET指令结束,应怎样编写程序? 45

2-60 用8255A作为A/D并行接口,如图2-23所示。设8255A的A端口工作于方式1,为输入端口,C端口的PC7位为输出。A、B、C端口和控制端口地址分别为300H、301H、302H和303H。试述工作过程,并编写初始化程序和启动A/D转换及读取转换数据的程序? 45

2-61 2片8255A芯片在系统中的连接如图2-24所示。当8255A的D0~D7数据线与数据总线低8位相连时,其4个端口的地址是多少?若与数据总线高8位相连时,又是多少? 46

2-62 8255A与打印机的连接如图2-25所示,利用8255A工作在方式0实现打印机接口,将字符A送打印机打印,怎样编写初始化程序和打印程序?如果采用8255A方式1与打印机连接,初始化程序又该如何? 47

2-63 在图2-26中,8255A作为连接A/D转换器的接口,工作于方式0,它的初始化及采集一个数据的程序段是什么样的? 48

2-64 利用8255A作为接口,采用查询传送方式,从输入设备上输入1000B的数据送至存储器中BUFFER缓冲区,程序是什么样的? 48

2-65 8255A工作在方式1时,选通信号应通过什么电路与它相连接? 49

第3章 串行接口 50

3-1 什么是串行接口?什么情况下采用串行接口? 50

3-2 串行接口的基本功能有哪些? 50

3-3 串行通信中2种基本通信方式是什么? 50

3-4 串行通信中有哪3种传送方式? 52

3-5 串行通信中为什么要进行检错和纠错?怎样进行检错和纠错? 52

3-6 常用的可编程串行接口芯片有哪几种? 53

3-7 可编程串行接口芯片INS 8250的基本结构是什么? 53

3-8 INS 8250有哪些主要功能? 54

3-9 如何对8250内部寄存器进行寻址? 55

3-10 8251A有哪些主要功能? 56

3-11 如何对8251A进行初始化编程? 56

3-12 什么是串行通信和并行通信? 57

3-13 什么是波特率?什么是比特率?两者之间有何关系? 57

3-14 8251A用做异步串行通信接口,如果设定波特率因子为16,而发送器与接收器时钟频率为19200Hz,求波特率为多少? 57

3-15 在一个串行传输系统中,每秒可传送10帧数据,每帧数据包含1位起始位、8位数据位和2位终止位。试求波特率和比特率各为多少? 58

3-16 设异步传输时,每个字符对应1位起始位、7位信息位、1位奇偶校验位和1位停止位。如果波特率为9600b/s,问每秒能传输的最大字符数是多少?比特率又是多少? 58

3-17 图3-7所示为异步串行通信传送的1帧数据(含1位奇偶校验位,TTL电平)。问这帧数据的十六进制表示是多少?串行传送的波特率为多少? 58

3-18 设8255A的工作方式寄存器内容为01111011,那么发送的字符格式如何?为了使接收的波特率和发送的波特率分别为400b/s和1400b/s,试求加到RxC和TxC上时钟信号的频率应为多少? 58

3-19 什么是8251A的方式指令字和命令指令字?二者写入的次序应如何安排? 58

3-20 什么是波特率因子?如何计算? 59

3-21 串行通信需要几条信号线?而并行通信又需要几条信号线?试比较二者各应用于哪些场合? 59

3-22 串行通信中“异步”和“同步”是什么意思?哪种方式快?各用在何种场合? 60

3-23 什么是异步、同步通信?它们的格式怎样? 60

3-24 8251A的特性是什么?试编写初始化程序。 61

3-25 如何编写通过8251A采用查询方式接收数据的程序? 62

3-26 如何编写8251A采用查询方式发送数据的初始化程序? 62

3-27 怎样编写8251A采用同步传送方式接收数据初始化程序? 63

3-28 怎样编写8251A实现无条件传送(同步)方式的程序? 63

3-29 怎样编写8251A工作于异步方式时的初始化程序? 63

3-30 8251A工作于异步方式时的初始化编程和数据输入程序段是如何编写的? 64

3-31 如何编写8251A采用异步方式工作,波特率因子为64,字符长度7位,偶校验,2位停止位时的初始化程序? 65

3-32 8251A采用异步方式工作,波特率因子为64,7位数据位,1位停止位,偶校验时的初始化程序如何编写? 65

3-33 8251A采用异步方式工作,波特率因子为16,7位数据位,2位停止位,奇校验时的初始化程序如何编写? 66

3-34 8251A采用异步方式工作,输出字符,波特率因子为64,7位数据位,1位停止位时的初始化程序如何编写? 67

3-35 8251A采用异步方式工作,波特率因子为16,7位数据位,奇校验,2位停止位,输入60个字符的初始化程序是如何编写的? 68

3-36 何谓异步通信?何谓同步通信?两者各有什么优缺点? 68

3-37 8251A作为串行接口如何应用(实例)? 69

3-38 8251A作为CRT的接口如何应用(实例)? 70

3-39 半双工异步通信如何应用(实例)? 71

3-40 怎样利用8251A实现两机远程相互通信的应用(实例)? 72

3-41 8251A的操作命令控制字的格式是什么? 73

3-42 8251A状态控制字的格式是什么? 73

3-43 设8251A与外设采用串行异步方式进行通信,数据传送波特率为4800b/s,传送内容为ASCII码,偶校验,停止位2位,端口地址为00H~01H。若发送器和接收器的时钟频率为307200Hz,CPU与8251A之间采用中断方式进行通信。CPU通过8251A与外设串行通信的接口如图3-22所示。应如何编写初始化和中断服务程序? 74

3-44 8251A有几个寄存器和外部电路有关?一共要几个端口地址?为什么? 76

3-45 8251A内部有哪些功能模块?其中读/写控制逻辑电路的主要功能是什么? 76

3-46 8251A与外设之间有哪些信号? 76

3-47 对8251A进行编程时,应遵守什么约定? 76

3-48 8251A的状态字哪几位和引脚信号有关? 76

3-49 设信息码Z=1010011,偶校验,校验位应是什么?编码结果又是什么? 76

3-50 什么是串行通信?其优点是什么? 76

3-51 什么是并行通信?有何优点? 77

3-52 在对8251A进行编程时,应注意哪些问题? 77

第4章 定时器/计数器接口 78

4-1 定时器/计数器在微机系统中起何作用?怎样实现计数和定时? 78

4-2 8253可编程定时器/计数器的基本结构是什么? 78

4-3 8253有哪些基本功能? 79

4-4 8253的控制字格式是什么? 79

4-5 如何对8253进行读/写操作? 80

4-6 8253每个计数器中3个信号CLK、OUT、GATE的功能是什么? 81

4-7 8253有哪6种工作方式? 82

4-8 8253的6种工作方式下的功能和特点是什么? 82

4-9 定时器/计数器8253的特点是什么? 84

4-10 如何编写8253工作于方式0的初始化程序,GATE有什么作用?画出计数初值修改的波形图。 85

4-11 如何编写8253方式1的初始化程序,GATE有什么作用?画出计数初值修改的波形图。 85

4-12 如何编写8253方式2的初始化程序,GATE有什么作用?画出计数初值修改等的波形图。 86

4-13 如何编写8253工作于方式3的初始化程序,GATE有什么作用?画出初值修改的波形图。 88

4-14 如何编写8253工作方式4的初始化程序?GATE有什么作用?画出初值修改的波形图。 88

4-15 如何编写8253工作于方式5的初始化程序?GATE有什么作用?画出初值修改的波形图。 89

4-16 8253计数器0工作于方式1,计数器1工作于方式2,计数器2工作于方式4时的初始化程序该怎样编写? 90

4-17 如何编写8253A作为定时时钟的程序? 91

4-18 如何编写8253用做定时器的程序? 93

4-19 如何编写8253实现定时中断程序? 95

4-20 如何编写8253用做分频器的程序? 95

4-21 如何编写IBM-PC/XT系统板上8253的3个计数器的应用程序? 96

4-22 如何编写8253监视一个生产流水线的程序? 97

4-23 8253在包装流水线控制中是如何应用的? 99

4-24 8253如何在IBM-PC/XT中应用? 99

4-25 8253在温度控制系统中是如何应用的? 102

4-26 8253在实时控制系统中是如何应用的? 103

4-27 8253的3个计数通道组合是如何应用的? 105

4-28 怎样利用8253计数器0每隔55ms的定时中断,编写在屏幕上产生2条运动直线的应用程序? 106

4-29 如何编写8253计数器0工作于方式3,计数器1工作于方式4,计数器2工作于方式0进行中断传送的程序? 110

4-30 8253如何与CPU接口? 113

4-31 怎样计算8253计数器0工作于方式3、时钟CLK0的频率为1MHz、输出40kHz重复方波时的计数初值? 113

4-32 如何编写8253通道0工作于定时方式时,每20ms向CPU发出1个中断请求信号,而通道1输出频率为2kHz的方波时初始化程序? 114

4-33 8253在写入计数初值时,二进制计数和十进制计数有何区别? 114

4-34 8253产生1μs的负脉冲的初始化程序该怎样编写? 115

4-35 8253对外部事件计数10次的程序该怎样编写? 115

4-36 8253对外部事件计数100次发中断请求的程序该怎样编写? 118

4-37 如何编写采用8253两个计数器串联的方法实现定时控制的程序? 119

4-38 8253产生定时中断,且把服务程序的入口地址送入中断向量表,该怎样编写程序? 120

4-39 如何编写读8253的计数器2的16位计数器当前值的程序? 121

4-40 怎样计算计数初值? 121

4-41 如何编写用8253测量脉冲宽度的程序? 121

4-42 GATE信号在8253的各种工作方式中所起的作用是什么? 122

4-43 8253定时器/计数器启动计数和重新计数的条件是什么? 123

4-44 8253在计数过程中改变计数值的结果会怎样? 123

4-45 学习8253的6种工作方式时应注意什么? 124

4-46 有8253应用电路如图4-42所示。通道0工作于方式2,计数初值为800;通道1工作于方式1,计数初值为400;通道2工作于方式3、计数初值为1000。外接时钟频率为2.5MHz 。它的初始化程序是什么样的? 124

4-47 用8253监视一条生产线,每通过30个工件,扬声器响5s,频率为2000Hz,如图4-43所示。计数器0工作于方式2,采用BCD码计数;计数器1工作于方式3,CLK1接2.5MHz时钟,要求生产2000Hz的方波,BCD码计数;计数器0地址为40H,计数器1地址为41H,控制端口地址为43H,8255A端口地址为80H。应如何编写主程序及中断服务程序? 125

4-48 8253工作时有什么基本规则? 126

4-49 图4-44是IBM-PC机的系统板上使用1片8253的逻辑图,它构成了系统所需的定时逻辑。此时,8253中的3个计数器均作为系统所需的定时信号。每个计数器的CLK引脚的时钟频率均为1.193186MHz,它是外设时钟经二分频后产生的。它的工作原理是什么?8253的初始化程序段应如何编写? 126

4-50 8253的6种工作方式主要区别是什么?如何进行计数?计数初值范围是什么? 127

4-51 试比较8253的方式2与方式3这2种工作方式的异同点有哪些? 127

4-52 试比较8253的方式1与方式5这2种工作方式的异同点有哪些? 128

4-53 试比较8253的方式0与方式4这2种方式的异同点有哪些? 128

4-54 试述8253的6种工作方式在计数到0之后计数器处于何种状态? 128

4-55 设8253的计数器0工作在方式5,计数初值为28H;计数器1工作在方式1,计数初值为2000H;计数器2工作在方式2,计数初值为0204H。3个计数器都按二进制计数,8253端口地址为02C0H~02C6H。初始化程序该如何编写? 128

4-56 设8253计数器0、计数器2和控制端口地址分别为02C0H、02C2H、02C6H,设定计数器0工作在方式3、CLK0为5MHz,要求输出端OUT0为1kHz方波;计数器2用OUT0作计数脉冲,计数值为1000。计数器计到0时向CPU发出中断请求,CPU响应这一中断请求后继续写入计数值1000,开始重新计数,保持每1s向CPU发出1次中断请求。试问8253的初始化程序和硬件连接图各是什么样的? 129

4-57 IBM-PC/XT系统板上有一个8253芯片,它起何种作用? 130

4-58 8253的6种工作方式下的输出波形各是什么样的?都有哪些特点? 132

4-59 8253A在数据采集中是如何得到应用的? 133

4-60 如何利用8253对外界事件进行计数? 134

4-61 8253工作方式1如何得到应用? 135

4-62 8253工作方式2如何得到应用? 136

4-63 定时方法有哪几种? 137

4-64 8253计数器0工作于定时方式下,定时时间为2ms,系统时钟为1MHz,十进制计数,试问该计数器的工作方式控制字和计数初值是什么? 137

4-65 8253利用软件产生一次性中断,最好采用什么方式?若将计数值送到某端口计数寄存器后经过20ms产生一次性中断,设时钟频率CLK为2MHz。应如何编写程序? 137

4-66 设8253的计数器0工作在方式0,8位二进制计数,计数初值为4,4个端口地址分别为00E0H、00E2H、00E4H、00E6H,初始化程序是什么样的? 138

4-67 设8253计数器0工作在方式1,计数初值为3,按二进制计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 138

4-68 设8253计数器2工作在方式2,计数初值为3,按二进制计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 138

4-69 设8253计数器2工作在方式3,计数初值为4,按二进制计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 138

4-70 设8253计数器1工作在方式4,计数初值为3,按二进制计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 138

4-71 设8253计数器0工作在方式5,计数初值为5,按二进制计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 139

4-72 设8253计数器2工作在方式2,计数初值为0304H,按二进制计数,4个端口地址为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 139

4-73 设8253计数器1工作在方式1,计数初值为4000,按BCD码计数,端口地址分别为00E0H、00E2H、00E4H、00E6H,应如何编写初始化程序? 139

第5章 DMA接口 140

5-1 什么是DMA传送方式? 140

5-2 为什么微机系统中有时要采用DMA传送方式? 140

5-3 8237A的DMA控制器的基本结构包括哪些部件? 140

5-4 8237A有哪些功能? 141

5-5 8237A DMA的程序命令控制逻辑是如何工作的? 141

5-6 8237A共有哪些内部寄存器?各起何作用? 142

5-7 如何对8237A进行初始化编程? 145

5-8 设从某外设传送1000H个字节的数据块到起始地址为2000H的内存区域中,采用DMA传送,利用通道1,设通道1当前地址寄存器的地址为02H,当前字节计数器地址为03H。如何编写初始化程序? 145

5-9 8237A有哪几种工作方式? 145

5-10 DMA控制器占用总线控制权的方法有哪几种? 146

5-11 DMA接管总线控制权的过程怎样? 147

5-12 DMAC数据传输的过程是如何进行的? 147

5-13 DMA控制器的特点及功能是什么? 147

5-14 DMA控制方式的特点是什么?使用范围有哪些? 148

5-15 什么叫周期挪用? 148

5-16 如何使用DMA通道实例? 148

5-17 如何编写8237A寄存器的应用实例? 149

5-18 如何编写8237A在IBM-PC/XT微机系统中的应用实例? 151

5-19 DMA从接口往内存传输一个数据块的程序该怎样编写? 155

5-20 DMA从源存储器传送数据到目标存储器的程序该怎样编写? 156

5-21 怎样编写8237ADMA控制器执行存储器之间的数据传送的程序? 158

5-22 怎样编写DMA用于控制软盘与内存间直接传送的数据的初始化程序? 159

5-23 如何编写对动态存储器刷新初始化并启动DMA的程序? 161

5-24 怎样连接8237A(DMAC)与FDC(软盘控制器)? 161

5-25 如何编写8237A从外设向内存传送数据的初始化程序? 162

5-26 8237A可编程DMA控制器的功能、特性和操作步骤是什么? 163

5-27 如何编写DMA传输字节数的设置程序? 163

5-28 如何编写地址设置程序? 164

5-29 如何编写DMA初始化子程序? 164

5-30 怎样对IBM PC/XT的8237A进行初始化、对测试的程序段加注释说明? 165

第6章 模拟量接口 167

6-1 A/D和D/A转换器在微机系统中起什么作用? 167

6-2 A/D转换器芯片与微处理器接口时重点应考虑哪些问题? 167

6-3 D/A转换器芯片与微处理器连接时重点应考虑哪些问题? 167

6-4 A/D转换器有哪几项性能指标? 168

6-5 D/A转换器有哪几项性能指标? 168

6-6 何谓采样保持? 168

6-7 量化是什么意思? 169

6-8 常用的D/A转换器有哪几种? 169

6-9 常用的A/D转换器有哪几种? 169

6-10 如何将D/A转换器的电流输出转换为电压输出? 170

6-11 如何将D/A的单极性输出转换为双极性输出? 171

6-12 A/D转换器ADC0808/0809是如何与8088CPU连接的? 171

6-13 D/A转换器DAC0832是如何与8088CPU连接的? 172

6-14 如何编写A/D转换器的转换程序? 173

6-15 DAC0832芯片中8位输入寄存器和8位DAC寄存器的作用及工作过程是什么? 173

6-16 如何编写D/A转换器的转换程序? 173

6-17 D/A转换器芯片对输出电路有什么要求? 174

6-18 ADC0809通过8255A同8086CPU的接口如图6-9所示。地址译码器给出?的地址范围为80H~83H,?的地址范围为84H~87H,8255A设定为方式0工作,从输入通道IN5输入1个模拟量,如何编写经ADC0809转换后的数字量读入8086CPU的AL的控制程序? 175

6-19 D/A转换器作为波形发生器的原理是什么?如何设计硬件电路? 175

6-20 正锯齿波是如何产生的? 177

6-21 负锯齿波是如何产生的? 177

6-22 如何产生指定输出幅度范围的锯齿波? 177

6-23 三角波是如何产生的? 178

6-24 如何输出指定台阶的阶梯波? 178

6-25 方波是如何产生的? 179

6-26 利用8255A作为CPU与DAC0832之间的接口时波形发生器的硬件电路应如何连接?软件又该如何编写? 179

6-27 D/A转换器和CPU接口中,应考虑哪些问题? 180

6-28 8位D/A转换器DAC0832与8位CPU怎样连接? 180

6-29 12位D/A转换器DAC1210与8位CPU怎样连接? 182

6-30 A/D转换器ADC0809和CPU接口中,应考虑哪些问题? 183

6-31 A/D转换器有哪些控制信号和状态信号? 184

6-32 如何编写8位CPU与10位D/A转换器的接口的程序? 184

6-33 如何设计D/A转换器的接口电路?试编写转换程序? 185

6-34 用中断方式进行数据传送的A/D转换的程序是如何编写的? 186

6-35 12位A/D转换器AD574A与8088CPU接口硬件是如何连接的,软件是怎样设计的? 189

6-36 如何编写A/D转换器的16路数据采集系统的程序? 190

6-37 12位AD574与8088CPU的接口是如何设计的(一)? 191

6-38 12位AD574与8位CPU的接口是如何设计的(二)? 193

6-39 如何设计CPU与AD7522接口的软件? 194

6-40 如何设计CPU与AD561接口的软件? 195

6-41 如何编写DAC0832实现1次D/A转换的程序? 195

6-42 如何编写利用D/A转换器产生锯齿波电压的程序? 196

6-43 如何编写利用D/A转换器产生三角波的程序? 196

6-44 如何编写利用D/A转换器作为波形发生器的程序? 197

6-45 如何编写利用D/A转换器产生周期可调的呈负向增长的锯齿波的程序? 199

6-46 如何编写正向锯齿波和三角波产生的程序? 199

6-47 如何编写输出指定台阶的阶梯波的程序? 200

6-48 如何编写产生指定输出幅度范围的锯齿波的程序? 201

6-49 如何编写DAC0832产生锯齿波的另一种程序? 202

6-50 D/A转换器产生2个不同极性的方波信号,该怎样进行软硬件设计? 202

6-51 怎样编写DAC0832产生0V~5V的锯齿波的程序 204

6-52 DAC1232产生0V~5V的方波,怎样设计DAC1232的接口电路并编程? 205

6-53 如何编写DAC0832工作在单缓冲工作方式下的程序? 206

6-54 如何编写用DAC0832控制绘图仪的程序? 207

6-55 如何编写DAC0832实现1次D/A转换的程序? 208

6-56 用软件驱动X-Y记录仪的100点输出,并控制记录仪的抬、放笔的程序该怎样编写? 208

6-57 简述DAC0832芯片中8位输入寄存器和8位DAC0832寄存器是如何工作的? 209

6-58 如何编写ADC0808与CPU的接口的程序? 209

6-59 如何编写ADC0809与CPU直接连接的程序? 210

6-60 如何编写ADC0809通过并行接口与CPU的连接的程序? 211

6-61 在ADC0809电路(图6-53),若改为中断方式读取转换后的数字量,则电路应做哪些改动?程序应如何编写? 211

6-62 ADC0809的接口如图6-54所示。如何编写启动ADC0809转换的程序段?怎样设计检查ADC0809转换结束的程序段?读出ADC0809转换后的数字量的程序段是什么样的?确定图中所示转换的是哪个模拟通道? 212

6-63 设8086CPU与ADC0809的接口如图6-55所示,试问启动ADC0809 IN7通道的程序段如何编写?查询ADC0809转换是否结束,未结束则继续查询的程序段如何编写?使ADC0809的OE有效的程序段如何编写?若CLK88的重复频率为4kHz,则CLK88的重复周期为多少? 213

6-64 DAC0832的内部结构如图6-56所示,在使用它进行D/A转换时,有哪2种方法可以对数据进行锁存? 214

6-65 图6-58是DAC0832与CPU的接口图,假定DAC0832的端口地址为170H,利用该接口电路进行数字量到模拟量的转换,将指定的DS:1260H单元的数据转换成模拟量,该如何编写程序? 215

6-66 8位不带锁存器的ADC0808应如何与CPU进行连接?设端口地址为40H,数据在DS:2000H单元中,如何编写程序段? 215

6-67 ADC0809与CPU连接时,采用中断方式读取转换结果并把结果存于DS:2000H开始的8个存储单元中,如何编写主程序和中断服务程序? 216

第7章 中断接口 217

7-1 微机系统中数据传送的控制方式有哪几种? 217

7-2 中断控制有什么优点? 218

7-3 8259A中断控制器有哪些功能? 218

7-4 8259A的基本结构是什么? 219

7-5 外设向CPU申请中断,但CPU不予以响应,其原因有哪些? 220

7-6 8086CPU内部有哪些中断源?产生的条件是什么? 220

7-7 接口与外设之间有哪几种信息?它们的作用及传送过程怎样? 220

7-8 查询方式数据传送的工作过程如何? 221

7-9 中断传送方式是怎样进行的? 221

7-10 何谓中断类型号? 221

7-11 何谓中断向量? 221

7-12 何谓中断向量表? 221

7-13 何谓中断过程? 222

7-14 何谓中断响应过程? 222

7-15 何谓中断嵌套? 222

7-16 何谓8259A的自动EOI方式? 222

7-17 何谓8259A的正常EOI方式? 222

7-18 什么是中断优先级?优先级的处理原则是什么?有哪几种解决优先权的方法? 223

7-19 8259A仅有2个端口地址,如何识别4条ICW命令和3条OCW命令? 223

7-20 如何编写8255A作为打印机接口的初始化程序? 223

7-21 如何编写8255A作为中断方式的Centronic360字符打印机的接口程序? 224

7-22 如何编写打印机中断驱动程序? 225

7-23 如何编写查询控制方式的打印驱动程序? 226

7-24 8255A作为打印机与8088CPU的接口,如何编写程序? 229

7-25 8255A工作于方式1输出与打印机相连,并以中断方式传送数据,如何编写程序? 230

7-26 打印机接口电路的工作原理是什么? 232

7-27 LED显示器接口原理是什么?是如何编程的? 232

7-28 8259A有哪几种中断优先管理方式? 236

7-29 8086/8088微机中各类中断的优先级如何划分? 236

7-30 8259A的优先级自动循环方式和特殊循环方式有什么差别? 236

7-31 8259A的特殊屏蔽方式和普通屏蔽方式有什么不同?特殊屏蔽方式一般用在什么场合? 236

7-32 中断服务程序结束时,用“RETF”指令代替“IRET”指令能否返回主程序?这样做存在什么问题? 237

7-33 INTR(可屏蔽中断)与其他中断的区别何在? 237

7-34 什么是中断和中断源?常见的中断源有哪些? 237

7-35 中断主要用途是什么? 237

7-36 CPU响应中断的条件是什么? 238

7-37 什么是程序控制传送方式? 238

7-38 非常驻的中断服务程序编程模式是什么? 238

7-39 常驻的中断服务程序编程模式是什么? 240

7-40 试编写BIOS中检查中断屏蔽寄存器(IMR)的程序 241

7-41 什么是8259A的级联(一)? 241

7-42 什么是8259A的级联(二)? 243

7-43 8259A工作在级联方式时,主、从片的初始化程序是如何编写的? 244

7-44 如何对主、从片8259A进行初始化命令字的设置? 245

第8章 人机接口 247

8-1 人机接口主要包括哪些设备? 247

8-2 键盘分哪2种类型? 247

8-3 键盘接口电路的基本原理是什么? 247

8-4 如何消除键的抖动和预防串键? 248

8-5 怎样识别被按键和产生键码? 249

8-6 矩阵式非编码如何根据行值和列值进行键编码? 249

8-7 非编码键盘的扫描程序是什么? 250

8-8 编码键盘与非编码键盘有何区别? 252

8-9 什么是行扫描法?它的流程图是什么? 252

8-10 图8-7是8×8非编码键盘的连接图,行端口接在8255A的PA端口,列端口接在8255A的PB端口,8255A的端口地址为60H~63H,试利用扫描法把按下键的值放入AX,如何编写扫描程序? 253

8-11 编码键盘接口是什么样的? 254

8-12 PC中BIOS给主机与键盘提供了哪些中断调用功能? 256

8-13 BIOS 16H中的AH=2功能反映了哪些状态字? 256

8-14 PC机中DOS给主机与键盘提供了哪些中断调用功能? 256

8-15 什么是人机交互设备? 257

8-16 人机接口有什么功能? 257

8-17 字符显示接口是如何工作的? 257

8-18 图8-9为8位LED接口电路,试述其工作原理,若要重复显示1个双字的十六进制数码的程序该如何编写? 257

8-19 上例图8-9所示的8位数字显示器接口中,如果PB端口经反相器向8个七段LED显示器送出段末,问十六进制数0~9,A~F七段代码是什么? 260

8-20 字符是怎样显示的? 260

8-21 CRT显示器接口的基本原理是什么? 261

8-22 显示器的DOS调用有哪些功能? 262

8-23 利用DOS中断调用功能显示1个字符G的程序是什么? 262

8-24 利用DOS中断调用功能显示1个字符串“How do you do!”的程序是什么? 262

8-25 打印机接口电路是如何构成的?工作过程和编程方法是什么? 262

8-26 打印机接口的标准是什么样的? 265

8-27 打印机的BIOS中断调用有哪些功能? 267

8-28 要求打印机从键盘接收的数字,如遇有非数字量,则退出,如何编写程序? 267

8-29 打印机的DOS中断调用有哪些功能? 268

8-30 打印机BIOS中断调用中,INT 17H返回的打印机状态字节的含义是什么? 268

第9章 存储器接口 269

9-1 存储器分哪几类? 269

9-2 SRAM6116芯片的特性有哪些?它与CPU如何连接的? 269

9-3 DRAM2164芯片的特性有哪些?它与CPU如何连接的? 270

9-4 什么是SRAM?它的特点是什么? 270

9-5 在对静态存储器进行读/写时,地址信号要分哪几个部分?分别产生什么信号? 270

9-6 试述DRAM有哪些特点?与SRAM相比,有什么优点和缺点? 270

9-7 DRAM刷新过程和正常读/写过程有何区别? 270

9-8 CPU与存储器连接时有哪些方面的要求? 270

9-9 SRAM如何与CPU进行连接? 271

9-10 DRAM如何与CPU进行连接? 271

9-11 EPROM存储器如何与CPU进行连接? 272

9-12 磁盘有哪几种? 272

9-13 什么是软盘驱动器FDD? 272

9-14 软盘接口是什么样的? 272

9-15 硬盘接口是什么样的? 273

9-16 磁盘的主要技术指标是什么? 274

9-17 CPU如何对存储器进行访问? 275

9-18 根据存储器容量计算地址线和数据线的条数? 275

9-19 根据存储器容量计算所需芯片数和片外地址译。 275

9-20 根据地址线位数和数据线位数,计算存储器容量和芯片数目? 276

9-21 存储器读周期和存储器写周期的差别在哪里? 276

9-22 EPROM2732的外特性是什么样的?它与CPU是如何连接的? 276

9-23 下列容量的RAM芯片内的地址线和数据线的条数有多少? 276

9-24 用下列芯片构成存储系统,有20位地址线,全译码方式,各需要多少个RAM芯片?需要多少位地址作为片外地址译码器的输入? 277

9-25 设有1个具有14位地址和8位字长的存储器,问该存储器容量有多大?如果存储器由1KB×1位静态存储器组成,需要多少芯片?多少位地址作芯片选择? 277

9-26 现有46B×8位的RAM和ROM存储器芯片各1片,其地址线连接方法如图9-5所示,试问在正常工作情况下,ROM和RAM芯片各自所占用的地址空间有多大? 277

9-27 某微机CPU芯片与74LS138译码器、EPROM2716和RAM2114连接如图9-6所示,2716 1#、2716 2#、芯片组Ⅰ和芯片组Ⅱ的地址范围为多少? 278

9-28 有1个16KB×16位的存储器,由1KB×4位的动态RAM芯片(芯片内是64×64矩阵结构)构成,采用异步刷新方式,单元刷新间隔时间不超过2ms,问:共需要多少片RAM芯片?刷新信号周期是多少?若采用集中刷新方式,存储器刷新1遍最少要用多少读/写周期? 278

9-29 什么是存储周期? 278

9-30 采用虚拟存储器的目的是什么? 279

9-31 某容量为8KB的RAM,首地址为2000H,其末地址为多少? 279

9-32 某存储器为2KB,末地址为2FFFH,其首地址为多少? 279

9-33 某微机系统,操作系统保存在软盘上,内存应采用何种存储器? 279

9-34 CPU通过指令访问主存储器所用的程序地址是什么地址? 279

9-35 某微机字长是16位,它的存储容量是1MB,按字编址,它的寻址范围是多少? 279

9-36 某微机字长是32位,它的存储容量是64KB,按字编址,它的寻址范围是多少? 279

参考文献 280