掌片龊与砬爨
数控直流稳压电源 ·克强·
单片机与 D/A转换接口电路应用实例
D/A转换是将数 字量转换为模拟量的过程 ,在计算
机实时控制系统中这一技术应用得十分广泛 ,掌握这方面
的技术是单片机开发应用爱好者必须具备的
到 DAC0832的输出端。
DAC0832是一种典型的 8位 D/A转换器 ,内部为双
维普资讯 http://www.cqvip.com
D/A转换 电路为倒 T型 R~2R电阻网络,故有 1OUT1和
IOUT2两个电流输出端,根据不同的电路组成 ,该芯片可
以有两种输出模式 ,一种为电流输 出模式,这种模式基准
电压加在VREF端,由IOUT1 1OUT2输出的电流经运算
放大器相加后输出;另一种为电压输出模式,这种模式基
准电压加在 lOUT1和 IOUT2之间,模拟电压从 VREF端
输出; 本电路采用后一种模式 ,其基准电压通过 R2和
LM336—5V组成的稳压电路提供.基准电压值为 5V。本
系统 中根据 电源输出电压 5~12V的
要求
对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗
,D/A转换电路
颁向受控电源提供双极性的模拟控制电压,因此,电路需
加 HA17741运算放大器 并要求该运放接成差动输 人方
式 。
从附图可知 ,V6是受控电源的控制信号 ,根据需要选
择不同的 DAC0832输 入的数字量的值即可获得不问的控
制电压 V6,进而可获得所需的输 出电压值。这就是本电路
的基本工作原理。
受控 电源即电压输出电路实际上是由 7809三端稳压
器和3DD15C大功率管组成。由于 7809带负载能力较差,
因此 ,需通 过大功率管 3DD15C进行扩展。本电路中.7809
的地端 (第②脚)不是直接接地,而是与运放的输出端第⑥
脚相接。根据 7809三端稳压器的工作原理可知 .在其地端
②脚与 V6相连之后 ,其输出端第③脚的输 出电压 V3应
该为它本身的稳压值与 V6之和。即:V3=9+V6。由于电
压输 出电路通过 3DDISC大功率管进行带负载能力的扩
展 ,电源实际输出的电压是从该功率曾的发射极输出的,
因此.电源输出的电压其实际值要比V3减少一个发射结
的 电压降 即 0 7v.所 以电源输 出的 电压 VOUT=V3—
0.7V:9+V6—0 7,由此可得出 CPU的Pl口输出的数字
Dn(也就是不同的 DAC0832输入的数字量的值)与 电源输
出电压 VOUT的关系为:Dn=128(VOtyr一3.3)/5,这就
确定了电源输出电压与 CPU输 出数字 Dn的关 系,这是编
程 的依据。 按照 0.1v的步进量 .在 5~12V的输出电压
范围内,应该有 71个 Dn值。编程时 ,根据 Dn的表达式可
算出全部的 71个 Dn值 ,并将这些值从小到大顺序存在一
张名为 TAB1的表格中。要输 出某一电压值 ,只要从该表
格 中查表 取出与其相对应的 Dn值 ,并通过 D/A转换 电
路即可得到所需的电压。
在本电路中,K1、K2为输 出电压选择键 ,其中 Kl为
“增加键”,该键每按下一次输 出电压将在上一输 出值的基
础上增加0.1V,K2为 “减少键”,其功能与 K1键正好相
反
程序设计
在本电路 中,由于 CPU的工作任务是单一的,因此 ,
程序的设计显得 比较简单 ,供参考的源程序见本 刊网站。
源程序的工作过程为:系统上 电复位后 ,默认输 出9V
出数字量 Dn与输出电压 的关系式 ,这是程序设计的依据;
另一方面要建立显示值与输出电压值的对应关系 ,这是程
序设计是否成功的标志。因为本系统中,显示的输出电压
值不是直接从输出电路中通过检测得到的 ,因此显示与输
出并不存在直接联系。但是为了使显示值与实际输出值相
一 致 ,在程序编写时 ,必须人为地为两者建立某种联系:这
是程序设计中的一个难点 。笔者在编写参考的源程序中采
用的方法是:在程序存储器中建立 TABI和 TAB2两张表
格。TAB1存放 71个 Dn值 ,数值从小到大顺序排列 ,其值
分别对应输出电压5~12V,TAB2存放数码显示器0—9字
符所对应的数据。TABl表格的数据指针存放在内存 RAM
中 23H单元,内存 20H、2lH和 22H三个单元分别存放数
码显示器小数点一位 个位和十位的字符数据指针。在参
考的源程序中主程序初化之后首先结 23H赋予 4O的偏移
量,这个偏穆量指向TABI表中的 Dn值为 145.此值对应
的输出电压为 9V,由于这个原因,必然要求显示器显示的
字符为“09.0”.为此 ,须分别给 20H、21H和 22H赋予 0、9
和 0的偏移量 ,这三个偏移量分别指向 TAB2表中 0、9和
0字符所对应的数值 。这样显示与输出两者之间就建立了
初步的对应关系。为了使两者保持这种对应的关系 .在 Kl
和 K2按键处理子程序中,必须使 23H、20H、21H和 22H这
四个数据指针保持 “同步”地变化 .即为当 Kl有键 时,23H
单元增加 1指向下一 Dn值时 .20H单元也相应增加 1指
向下一字符,并且 20H单元 (小数点一位指针)、2IH单元
【个位指针)和 22H单元 (十位指针)应遵循十进制加法的
原则.有进位时相应各位应作出相应的变化;当K2有键
时 ,23H单元减 1指向前一 Dn值时 ,20H单元也相应城 I
指向前一字符,并且 20H、21H和 22H三个单元的数据指
针应遵循十进制减法原则,有借位时相应的各位须作出相
应的变化。按照这一算法只要控制TAB1表格数据指针不
超出表格的长度就能使显示值与输出值保持一一对应的
关系 ,即显示器能准确地显示出电源输 出电压值的大小.
达到电路设计的目的。具体请参看本刊网站的源程序。
由于理论计算与实际情况还存在着一定的差异.为了
使显示值更加接近实际输出值,本电路在装配完毕之后,
还需要对输出电压进行校正。方法是:在 电压输出电路带
一 轻负载的情况 ,将输出电压调至 8.3V(显示器显示值).
选用精确度较高的数字万用表对实际输 出电压值进行校
正,通过调整 W1使实际输出电压达到 8.3V;然后再将输
出电压调至 5V和 12V(均为显示器显示值),同样用数字
表进行校正,通过调整 W2使输出电压值分别达到5V和
I2V。如此反复校正几次,就能使 显示器的显示值和实际
辖 出值达到较好的一致性 。
本电路经实际使用表明它具有一定的带负载能 力,能
带动一台 17英寸黑 白电视机的负载 ,在家电修理行业中
有一定 的实用价值。 蠹
皇±丛 竖 一
33
维普资讯 http://www.cqvip.com