本文介绍模拟开关电路4066的几个初级应用电路。如果你对模拟开关很熟悉,可以跳过前面几段。
一、什么是模拟开关
顾名思义,模拟开关就是一个看起来不像开关,但其对电路的通断作用,却非常类似一个开关的那种东西。你也许会说:这东西我见的多了!晶体管、电子管、集成电路、光敏三极管等等在一定程度上都有开关的特性。不错不错,但是请你说说在什么情况下它就算是开关,在什么情况下就不能称它为开关呢?你说对了:当它在电路中处于导通状态时,如果它的导通电阻值远小于被它连通的电路中的电阻,而当它处于截止状态时,它的电阻又远大于被它连通的电路中的电阻,我们就可以把它当做一个开关来理解和使用。4066正有这个特点。它的导通电阻一般为200Ω左右,而其截止电阻则可以高达100MΩ以上。因此在一般的电路中可以说是一个不折不扣的开关。
模拟开关的代表符号非常简单,而且直观(见图1a),图1b是在数字电路或模拟电路设计中最常使用的一种模拟开关CD4066。它是在一个外壳中封装了四只模拟开关,所以我们常叫它“四模拟开关”。这些开关的每一个都有三条引线,A和B是开关引线,C是控制端(如图1a所示。A、B和C是笔者为便于叙述而标注的,不是规范符号),就是说,只要在C端加有高电位,A、B两点就会被接通;否则,开关就是断开的。

在电路设计中使用模拟开关有很多好处:(1)它体积很小,能很容易地组成开关阵列,把许多开关“网接”成某种逻辑电路来使用;(2)它不会像普通机械开关那样在开关的过程中产生火花,因而其工作的稳定性和可靠性较高;(3)它的动作速度非常快,每秒钟可以达到数百万次,因而可用于处理高频信号,这是任何机械开关都无法代替的;(4)多个模拟开关还可以组成一些变通的应用电路,可用以代替某些集成电路的部分功能。
二、模拟开关电路应用举例
1.脉冲前沿检出器
我们在设计由直流电位的跳变来控制某种过程的电路时,就需要将直流电位的前沿信号检出,即将这个信号的前沿变成一个较窄的脉冲来控制下级电路。图2a和图2b都是脉冲前沿检出器,区别在于前者检出前沿信号后以同相脉冲输出,而后者则以反相脉冲输出。电路的原理十分简单:当一个较宽的输入脉冲或直流正跳变加到模拟开关的A点时,通过电容C1就同时把这个电位加到了模拟开关的控制端C点。于是模拟开关接通,即B点得到了一个正的输出信号。但随着输入信号对电容的不断充电,电容两端的电压就越来越高,当然加到模拟开关控制端的电压也就越来越低。到低于V\(_{DD}\)的一半时,模拟开关就变为截止状态,此时B点就没有了电压,于是就产生了图2a所示的输出波形——一个同相的正脉冲。它比输入脉冲窄得多,但却是与输入脉冲同步产生的。图2b和图2a有同样的功能,但得到的是反相位的检出脉冲。这是因为电路中是把输入信号加到模拟开关的控制端的,整个电路乍一看起来倒很像一个晶体管放大器(事实上这是一个工作在开关状态的特殊放大器),所以对输入信号有倒相作用。如果电容C1的容量不是太大,它对输入信号的微分作用就比较明显,和图2a类似的分析可以知道,它必然输出反相的前沿检出波形(波形分析过程见图2b)。

2.脉冲延时电路
图2c是一个用模拟开关使输入脉冲延时输出的电路。输入脉冲由于受R1和C1的积分作用,它加到C点的前沿,其上升速度便被延缓,因此当输入信号到达R1左端时,控制端C点不可能马上就建立起足够的电压使模拟开关的A、B两点导通,而要延时一段时间,因此B点输出波形的前沿就要比输入脉冲的前沿来得晚一点。同样,当输入脉冲的后沿来到时(即输入脉冲撤走后),因为电容C1上的电荷不能立即减小到0,所以模拟开关还要多导通一会儿,直到C点上的电压由于电容C1的放电而下降到4066的转换点以下(一般是小于V\(_{DD}\)的一半时)而截止时,B点的输出脉冲才告结束。因此,这个电路就对输入脉冲起到了延时的作用(参见图2c右面的波形过程)。不难想到,如果连续使用这种延时电路多级地对输入信号进行处理,就可以使输入脉冲得到更多的延时。举个例子来说,这在示波器的“等待扫描模式”中有很大的用处。在这种情况下,我们要观测的往往是不定什么时候突然来到的脉冲信号,而且我们希望把它头尾都不拉地显示在示波器上。这时最好的方法就是用输入信号的前沿来触发示波器的水平扫描过程,然后将输入信号本身延迟一段时间再送入示波器,以便使我们能及时准确地抓住并观测这个信号的全貌。图2d是用模拟开关实现的反相器,其原理同一个晶体管反相器电路一样。
以上这几个小电路如果使用恰当,在电路设计中可给您增添不少方便。下面我们来看一下稍微复杂点的电路——用模拟开关设计的任意波形发生器。
3.任意波形发生器
任意波形发生器可以用模拟编程的方法产生出任意形状的波形,不只是通常使用的方波、三角波、正弦波、锯齿波等。这对教学、科研、信号控制的设计、模拟各种乐器或人声的音色等方面都有很实际的用场。图3以一个简化了的电路来说明其工作原理。它由波形设定电位器组、选通开关组、环状计数器和积分器等几个部分构成。图中为简明起见,只使用了4路元器件,实际应该用到最少8路才有较好的效果。笔者曾设计过一个32路的任意波形发生器,设定出许多波形,用来模拟各种乐器的发声效果,得益匪浅。

任意波形发生器的工作原理并不复杂,稍对图3分析便可理解。首先由环状计数器各Q端的输出脉冲快速地依次轮流打开各模拟开关(关于环状计数器的工作原理,读者可参看1997年《无线电》第7期第47页,此处用虚线把这部分电路作为一个部件框了起来),从而使电位器RP1、RP2、RP3、RP4中心头上所设定的电位按时间次序依次传送到运算放大器的反相输入端上去。很显然,如果把4个电位器的输出电位依次设置为1V、2V、3V、4V,则将在运算放大器的输出端上得到一个正向锯齿波;如果设置为4V、3V、2V、1V,则得到一个负向锯齿波;如果设置为0V、0V、4V、4V,则会得到一个方波输出。这些波形的具体参数,都可以由电位器中心点的高低来定义,因此,能够得到的波形实际上是无限的。不过,我们的例子中仅画了4个电位器及与之对应的工作电路,当然无法得到复杂的波形。如果把“路数”增加到16路,情况就大不一样。图3中,C4连接在运算放大器的输出端和反相输入端之间,所以形成了一个积分电路或低通滤波器电路,其目的是滤掉由于电位器设置电压的不连续性而在输出波形中所产生的“硬棱角”,使输出波形有比较自然圆滑的过渡过程。因为我们使用的是单电源,所以把运算放大器的同相端经过R2连接到由R3和R4组成的分压器的分压点上。通常取R3=R4,以便将运算放大器“0”输出时的基础电位设定在V\(_{DD}\)的一半上。(田进勤)