application of digital potentiometer in frequency-adjustable signal source
yushaoan yangjinfa
abstract:in this paper an intelligent signal source is made by means of controling digital potentiometer with single chip micyoco. a simple introduction to x9312 digital potentiometer made and a practical algorithm is given.
key words:digital potentiometer linear degree
压控振荡器(vco)的应用十分广泛,若用直流电压作为控制电压,压控振荡器就成了频率调节十分方便的信号源。本言语采用数控电位器,程序控制其产生不同的直流电压,以达到信号源频率可调的要求。实验证明,该智能信号源系统线性度好,频率漂移小,动态范围宽,工作频率高,以及当控制电压为零时中心频率易于设置。
1 系统硬件结构
本系统包括四个模块:单片机、数控电位器、液晶显示模块和多输出压控振荡器。控制器采用atmel公司的at89c2051,它是一种低功耗,高性能,片内含2kb eeprom和128 ram的8位cmos微控制器,与mcs-51单片机兼容。
1.1 9312模块功能及特点
xicor x9312为8脚双列直插式封装形式(见图2),是固态非易失性电位器,是理想的数字控制的微调电阻器。x9312是一个包含有99个电阻单元的电阻阵列。在每个单元之间和二个端点都有可以被滑动单元访问的抽头点。滑动单元的位置由
、
和
三个输入端控制。滑动端的位置可以被储存在一个非易失性存储器中,因而在下一次上电工作时可能被重新调用。
x9312芯片具有以下特点:
●片内含一个七位计数器和一个七位非易失性存储器:
●具有存储和唤醒控制电路;
●一个一百选一解码器,它有100个滑动抽头点,滑动端的位置取决于三线接口,类似于ttl升/降计数器;
●99个电阻单元,有温度补偿,±20%端点到端点阻值范围,0v至+15v电压范围;
●低功耗cmos,vcc为3v至5v,工作电流最大3ma,等待电流最大1ma。
x9312引脚说明如下表所示:
引脚 | 名称 | 功 能 |
1 | | “增加”输入脚。负边沿触发。触发之将使滑动端向计数器增加或减少的方向移动,移动的方向由端等的逻辑电平决定 |
2 | | 升/降输入脚。输入滑动端移动的方向 |
3 | vh vl | 高电压端及低电压端。x9312的vh和vl等效于一个机械电位器的固定端。其最小电压是0v而最大电压是+15v。但必须注意vh和vl这个术语只是规定了由输入端选择的关于滑动端方向的相对位置,而不是端点上的电压 |
4 | vss | 地 |
5 | vw | 滑动端。相当于机械电位器的可移动端。滑动端在电子阵列中的位置由控制输入端决定。滑动端的串联电阻值典型40ω |
7 | | 片选输入端。为低时选中。当为高时,且输入端也为高时,当前计数器的值被储存在非易失性存储器中。当存储操作完成后,x9312将处于低功耗的等待方式,直到器件再次被选中 |
8 | vcc | 电源电压 |
x9312方式选择:
| | | 方 式 |
l | h | 向上滑动 |
l | | l | 向下滑动 |
| h | x | 存储滑动端位置 |
h | x | x | 等待电流 |
| l | x | 不存储,返回等待 |
1.2 液晶显示模块简介
sms0408液晶显示模块包括电源正极、电源地、串行移位脉冲和串行数据输入四个接口。数据位为0时显示开,为1时显示关。含有disi-dis5共5个ram,串行送数时,先送disi的最低位,最后送dis5的最高位。每显示一屏共发40个脉冲。
sms0408地址对照表:
| d7 | d6 | d5 | d4 | d3 | d2 | d1 | d0 |
| / | / | / | / | / | / | coi | / | dis1 |
digit4 | h4 | c4 | d4 | e4 | g4 | b4 | a4 | f4 | dis2 |
digit3 | h3 | c3 | d3 | e3 | g3 | b3 | a3 | f3 | dis3 |
digit2 | h2 | c2 | d2 | e2 | g2 | b2 | a2 | f2 | dis4 |
digit1 | h1 | c1 | d1 | e1 | g1 | b1 | a1 | f1 | dis5 |
2 系统软件设计
本系统软件采用mcs-51汇编语言直接编制,因而具有程序简洁,占用存贮空间小,控制及时等优点。系统程序都固化在at89c2051片内的eeprom中。系统软件主要由主程序、中断服务子程序、延时子程序和bcd转换子程序组成,还有几个主要的功能模块,显示模块。系统开机后,首先执行初始化,使所有的x9312输出为零;开外部中断;计算频率数,即1秒内的脉冲数;执行显示模块功能;延时2秒后对显示器刷新。系统软件框图如图3所示。软件的重要部分就是计算频率数,bcd码变换,对sms0408的串行送数及刷新,以及中断服务子程序中的键号判断和相应功能模块的执行。部分程序如下:
ini1:clr p3.0 ;xp9312-1初始化
nop
clr p1.6
….
setb p1.4 ;存x9312-1初值
nop
setb p3.0
….
3 实验体会
xp9312在具体应用中要求注意输入的工作电压,强度超出其极限参数可能导致器件的永久性损坏。vh和vl的上下门限值也应注意。在编制软件时还要充分考虑x9312的各输入信号和输出信号的工作时序,使它正确存储数据,获得理想的实验结果。
4 结束语
两片x9312可以达到10000(100×100)级调节,完全能够解决实验中的细微调节问题。实验中得到的信号线性度好,频率范围宽,漂移小,可以广泛应用到生产和实验中。比如在变频器的应用中,直流电源逆变为交流电源,当这个交流电源正好为50hz时会受到现场工频信号的干扰。这时使用数控电位器和单片机进行智能化微调。使逆变出的交流信号频率在47.5hz-52.5hz之间而不是正好为50hz,就可以克服现场工频电源信号的干扰。
参考文献:
[1] 李清泉,黄吕宁,集成运算放大器原理与应用,北京:科学出版社,1999
[2] 房小翠,王金凤,单片机实用系统设计技术,北京:国防工业出版社,1999
[3] x9312 eepot非易失性数控电位器,武汉:p&s武汉力源电子股份有限公司,2000
作者简介:
俞绍安 中国科学技术大学电路与系统专业硕士研究生,研究方向为多媒体计算机技术、智能仪表。