众所周知,电子开关比起机械开关有着无可比拟的优越性,例如转换速度高,无转换噪声,不产生火花(这一点对有可燃性物质存在的环境特别重要),寿命长,体积小,可以简单地设置于自动监控电路中使用等等。但是CMOS集成电路中的模拟开关及转换器除有上述特点外,还可以变通使用,设计出一些非开关用途的电路来,在某些情况下,甚至还可以用其担任顶替补缺的功能。比起晶体管或二极管开关电路来,CMOS开关电路是双向的,因此容许信号双向传递。
因为模拟开关多用在信号通断、转接及分配等场合,所以我们把它和数据转换分配电路放在一起来叙述。
最常见和常用的CMOS模拟开关是CD4016和CD4066。它们都是在一块电路中封装着四个模拟开关,各自独立,互不相干,可以单独使用,也可以连接使用。虽然在手册上常常给它们标上SW1,SW2,SW3,SW4或S1,S2,S3,S4的次序记号,其实在使用中可以根据走线的方便任意取用。CD4066比CD4016在性能上要高一些,但它们在导通状态下的工作频率都可达40MHz,因此在一般情况下,两者可以通用。

图1是用CD4066构成的几种单元开关电路。图1a~图1d分别是单刀单掷、单刀双掷、双刀单掷和双刀双掷四种模拟开关的接法。只要在开关的控制端上加有接近其电源电压Vdd的电位,这个开关就能导通,去掉这个电压它就截止。在图1b和图1d中各多用了一只非门,其目的是为了实现当控制信号为0或为Vdd时把开关的刀芯掷向不同的刀位(即触点)而用的。其原理十分简单,兹不赘述。

图2是用CD4066设计的几种顶替补缺电路,可用来实现各种门电路的功能。其原理十分明了,兹不赘述。

图3是用CD4066构成的数控电阻网络。每个电阻的值是按二进制倍增的,这样,当给四个开关的控制端A、B、C、D分别加上按二进制码规定的电位时,该网络便具有相应的阻值(共可有16种不同的阻值)。例如,当DCBA=1110(即当D=1,C=1,B=1,A=0)时,只有电阻R1不被开关短路,所以网络的阻值是1kΩ。当DCBA=0110时,电阻R1和R4不被短路,所以网络的总电阻是9kΩ(1k+8k=9k)。也许上面这种对应关系看起来有点令人费解:为甚么0110会等于9(习惯上1001才等于9)?其实这是为了电路结构的简单,如果我们在每一个控制端上串接一个非门,那时当我们输入1001时,实际上加到模拟开关控制端的电位便成为0110网络的总阻仍是9kΩ,1001对应9kΩ,我们就感到直观得多了。不过,你可以把图2的电路理解为‘负逻辑’功能(即把0当成1,把1当成0),这里的疑惑便不存在了。这个数控电阻网络常被用在音响设备和电视的音量遥控电路中,在那里要用到8个或更多的电阻及相应数量的模拟开关电路,以便得到听感上的平滑过渡。

图4是一个使用模拟开关电路设计的分时开关电路,它可以把两路信号轮换地引导到一个单踪示波器的Y轴输入端,使这个示波器有双踪示波的功能,因此是一个单踪变双踪的示波器附加电路。图中两路外加信号分别送到输入1和输入2,由模拟开关S1和S3将其轮换地送到示波器中去显示。由于S1和S3的控制端上加着反相的控制信号(见图,S3多经过了一个非门),所以它们是轮换着导通的。轮换导通的频率受一个RC振荡器(由CD4069的4个非门构成)控制,这个振荡器的振荡频率应该远高于被测的输入信号的频率,以便能观察到连续性较好的波形。图4中的两个电位器RP1和RP2,用来改变运算放大器的直流输出电压,从而能控制两个被测信号在示波器荧光屏上的垂直距离。

图5是用8选1模拟开关CD4051设计的流水灯演示电路。图中的低频振荡器用CD4069构成。它的输出加到一个7位二进制计数器CD4024的输入端。由CD4024输出的二进制码的最高3位(或任意相邻的3位)送到CD4051的数控输入端A、B和C,由于计数是连续进行的,所以CD4051的8个通道将周而复始地依次轮流导通。又由于在本线路中CD4051的公共输入/输出端(脚3)是接地的,所以每当一个开关导通时通道的相应管脚上呈现低电位,故与之相连的晶体管将变为截止状态,从而使得接在它集电极中的发光二极管不能燃亮,而其余所有各管集电极中的发光二极管都处于发光状态。于是随着CD4051各路开关的依次接通,就出现了一个暗灯在7个亮灯中间不断流动的感觉。这个电路如果用CD4067来实现,就可以有16个灯,如果将几个CD4067级联起来使用,便可以做成32灯、48灯、64灯等更长的灯串。

图6是用8输入优先权译码器CD4532设计的键盘编码电路。它的功能是把键盘上9个键的任意一个变成与其标称数字相对应的二进制编码来输出。即要求当按下①键时,电路输出0001,按②键时,输出0010等等。因为CD4532只有D0~D7这8个输入端,而数字键盘应该有0~9,10个数字键,所以我们用4个二极管d1、d2、d3、d4设计了两个或门电路给它补充了两个输入端——8S和D9。这样一来,也把CD4532的输出端扩大了一位,使之多了一个Q'3端(若不扩出这一位,则无法反应出9所对应的二进制码1001)。电路的工作原理简述如下:
当在CD4532的D0~D7端分别送入高电位1时,它的输出端Q1、Q2和Q3将输出相应的二进制码组合。当在新加输入端D8送入1时,二极管D2导通,使在新加的输出端Q′3上输出1。与此同时,Q′3上的高电位又作用于由三极管和电阻R构成的非门上,使三极管集电极输出0电位,把CD4532置为非使能状态(E=0),以便使除了Q′3外,Q0,Q′0,Q1,Q′1,Q2,Q′2的输出都变为0。同理可知,当通过键盘上的⑨键把高电位加到D9上时,不仅Q′3=1,而且Q′0也会等于1。这就实现了输出9的二进制码1001的目的。
以上仅列举了一些用模拟开关和转换分配器电路来设计应用电路的典型例子,通过这些例子,读者可以举一近三,设计出许多更有趣和更实用的电路来。 (田进勤)