第九章 微机接口 芯片及应用
Post on 12-Jan-2016
191 Views
Preview:
DESCRIPTION
TRANSCRIPT
微机原理及应用技术微机原理及应用技术
第九章 微机接口芯片及应用
课时数: 10 - 11
微机原理及应用技术微机原理及应用技术
第 九 章 主 要 内 容
一、可编程通用接口芯片的应用方法
二、可编程并行接口芯片8255A (P408)
三、可编程串行接口芯片8250/16550 (P430)
四、可编程定时/计数接口芯片8254/8253 (P440)
五、可编程中断控制器8259A (P459)
六、 A/D 和 D/A 接口芯片 (P485)
微机原理及应用技术微机原理及应用技术
第 九 章 习 题 ( P514 )
5 、 6 、 10 、 17 、 19 、 34
较难的习题(可只做框图或流程图): 7 、 12 、 35
思考: 1 、 2 、 3 、 4 、 8 、 13 、14 、 18 、 22 、 31 、 32
2005.6.82005.6.8 交作业交作业
微机原理及应用技术微机原理及应用技术
第 九 章 结 束
微机原理及应用技术微机原理及应用技术
可编程接口芯片的开发应用 了解芯片的基本性能(功能)和内部结构; 掌握芯片的外部连接特性,以进行硬件设计。一般将引 脚分为面向 CPU 和面向外设的两部分。注意端口地
址的确定方法(面向 CPU 一边); 掌握芯片各控制字的含义和设置方法,能根据系统设计
要求确定各控制字值; CPU 在初始化程序中按要求发送各控制字到相应端口
(寄存器)以确定芯片的工作方式和状态; CPU 在工作过程中可以通过读状态端口检查接口芯片的
工作状态,并可重新设置和发送某些控制字值,以改变芯片的工作方式;
微机原理及应用技术微机原理及应用技术
初始化时用户只需确定端口地址及控制字,并通过送出控制字确定 8255A 各端口的工作方式;
数据传送过程中,用户通过读 / 写端口 A 、 B 、 C 实现数据收 / 发。 注意 C 口的位操作方式是通过写控制字来实现的。
可编程通用并行接口芯片可编程通用并行接口芯片 Intel8255 Intel8255 ( P408 )
最简单的并行接口可由一些锁存器和(或)总线缓冲器 / 驱动器组成,只能完成 CPU 与外设的无条件数据传送; 而 8255 可完成无条件和查询式、中断控制式数据传送,其具体的工作方式由用户程序确定。 8255的内部结构及基本功能( P411 )
8255的外接特性及端口地址( P409 )
8255 的三种工作方式( P414 )及控制字( P412 )
8255 的程控技术( P412 )
微机原理及应用技术微机原理及应用技术
82558255 的内部结的内部结构及基本功能构及基本功能( P41
1 )
读 / 写逻辑控
制
A组控制
B组控制
A8bit PA7~PA0
C 上半部4bit
C 下半部4bit
PC7~PC4
PC3~PC0
B8bit PB7~PB0
CPU 接口 内部逻辑 外设接口
三个独立的 8 位数据端口;C 口的其它用法:
用作两个独立的 4 位数据端口;用作状态或控制口,按位置位或复位;为 A 、 B 口提供所需的各种联络信号;
具有三种工作方式;
数据总线缓冲
器
D7~D0
RESET
RDWRCSA0A1
微机原理及应用技术微机原理及应用技术
为保证 8255A 和 8086 的数据交换正确,可将 8255 与 8086CPU 的低 8 位数据线相连,注意这时 8255A 的 4 个端口都应该分配偶地址,即 8086 的 A2 、 A1 分别接 8255 的 A1 、A0 。
82558255 的外部特性及端口地址的确定的外部特性及端口地址的确定( P409 )
PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC7
D0D1D2D3D4D5D6D7
34 433 332 231 130 4029 3928 3827 37
1819
9 208 216 225 2336 2435 25
1415161713
26 127 11
10
8
2
5
5
A
面向CPU
面向外设
操 作CSA0A1
0 0
0 1
1 0
1 1
读 / 写端口 A
读 / 写端口 B
读 / 写端口 C
写控制寄存器数据总线三态1X X
0
0
0
0
A0A1
/CS/RD
/WRRST
VCCGND
微机原理及应用技术微机原理及应用技术82558255 的工作方式的工作方式 00 -基本的输入或输出-基本的输入或输出( P414 )
一、输入时序( IN AL , PORT ) ( P414 )
tRD
数据有效
tDF
tRRRD
D7 ~0
tRAtAR
CS, A1, A0
tHRtIR
外设输入数据 数据有效
二、输出时序( OUT PORT , AL ) 见 P415
微机原理及应用技术微机原理及应用技术
三、数据传输特点1. 最多可提供三个 8 位端口或两个 8 位端口+两个 4 位端口2. 所有端口均为单向传输(即只能做输入或输出)3. 可实现无条件或自定义联络信号( C 口)的查询传送
CPU
8255 打印机并行接口 (P297)
(2~9)
(1)
(11)
(16)
PA0~7
PC7
PC2
地
D0~7
STB
BUSY
地
DB
P416 例 9.5
微机原理及应用技术微机原理及应用技术
82558255 的工作方式的工作方式 11 -选通的输入或输出-选通的输入或输出( P417 )
PA7~PA0
PC4PC5
PC3
INTEA
与门IBFA
STBA
INTRARD
D7~D0
A 口方式 1 输入时相应的联络信
号
B 口方式 1 输入时相应的联络信号
IBFB
STBB
INTRB
PB7~PB0
PC2PC1
PC0
INTEB
与门RD
D7~D0
一、输入接口信号的定义与时序 ( P417 )
微机原理及应用技术微机原理及应用技术
PB7~PB0PA7~PA0
STB
IBF
INTR
RD
外设送来数据外设送来数据
②②
⑥⑥
当当 INTE=1INTE=1 时时
①①
⑤⑤
③③
④④
⑦⑦
⑧⑧
⑧⑧
中断服务程序中 CPU 从 A 口或 B 口读取外设输入的数据
微机原理及应用技术微机原理及应用技术
A 口方式 1 输出时相应的联络信号
B 口方式 1 输出时相应的联络信号
PA7~PA0
PC7
PC6
PC3
INTEA
与门
ACKA
OBFA
INTRAWR
D7~D0 PB7~PB
0
PC1
PC2
PC0
INTEB
与门
ACKB
OBFB
INTRBWR
D7~D0
二、输出接口信号的定义与时序 ( P419 )
微机原理及应用技术微机原理及应用技术
①
送往外设的数据写入相应端口
WR
OBF
INTR
ACK
② ③
当 INTE=1 时
PB7~PB0PA7~PA0
中断服务程序中 CPU 向 A 口或 B 口写入输出给外设的数据
②
④ ⑤
微机原理及应用技术微机原理及应用技术
三、数据传输特点1. 最多可提供两个 8 位端口(组合方式见图 9-13 P421
)2. 所有端口均为单向传输(即只能做输入或输出)3. 可实现固定联络信号( C 口)的查询传送或中断传送
,未定义的 C 口信号线可自行定义使用。
CPU
8255 打印机并行接口PA0~7
PC7
PC6
D0~7
STBDB
PC3
ACKOBF
INTR
PC0
P416 例 9.7
微机原理及应用技术微机原理及应用技术
数据传输特点:1.A 为双向端口, B 为单向端口, C 口组合方式见 P425 表 9-7 2. 可实现固定联络信号( C 口)的查询传送或中断传送
,未定义的 C 口信号线可自行定义使用。
82558255 的工作方式的工作方式 22 -双向输入、输出-双向输入、输出(( P423P423 ))
PA7~PA0
PC6PC7
ACKAOBFA
D7~D0
RD
WR
PC4PC5
STBAIBFA
INTEA1
PC4
INTEA2
PC6与
门
PC3
INTRA
或门
与
门
中断服务程序中 CPU 可通过查询 IBF 和 OBF 信号来确定此次中断是输入还是输出
操作
微机原理及应用技术微机原理及应用技术
8255 8255 的工作方式控制字的工作方式控制字(( P412P412 ))
1D7 D6 D5 D4 D3 D2 D1 D0
0 输出1 输入PC3~PC0
B 口 0 输出1 输入
0 方式 01 方式 1
B 口工作方式
PC7~PC4 0 输出1 输入
A 口 0 输出1 输入
特征位, D7=1 表示是方式控制字
A 口工作方式00 方式 001 方式 11x 方式 2
微机原理及应用技术微机原理及应用技术
0D7 D6 D5 D4 D3 D2 D1 D0
0 复位1 置位设置内容
特征位, D7=0表示是 C 口按位置位 / 复位控制字
无意义 选择操作位
82558255 的的 CC 口置口置 // 复位控制字复位控制字(( P413P413 ))
D3 D2 D1 C 端口位0 0 0 PC00 0 1 PC10 1 0 PC20 1 1 PC31 0 0 PC41 0 1 PC51 1 0 PC61 1 1 PC7
微机原理及应用技术微机原理及应用技术
D7 D6 D5 D4 D3 D2 D1 D0控制字
例 1 :某 8255A 占用端口地址范围 0F0~0F3H 1) 确定各端口地址。 2) 编程设置 8255A : A 口方式 0 输入, B 口方式 0 输出 PC7~PC4 输出, PC3~PC0 输入
结论: A 口地址 0F0H , B 口地 址 0F1H , C 口地址0F2H ,控制口地址为 0F3 H ;
控制字 1001 0001B ,即91H
MOV AL,91HOUT 0F3H, AL
解:
A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 1 0 1 1 1 1 0 0 1 1
A1 A0CS
地址0F0H
0F1H0F2H
0F3H
0 0
0 1
1 01 1
1
特征位
0 0
A 口方式 0
1
A 口输入
0
PC7~PC4
输出
0
B 口方式 0
0
B 口输出
1
PC3~PC0
输入
微机原理及应用技术微机原理及应用技术
例例 22 :设:设 82558255 的的 AA 口工作于方式口工作于方式 11 输入,输入, BB 口口工作于方式工作于方式 00 输出,若允许输出,若允许 AA 口产生中断,试口产生中断,试编程初始化该编程初始化该 8255(8255( 其端口地址为其端口地址为 60H ~ 63H )60H ~ 63H ) 。。
MOV AL, 0B0H MOV AL, 0B0H ;; 1011x00X1011x00X
OUT OUT 63H63H, AL , AL ; ; 写方式控制字写方式控制字MOV AL, 09H MOV AL, 09H ;; 0XXX010010XXX01001
OUT OUT 63H63H, AL, AL ; ; 写置写置 // 复位控制字,置复位控制字,置 INTEAINTEA == 11
b7 b6 b5 b4 b3 b2 b1 b0
1 0 1 1 x 0 0 x
b7 b6 b5 b4 b3 b2 b1 b0
0 x x x 1 0 0 1C 口置 / 复位控制字
工作方式控制字方式控制字
微机原理及应用技术微机原理及应用技术
例 1 :利用 8255 的 PC6 产生方波,经滤波和功放后,送到扬声器以发出不同频率的声音。( P414 )
MOV DX , 306H ; 8255 控制口MOV AL , 00001101B ;置 PC6=1OUT DX , ALCALL DELAY ;高电平维持时间MOV AL , 00001100H ;置 PC6=0OUT DX , ALCALL DELAY ;低电平维持时间
其中 DELAY 为延时子程序,改变延时时间,即可改变喇叭发声的频率。
微机原理及应用技术微机原理及应用技术例 2 :现有为某应用系统配置的一个并行打印机接口,采用查询方式通过接口把缓冲区中的 100 个 ASCII 字符打印出来。 ( P416 )
STB
MOV DX , 306H MOV AL , 10000001B OUT DX , AL ;发方式控制字 MOV AL , 00001111B OUT DX , AL ;使数据选通无效: PC7 置高, /STB=1 MOV SI , OFFSET BUF MOV CX , 64H MOV DX , 304H IN AL , DX AND AL , 04H JNZ LL ; PC2 ( BUSY ) =1 表示打印机忙, CPU等待 MOV DX , 300H LODSB OUT DX , AL ;发数据至 A 口 MOV DX , 306H MOV AL , 00001110B OUT DX , AL CALL DELAY MOV AL , 00001111B OUT DX , AL ;使数据选通信号出现有效负脉冲 LOOP LL
初始化
查询发数据
发选通
LL :
微机原理及应用技术微机原理及应用技术例 3 :编程实现中断控制方式下工作的打印机接口。( P422 )MAIN :…… ;内务操作 …… ;保存旧中断向量,设置新
中断向量 MOV AL , 0A0H OUT 0C6H , AL ;发方式控制字 MOV AL , 01H OUT 0C6H , AL ;使选通无效, PC0=1 MOV AL , 0DH OUT 0C6H , AL ;允许 8255 的 A 口中断( PC6 =
1 ) STI ;开总中断 MOV CNT,0 ;发送计数器清 0
WAT: LOOP WAT ;等待中断RINT : MOV SI,OFFSET TAB ADD SI,CNT MOV AL , [SI] ;取待打印的字符数据 OUT 0C0H , AL ;输出字符 MOV AL , 00H OUT 0C6H , AL CALL DELAY INC AL OUT 0C6H , AL ;产生有效的选通信号负脉冲( PC
0 ) INC CNT ;发送计数器加 1
IRET
主程序完成初始化
中断服务子程序完成数据发送
微机原理及应用技术微机原理及应用技术例 4 :编程实现矩阵扫描键盘和动态数码显示屏的控制。( P426 )
第 1 位
1k4
+5V
0 1 2 3
4 5 6 7
8 9 A B
C D E F
第 0行
第 1行
第 2行
第 3行
第 3列 第 2列
第 1列 +5V 第 0列
PC4
PC6
PC5
PC7
PC3
PC2
PC1
PCn
1k 位驱动
第 8位 第 7位 第 6位
第 5位 第 4位
第 3位
第 2位
第 1位
8255并行接口
阳极
第 0位
100 a
b
c
d
e
f
g
dp
MC1413
第 2 位
第 3 位
第 4 位
第 5 位
第 6 位
第 7 位
PB0~PB7
PA0~PA7
OUT
IN
OUT
OUT
微机原理及应用技术微机原理及应用技术
例 5 :编程实现 8255 控制的 A/D/A 接口。( P429 )
1. 初始化 8255
A 方式 1 , B 方式 0
( 1~ 3 行)2.启动 AD ( PC7 )( 4~ 8 行)3. 查询 IBF ( PC5 )( 9~ 12 行)4. 收 AD 数据( 13 、 14 行)5. 发数据到 DA
( 15 、 16 行)D/A
微机原理及应用技术微机原理及应用技术
可编程通用串行接口芯片可编程通用串行接口芯片 Intel8250 Intel8250 ( P430 )
初始化时需要发送各种控制字以确定波特率、数据格式及中 断允许情况; 数据传送时需要读取各种状态字以确定当前应做的操作;
8250的内部结构( P432 )
8250的外部特性及端口地址( P430 )
8250的初始化及应用编程( P436 )
8250 是一种常用的可编程通用异步串行通信接口芯片(UART , Universal Asynchronous Receiver Transmitter) 其主要特点包括:波特率可程控、数据格式可程控、可与Modem 通信并报告其状态、可进行中断优先权控制、具有故障报告等内部诊断功能。
微机原理及应用技术微机原理及应用技术
82508250 的内部结构的内部结构( P432 )
制控及冲缓线总 接收缓冲器
线路控制寄存器
分频寄存器(低字节)
分频寄存器(高字节)
线路状态寄存器
发送保持寄存器
控制寄存器Modem
状态寄存器Modem
中断允许寄存器
中断标志寄存器
线总据数部内
接收移位寄存器
接收同步控制
发送移位寄存器
发送同步控制
波特率发生器
中断控制逻辑
控制逻辑Modem 电平转换
微机原理及应用技术微机原理及应用技术
82508250 的外部特性的外部特性及端口地址的确定及端口地址的确定
( P430 )
与 CPU的连接
与 Modem 的连接
线路控制寄存器的 D7 位:寻址识别位 DLAB
0
微机原理及应用技术微机原理及应用技术
发送发送 LCRLCR 控制字设置数据帧格式控制字设置数据帧格式(( P436P436 例例 9.19.100 ))
D7D7 D6D6 D5D5 D4D4 D3D3 D2D2 D1D1 D0D0
xx0 :校验位无效001 :奇校验011 :偶校验101 :校验位恒 0111 :校验位恒 1
校验方式校验方式 数据帧长数据帧长
0000 :: 55位位0101 :: 66位位1010 :: 77位位1111 :: 88位位
间断设置间断设置寻址识别寻址识别 停止位长停止位长
0 :其它寄存器1 :分频寄存器
00 :: 11 位位11 :: 1.51.5 或或 22位位
1-1-强制间断(无数据时为空号逻辑强制间断(无数据时为空号逻辑 00 ))0-0- 正常(无数据时为传号逻辑正常(无数据时为传号逻辑 11 ))
微机原理及应用技术微机原理及应用技术
发送分频控制字设置波特率发送分频控制字设置波特率(( P436P436 例例 9.119.11 ))
波特率 分频器DLM ( H )
分频器DLL ( L ) 波特率 分频器
DLM ( H )分频器
DLL ( L )50 09H 00H 3 600 00H 20H
75 06H 00H 4 800 00H 18H
110 04H 17H 7 200 00H 10H
150 03H 00H 9 600 00H 0CH
300 01H 80H 11 520 00H 0AH
600 00H C0H 19 200 00H 06H
1 200 00H 60H 23 040 00H 05H
1 800 00H 40H 57 600 00H 02H
2 400 00H 30H 115 200 00H 01HMOV AL , 10000000BMOV DX , 3FBHOUT DX , AL ;通知 8250 后面将设置波
特率MOV AL , 0CHMOV DX , 3F8HOUT DX , AL ;写入分频值低位MOV AL , 00HINC DXOUT DX , AL ;写入分频值高位
微机原理及应用技术微机原理及应用技术
发送中断允许控制字设置中断种类发送中断允许控制字设置中断种类(( P436P436 例例 9.129.12 ))
微机原理及应用技术微机原理及应用技术
接收接收 // 发送程序发送程序(( P438P438 例例 9.149.14 ))MOVMOV DXDX ,, 3FDH3FDHININ ALAL ,, DX DX ;读线路状态寄存器(;读线路状态寄存器( P434P434 图图 9-259-25 ))TESTTEST ALAL ,, 1EH1EH ,是否出错,是否出错 ??JNZJNZ ERRERR ;是,转错误处理;是,转错误处理TESTTEST ALAL ,, 01H01H ;是否“接收数据准备好”?;是否“接收数据准备好”?JNZJNZ RECERECE ;是,转接收;是,转接收TESTTEST ALAL ,, 20H20H ;是否“发送数据缓冲器空”;是否“发送数据缓冲器空” ??JNZJNZ TRANTRAN ;是,转发送;是,转发送…………
RECE:RECE: MOVMOV DX,DX,3F8H3F8HININ AL, DXAL, DX………… ;处理接收的数据;处理接收的数据
TRAN:TRAN: MOVMOV DX,DX,3F8H3F8H………… ;准备待发送的数据;准备待发送的数据OUTOUT DX,ALDX,AL…………
ERR:ERR: …………
PC 机中建议使用 BIOS 中断调用对串口进行操作 (P439)(P439)
微机原理及应用技术微机原理及应用技术
初始化: 8253没有复位端,开机后必须进行软件初始化。另外,在改变计数器工作方式时也需要对 8253 进行初始化设置。
必须先写入控制字,再设置计数初值。在设置计数初值时,要根据控制字中内容确定是只写高 8 位,
只写低 8 位,还是先低后高写入 16 位。 读计数值:
CPU 应先送计数器锁存命令,再用输入指令从输出锁存器中获取计数值。
读取计数值时应根据控制字内容确定是只读高 8 位,只读低8 位,还是先低后高读出 16 位。
可编程通用可编程通用定时定时//计数计数接口芯片接口芯片 Intel8253Intel8253 8253的内部结构及基本功能 (P442)
8253的外接特性及端口地址 (P441)
8253的控制字及工作方式 (P444)
8253 的程控技术
微机原理及应用技术微机原理及应用技术
定时定时 // 计数功能的实现计数功能的实现 定时功能和计数功能均可通过计数器来实现:若计数器输入为 标准时钟脉冲,则通过计数可得到时间间隔,实现定时功
能;若计数器的输入为需计数的信号,则计数值就是一定时间内信号(脉冲)出现的次数,即实现计数功能。
定时 / 计数实现方式:软件、硬件。定时 / 计数器
控制寄存器
状态寄存器
数据缓冲
读 /写控制逻辑
计数初值寄存器
当前计数值输出寄存器
计数器
计数控制
数据总线
RESETREADY
中断申请
CLK
GATE
OUT
面向外设
面向CPU
RDWR
CSA0
微机原理及应用技术微机原理及应用技术
8253 的内部结构及基本功能 (P442)
控制寄存
器
CRH CRL计数初值
寄存器
OLH OLL输出锁
存器
CEH CEL计数执行部件
16 位减法计数器 0
CLK0
GATE0
OUT0
计 数 器 1
计 数 器 2
CLK1GATE1OUT1
CLK2GATE2OUT2
数据总线缓冲
器
D7 ~D0
读 写逻 辑电 路
RD
WRA0A1CS
CPU 接口 计数通道
微机原理及应用技术微机原理及应用技术
82538253 的外接特性及端口地址的确定的外接特性及端口地址的确定 (P441)
87 96 115 1043 2 15 1 14 22 1323 19 20 1821 16 24 1712
8253
D0D1D2D3D4D5D6D7
/WR/RD
A0A1/CS
VCCGND
CLK0
GATE0OUT0
CLK1GATE1OUT1
CLK2GATE2
OUT2
面向CPU
面向外设
数据总线三态1XX
写控制寄存器011
读 / 写计数器 2001
读 / 写计数器 1010
读 / 写计数器 0000
操 作A0A1 CS
微机原理及应用技术微机原理及应用技术
二进制计数时最小值为二进制计数时最小值为 0000001H1H ,最大值为,最大值为 10000H(65535)10000H(65535)
十进制(十进制( BCDBCD码)计数时码)计数时最小值为最小值为 00010001 ,最大值为,最大值为 1000010000 。。
82538253 的控制字及工作方式的控制字及工作方式 (P444)
D7 D6 D5 D4 D3 D2 D1 D0
D0=0 ,采用二进制计数;D0=1 ,采用二 - 十进制计数;
D3D2D1=000 ,计数器工作在方式0
D3D2D1=001 ,计数器工作在方式1 D3D2D1=010 ,计数器工作在方式2 D3D2D1=011 ,计数器工作在方式3 D3D2D1=1X0 ,计数器工作在方式4 D3D2D1=1X1 ,计数器工作在方式
5
D5D4=00 ,将当前计数值锁存至输出寄存器中以供 CPU 读;D5D4=01 ,只读 / 写计数器低 8 位;D5D4=10 ,只读 / 写计数器高 8 位;D5D4=11 ,先读 / 写计数器低 8 位,再读 /
写 计数器高 8 位;
D7D6=00 ,选择计数器 0 的控制寄存器;D7D6=01 ,选择计数器 1 的控制寄存器;D7D6=10 ,选择计数器 2 的控制寄存器;D7D6=11 ,非法;
微机原理及应用技术微机原理及应用技术
CW=10H LSB=4 WR
CLK
GATE
OUT
4 3 2 1 0 FF FE
CW=10H LSB=3
WR
CLK
GATE
OUT
3 2 2 2 1 0 FF
82538253 工作在方式工作在方式 00 时的波形图时的波形图(( P445P445 ))CW 写入后使输出OUT 变为低电平
LSB之后的第一个CLK下降沿才将计数初值送入计数
器计数减至 0 后 OUT 恢复为高电平
GATE 信号可以使计数暂停
CW=10H LSB=3 LSB=2
WR
CLK GATE OUT
3 2 1 2 1 FF 0
计数过程中重新写入的初值将在之后的第一个 CLK下降沿起作用
6 种工作方式的对比 P45P4500
微机原理及应用技术微机原理及应用技术
例 1 :某 8253 占用端口地址为 40H ~ 43H ,其中计数器 0 工作在方式 0 ,初值为 4 ,二进制计数,试初始化该 8253 。
初始化程序: MOV ALMOV AL ,, 10H10H
OUT OUT 43H ,, AL AL ;写计数器 ;写计数器 0 0 的控制字的控制字 MOV ALMOV AL ,, 04H04H
OUT OUT 40H ,, AL AL ;写计数器 ;写计数器 0 0 的初值的初值
0 0 0 0 1 0 0 0控制字
微机原理及应用技术微机原理及应用技术
例 2 :某 8253 占用端口地址为 40H ~ 43H ,其中计数器 1 工作在方式 3 ,初值为 4020H ,十进制计数,试初始化该 8253 。
初始化程序: MOV ALMOV AL ,, 77H77H
OUT 43HOUT 43H ,, AL AL ;写计数器 ;写计数器 1 1 的控制字的控制字 MOV ALMOV AL ,, 20H20H
OUT OUT 41H41H ,, AL AL ;写计数器 ;写计数器 1 1 的低 的低 8 8 位位 MOV ALMOV AL ,, 40H40H
OUT OUT 41H41H ,, AL AL ;写计数器 ;写计数器 1 1 的高 的高 8 8 位位
1 11 0 1 1 1 0控制字
微机原理及应用技术微机原理及应用技术
例:某 8253 占用端口地址为 40H ~ 43H ,其中计数器 2 工作在方式 0 ,初值为 4020H ,二进制计数,试读出计数器 2 的当前计数值。
读计数值程序段: MOV ALMOV AL ,, 80H80H
OUT OUT 43H43H ,, AL AL ;发控制字锁存计数器;发控制字锁存计数器 22 的值的值 IN ALIN AL ,, 42H42H ;读计数器 ;读计数器 1 1 的低 的低 8 8 位位 MOV BLMOV BL ,, ALAL IN ALIN AL ,, 42H42H ;读计数器 ;读计数器 1 1 的高 的高 8 8 位位 MOV BHMOV BH ,, AL AL ;; BXBX 中为计数器中为计数器 22 的当前计的当前计
数值数值
x xx x 0 0 0 1控制字
微机原理及应用技术微机原理及应用技术
82538253 在微机系统中的应用在微机系统中的应用(( P452P452 ))
DACK0BRD SPKRDATA
(PB1) 22
23 21
IOR IOW
T/CSS A1
A0
D7~D0
5V 11 14
PB0 9
15 18
2.38636MHz
PCLK
74LS175
D C
Q
Q
扬声器
74LS06 12
17
CLK2 CLK1 CLK0 GATE2
GATE1 GATE0
D7~D0
A1
A0
CS WR
RD
8253-5
OUT1
OUT2
OUT2
U26
IRQ0
13
11
+5V 12 DREQ0
9
Q D
CP C
74LS74
U67
0
计数器 1用于定时刷新 DRA
M
计数器 0 用于系统时钟,中断类型号
8计数器 2 用于控制主板扬声器的发声频率;同时用于扬声器控制的还有 8255 的 PB0 和 PB1
微机原理及应用技术微机原理及应用技术
Intel8259A的基本结构及引脚 Intel 8259A 的基本功能
Intel 8259A 的程控技术 初始化:按顺序选择输出初始化命令字 ICW1~ICW4 ( P46
3 ) 工作中根据需要可随时发送操作命令字 OCW1~OCW3 ( P466 )
一片 8259管理 8级中断,不增加其它任何电路时可用 9 片8259 级联( P472 )构成 64级的主从式中断系统; 具中断判优逻辑,对任一级中断都可以单独屏蔽或允许; 中断响应后,能将用户预置的中断类型号自动提供给 CPU ; 可通过编程选择其工作方式(即可程控),包括设置优先
级、中断触发方式、中断响应方式、中断嵌套方式、中断结束方式、总线连接方式等。
可编程中断控制器 8259A ( P459 )
微机原理及应用技术微机原理及应用技术
Intel8259AIntel8259A 的基本功能结构的基本功能结构( P461 )
读写逻辑
控制逻辑
服务状态
寄存器ISR
优先权处理器PR
中断请求
寄存器IRR
中断屏蔽寄存器 IMR
内部总线
INT
数据总线
缓冲器D0-D7
A0
RDWR
CS
SP / EN
级联缓冲 / 比较器
CAS0CAS1CAS2
INTA
……
IR0
IR7
微机原理及应用技术微机原理及应用技术
82598259 的级联工作方式的级联工作方式(( P472P472 ))
CPU
主 8259CAS0CAS1CAS2
IR0IR1IR2
IR7
INT
INTA
SP/EN
从 8259IR0IR1IR2
CAS0 IR7CAS1CAS2
INT
INTA
SP/EN
从 8259IR0IR1IR2
CAS0 IR7CAS1CAS2
INT
INTA
SP/EN
……
VCC
外设发出中断请求信号
微机原理及应用技术微机原理及应用技术
82598259 初始化命令字的发送流程初始化命令字的发送流程(( P466P466 ))
微机原理及应用技术微机原理及应用技术
带 A/D/A 接口的数字系统结构( P485 )
A/D 接口芯片
D/A 接口芯片
ADC 的分类( P485 ) ADC 的主要性能指标 ( P486 ) ADC 芯片的应用: ADC0809 P487 、 ADC574 P490
A/D/A 接口芯片
DAC 的分类( P493 ) DAC 的主要性能指标 ( P493 ) DAC 芯片的应用: DAC0832 ( P494 )
微机原理及应用技术微机原理及应用技术
带 A/D/A 接口的数字系统(( P48P48
55 ))
放大器
传感器
采样 /保持
器A/D
计
算
机
系
统
控
制
对
象执行部件
多路模拟开关
IO接口
IO接口
D/A放大器
微机原理及应用技术微机原理及应用技术
ADCADC 的分类的分类(( P485P485 ))
按转换原理直接
间接
:并联转换、逐次逼近(分辨率高,快)
电压 - 时间电压 -频率电压 -脉宽
(积分式(抗干扰性强,慢))
按分辨率( 数字位数 )
8 位
…12 位
按转换速度
超高速(转换时间≤ 330ns )次超高速(转换时间 330ns~ 3.3µs )高速(转换时间≤ 20µs )中速(转换时间 20~ 300µs )低速(转换时间≥ 300µs )
按结果输出形式
串行
并行按数字编码方式
二进制(补码)BCD码
微机原理及应用技术微机原理及应用技术
分辨率
精度(转换误差)
速度(转换时间)
其它
ADCADC 的主要性能指标的主要性能指标(( P486P486 ))
用于表示 ADC对微小信号的分辨能力。分辨率值越小或输出二进制代码的位数越多,转换精度越高。
完成一次 A/D转换所需要的时间,即从它接到转换命令起直到输出端得到稳定的数字量输出所需要的时间。
表示 AD转换结果相对于理论值的误差,常用 LSB (最低有效位)的倍数表示。可表示为数字(量化)误差和模拟(设备)误差、绝对误差(绝对精度)和相对误差(相对精度)等。
量程(输入电压范围)、输出电平、编码方式、功率、温度等。
微机原理及应用技术微机原理及应用技术
则分辨率为:5V/(24-1) =5V/15 =0.333V
则分辨率为 :
5V/(28-1) = 5V/255 =0.0196V
通常我们使用数字量最低有效位( LSB )对应的最小可分辨模拟量来表示 A/D 和 D/A 的分辨率:
=满量程模拟量 /(2 数字量位数- 1)
设满量程模拟量为 5V 电压:
若数字量为 4bit ,有:
0000 0V
1111 5V
若数字量为 8bit ,有:
00000000 0V
11111111 5V 有时也直接用数字量的位数来表示分辨率。
微机原理及应用技术微机原理及应用技术
A/DA/D转换芯片的应用转换芯片的应用一、根据系统对分辨率、精度及速度等各项指标的需一、根据系统对分辨率、精度及速度等各项指标的需
求确定求确定 ADCADC 的具体的具体型号型号。。二、确定二、确定 ADCADC 的的参考电压参考电压。。三、确定三、确定 ADCADC 与微处理器的与微处理器的接口接口:除数字信号线外通:除数字信号线外通
常还有一些必要的控制信号(如启动信号等)常还有一些必要的控制信号(如启动信号等)和和 状态联络信号(如忙信号、中断请求信号等)。状态联络信号(如忙信号、中断请求信号等)。
四、四、编程编程实现实现 A/DA/D转换:转换:① ① CPUCPU 发控制信号发控制信号启动启动 ADCADC ;;② ② 等待等待 A/DA/D转换完成:转换完成: CPUCPU 可通过查询方式或中可通过查询方式或中
断方式获知转换是否完成;断方式获知转换是否完成;③ ③ 转换完成后,转换完成后, CPUCPU 读读入转换结果。入转换结果。
微机原理及应用技术微机原理及应用技术
START
逐次比较; 8路输入; 8 位输出(分辨率); 7 位精度;时钟 640kHz 时转换时间 100µs; 通道选择地址及数据均已内部锁存,可直接与微机接口;
ADC 0809ADC 0809 的内部结构及基本功能的内部结构及基本功能(( P488P488 ))
八位三态输出锁存
通道地址锁存与译码
控制
八路模拟通道选择开关
比较器
逐次逼近寄存器 SAR
D/A
……IN0
IN1
IN7
AADA
AADB
AADC
ALE
REF+ REF-
EOC
OE
D0~7
AADA
AADB
AADC
OE
八路八位逐次逼近寄存器 SAR
START
微机原理及应用技术微机原理及应用技术
P488 例 9.43 A0
地址译 码器
A1
A2
IOW
A3~A0
IOR
8086
D7~D0 D7~D0
EOC
ADC0809
OE
START
ALE
ADDC
ADDB
ADDA
9
地址译 码器
+5V
D7 ~D0
IOR
A0 ~A9
微机
系统
总线 IOW
IRQX
D7 ~D0
VCC REF+
IN0
CLOCK OE
ADC0809
START
ADDA
ADDB
ADDC
ALE
REF GND
EOC
P489 例 9.44
1. 8路轮流采样;2. ALE 、 START 、 O
E 均与地址有关,而与数据无关;
3. EOC 作为状态输入,供 CPU 查询使用;
1. 只有 1路采样;2. START 、 OE
与地址译码有关;3. EOC 为中断请
求信号, CPU在中断服务程序中读结果数据;
CS
CS
微机原理及应用技术微机原理及应用技术
与 ADC0809 相比, AD574 有以下特性:1.也采用逐次逼近式转换原理;2.分辨率可为 8bit 或 12bit (可以 12 位同时并行输
出, 也可以字节形式分两次并行输出);3.误差为 ±1LSB 或 ±0.5LSB 位,转换时间为 25µs ;4.模拟信号可为单极性或双极性输入;5.除启动信号 R//C 、忙状态信号 STS 外,还有与分辨 率选择、 12 位输出方式选择及输入信号极性选 择有关的控制信号;
AD574AD574 的基本特性的基本特性(( P490P490 ))
微机原理及应用技术微机原理及应用技术
系统数据总线 D7~D0
WR
RD
A15~3
译码 330H 366H
A2 A1
8255
PB3
PB 0
PA7
PA0
PC0
PC7
PC6
PC5
D7
D0
WR
RD
CS
A1
A0
DB11 DB8
DB7
DB0
STS
CE
CS
R/C
+5V
12/8 +5V
REF IN
REFOUT
BIP
AD574 DGND
10V IN
AGND
A 0
+
100
模拟量
100k 100
+12V 100k 12V …
~
P492 例 9.45说明:1. AD574 工作在 12 位并行输出方式, CPU 应分两次从 8255的 A 口和 B 口读回转换结果;2. 系统工作在查询方式, 8255 的 PCX下半部( PC0 )为状态 口输入,上半部( PC5~7 )为控制口输出;
微机原理及应用技术微机原理及应用技术
DACDAC 的分类的分类(( P493P493 ))
按转换原理( 解码网络 )
T型电阻型倒 T型电阻型权电阻型权电流型电容型脉宽调制型
按数据输入形式
串行并行
按模拟信号输出形式
电流电压
按分辨率( 数字位数 )
8 位
……12 位
微机原理及应用技术微机原理及应用技术
分辨率
精度(转换误差)
速度(转换时间)
其它
DACDAC 的主要性能指标的主要性能指标DACDAC 的主要性能指标的主要性能指标
表示 DAC对输入微小量变化的敏感程度。分辨率值越小或输出二进制代码的位数越多,转换精度越高。
用于表示输出模拟量随数字量变化的快慢程度,通常用建立时间(输出电压达到规定精度所需要的时间)来表示。 DAC 的转换速度主要由转换网络的延迟时间和运算放大器的电压变化率来决定。
表示 DA转换结果相对于理论值的误差,常用 LSB (最低有效位)的倍数表示。可表示为绝对误差(绝对精度)和相对误差(相对精度) 、线性误差(非线性度)、馈送误差等 。
输出电平、温度系数等。
微机原理及应用技术微机原理及应用技术
一、根据系统对精度、速度及输出电平范围等各项一、根据系统对精度、速度及输出电平范围等各项指标的需求确定指标的需求确定 DACDAC 的具体的具体型号型号。。
二、确定二、确定 DACDAC 的的参考电压参考电压。。
三、确定三、确定 DACDAC 与微处理器的与微处理器的接口接口:: ① ① 控制信号和状态信号一般较少,连接简单。控制信号和状态信号一般较少,连接简单。 ② ② 因因 D/AD/A转换需要一定时间,所以在连接数转换需要一定时间,所以在连接数据据 信号线时应注意信号线时应注意 DACDAC 本身是否有本身是否有锁存锁存功能,功能,如如 没有则应在没有则应在 DACDAC 芯片外部设计锁存功能芯片外部设计锁存功能(如通(如通 过过 82558255 端口锁存数据)。端口锁存数据)。
四、四、编程编程实现实现 D/AD/A转换。转换。
D/AD/A转换芯片的应用转换芯片的应用
微机原理及应用技术微机原理及应用技术
DAC 0832DAC 0832 的内部结构及基本功能的内部结构及基本功能(( P495P495 ))DAC 0832DAC 0832 的内部结构及基本功能的内部结构及基本功能(( P495P495 ))
CS
WR1WR2AGND
D4D5D6D7
D0
D1
D2
D3
VCC
VREFRFB
DGND
ILE
XFER
Iout2Iout1
1
2
3
4
5
6
7
8
9
10
19
18
17
16
15
14
13
12
11
20
功 能
数据输入到寄存器
1
数据由寄存器 1 转
送寄存器 2
从输出端取模拟量
控 制 条 件
CS ILE WR1 WR2XFER
说 明
0 1
0
无控制信号,随时可取
= 0 存入数据
WR1= 1 锁定输入
WR1
= 0 存入数据
WR2= 1 锁定输入
WR2
微机原理及应用技术微机原理及应用技术
八位
寄存器(1)
输入八位
寄存器(2)
输入
VREF
RFB
Iout1
Iout2
AGND
VCC
-+
+uo
DGND&ILE
CSWR1
WR2
XFER
T型电阻网络D/A
D7
D0
.
.
.
1
1
DAC0832DAC0832 内部电路框图内部电路框图DAC0832DAC0832 内部电路框图内部电路框图
8 位数据输入;(双极)电流输出;输入可设置为直通、一级或两级缓存 P497 、 P498 ;
微机原理及应用技术微机原理及应用技术
PA0 ~PA7
DAC0832
ILE
CS
WR1
WR2
XFER
D0 ~D7
8255
VREF
RFB
IOUT1
IOUT2
AGND
+OP1 VO1
+5V
PC0
PC1
PC2
PC3
PC4
;---8255 初始化程序 -------MOV DX , 3F6HMOV AL , 80H ;A 口方式 0 输出, C 口方式 0 输出, B 口
未用OUT DX , AL ; 发控制字MOV DX , 3F4HMOV AL , 10H ;DAC0832 为直通方式OUT DX , AL ; 设置 C 口输出
;--- 利用 0832 产生锯齿波 -----------MOV DX , 3F0HMOV AL , 00H
LP: OUT DX , AL ;DAC 输入值INC ALCALL DELAYJMP LP ;循环输出,形成锯齿波
top related