第12 章 数模(D/A)转换与模数(A/D)转换接口 §12
1 D/A 转换器接口 D/A(Digit to Analog)和 A/D(Analog to Digit)转换是计算机与外部世界联系的重要接口
在一个实际的系统中,有两种基本的量——模拟量和数字量
外界的模拟量要输入给计算机,首先要经过 A/D 转换,才能由计算机进行运算、加工处理等
若计算机的控制对象是模拟量,也必须先把计算机输出的数字量经过 D/A 转换,才能控制模拟量
D/A 和 A/D 转换的具体电路已经在数字电路课程中讲述
本章主要介绍如何把 D/A和 A/D 转换的芯片与CPU 进行接口以及用 CPU 控制这些转换的软件编程如何实现
1 CPU 与8 位 D/A 芯片的接口 D/A 转换通常是由输入的二进制数的各位控制一些开关,通过电阻网路,在运算放大器的输入端产生与二进制数各位的权成比例的电流,经过运算放大器相加和转换而成为与二进制数成比例的模拟电压
若 CPU 的输出数据要通过 D/A 转换变为模拟量输出,当然要把 CPU 数据总线的输出连到 D/A 的数字输入上
但是,由于CPU 要进行各种信息的加工处理,它的数据总线上的数据是不断地改变的,它输出给 D/A 的数据只在输出指令的几个微秒中出现在数据总线上
所以,必须要有一个锁存器,把 CPU 输出给 D/A 转换的数据锁存起来,直至输送新的数据为止
一个最简单的 D/A 芯片与CPU 的接口电路如图12-1 所示
其中,以锁存器 74100 作 为 CPU 与D/A 转换之 间 的接口
CPU 把 74100 作 为一个输出端口,用地址 27H 来识 别 ,则 CPU 输给 D/A 的数据要用一条I/O 写 (即 输出)指令来实现
图12-1 的电路可 应 用于许 多 场 合 ,例如: (1) 驱 动 一个侍 服 电机;