第5章最小系统外围电路设计I have no special talent. I am only passionately curious.Albert EinsteinPeople always fear change. People feared electricity when it was invented, didnt they? People feared coal, they feared gaspowered engines. There will always be ignorance, and ignorance leads to fear. But with time, people will come to accept their silicon masters.Bill Gates从电路设计角度,嵌入式系统硬件是以处理器与存储器为核心,以电子线路连接所有电子元件和接口所形成的器件网络。不同的硬件系统,其对应不同的器件集合以及不同复杂度的电路网络。最小系统是指一个仅具有进入正确执行模式所需最少资源的系统。从硬件角度,最小嵌入式系统硬件包括了嵌入式处理器、片上片外存储器以及电源供电、复位、时钟等外围辅助电路。通过设计和验证最小系统硬件,可以掌握以特定型号处理器为核心的嵌入式硬件设计方法,并为进一步的功能、接口、总线扩展奠定基础。这类似于快速原型的软件设计思想。结合数字电路知识以及集成电路特性,本章重点阐述供电电路、复位电路以及时钟电路的工作原理与典型设计方法。5.1电 源 电 路〖1〗5.1.1电源电路设计方法1. 基本原理电源供电电路是嵌入式系统硬件的基本组成,为系统提供一种或多种负载能力的电压输出,其稳定性对整个系统硬件的安全、可靠运行具有重要影响。通常情况下,嵌入式系统的供电模块大都采用稳定性较高的直流稳压电源电路。一个完整的直流稳压电源是电源变压器、整流电路、滤波电路以及稳压电路等4部分的总成,逻辑结构如图5.1所示。图5.1直流稳压电源电路组成对于交流电AC输入,基于电磁感应原理的电源变压器,将初级线圈上输入的交流电压U1变换为次级线圈上的交流电压U2,初级线圈、次级线圈的圈数分别为n1和n2时,U2=n2n1U1。一般情况下,U1为50Hz、220V的交流电。在直流直流的电压变换电路中,不需使用该类组件。整流电路主要利用二极管的单向导通特性,将交流交流电压变换后的交流输出转换为电流周期性变化的单向脉动直流电DC,设计中可采用单相全波整流和单相桥式整流电路。整流电路输出端不接滤波电容时,单相全波整流和桥式整流电路的输出电压均约为0.9U2,二极管的平均电流为整流电路输出电流的一半,二极管承受的最高反向电压为2U2。基于这些参数约束,设计者可选择合适的整流二极管。滤波电路用于滤除单向脉动电流中的交流成分纹波电压纹波电压是指直流电压中,因对整流后电压的滤波不彻底或因负载波动所引入的交流成分。并形成直流电流输出。该电路主要利用了电容两端电压或电感中的电流不能突变的特性,将电容与负载并联或电感与负载串联来滤除整流电路输出电压中的纹波电压。负载电流较小的电路适合于电容滤波,反之可采用电感滤波。接入滤波电容CF或电感LF后,该元件将在波峰充电、在波谷放电补偿电压。当CF3~5T2R时,T为交流电周期如50Hz,20ms,R为负载电阻,电路的输出电UF约为1.2U2。一般应以1.2U2作为输出电压值,进而反向推算出变压器的匝比。稳压电路用于消除电网电池等输入端电压的波动并抵消负载变化对电源的影响,为系统提供稳定的直流电压。在实际设计中,稳压电路的设计既可以采用基于二极管、三极管等分立元件的线性稳压电路、开关稳压电路,也可以采用78XX、79XX等三端集成稳压管。2. 20V交流-12V直流电源电路示例例如,图5.2是一个基于7812集成稳压管\[52\] 所设计的交流220V转直流12V的电源电路,最大输出电流1A。稳压管标号中的78表示稳压管输出正电压79表示输出负电压、12表示输出电压为 12V,由此,可以选择7805、7912等型号的稳压管分别建立 5V、-12V等电源电路。整流桥由四个整流二极管1N4001\[53\] 桥接而成,将感应的交流电转换为直流电。电容C1和C2组成滤波电路,其中极性电容C1用于过滤整流输出中的低频纹波电压,无极性电容C2用于滤除输出中的高频纹波信号;稳压管输出端的极性电容C3用于储能,使得输出更加稳定。图5.2220V交流转12V直流电源电路图5.2中,电容C2、C3和7812组成了将直流高电压转至12V直流电压的基本直流稳压电路。其中,7812稳压管本质上由一组三极管、二极管和电阻构成,输入电压范围为14.5~27V,正常输出电压范围11.4~12.6V、输出电流范围5mA~1A,峰值电流、功率分别可达2.2A和15W。在已获得直流电压输出时,降压稳压电路大都可以采用类似的设计方式。实际中,用户还可以在该基本稳压电路的基础上,基于电阻可调电阻、电容、二极管、三极管、比较器等器件对电路进行扩展,构造出不同电气特性的稳压电路,如恒流型、增强型、输出可调型、高电流电压型、高输出电流短路保护型、负电压输出型、正负电压输出型以及开关型稳压电源电路等。稳压管的数据手册中会详细描述这些电路组件的具体结构和使用参数,设计时可根据需要进行查阅。3. 直流升压降压SEPICSEPIC: Single Ended Primary Inductor Converter,单端初级电感变换器。电源电路示例首先需要说明的是,单端初级电感变换器SEPIC是一种允许输出电压大于、等于或小于输入电压的DCDC电路,通过电路开关的占空比来控制输出电压。基本的SEPIC电路一般是采用一个开关三极管或MOS管和两个位于不同回路的电感构成的,电路结构如图5.3所示。其中,当开关三极管S导通时,Ui、L1、S回路和S、C1、L2回路同时导通,两个电感L1和L2同时储能,Ui和L1的能量通过C1转移到L2;当三极管截止时,Ui、L1、D1和负载C2、Ro形成回路,同时L2、D1和负载形成回路,此时电源与L1为负载供电,并向C1充电。类似于升压电路,该电路的输入电流平滑,而输出电流则不连续称之为斩波。那么,以不同频率控制开关三极管S的导通、截止状态并选择特定参数的元件,就可以以控制电路中电流大小的方式实现输出电压的升降调节。图5.3所示电路的优点是实现简单,但其不足也非常明显,电路本身不能实现S开关的自动控制,且不能保证电路的稳定性和安全性。图5.3SEPIC升降压电路以基于CS5171\[54\] 稳压管构造的2.7~28V输入、5V输出的SEPIC转换电路为例。CS517X系列集成电路可以看作是对上述SEPIC电路中开关等部分的扩展。芯片内部采用了由电源开关电流产生脉冲宽度调制PWM斜坡信号的电流模式控制机制,以固定频率振荡器的脉冲输出打开器件内部的电源开关S,并由PWM比较器将其关闭。CS5171是频率为280kHz的8引脚高效能电压转换调节器,输入电压范围2.7~30V,最大输出电流1.5A,可以实现升压、降压、反相、正负对称双电源输出等多种功能。芯片的主要引脚包括电源引脚VCC-0.3~35V、循环补偿引脚VC-0.3~6V、电压反馈输入引脚FB-0.3~10V、关闭同步引脚SS-0.3~30V、开关输入引脚VSW-0.3~40V、电源地PGND和模拟地AGND。其中,VC是误差放大器的输出,连接一个RC补偿网络,主要用于循环补偿、电流限制以及软启动软启动:通过外部扩展的RC电路,可以防止上电启动过程中在VC引脚的高电流冲击,从而也抑制电感电流以防止上升过快。;FB连接到芯片内部正误差放大器的反相输入,与1.276V的参考电压进行比较,当该引脚的电压低于0.4V时,芯片的转换频率降低为正常频率的20%;SS引脚可以将芯片置为低电流模式,或者用于和基准时钟的两倍频同步;VSW是高电流开关引脚,其内部连接到电源开关三极管的集电极。如图5.4和图5.5所示分别为采用CS5171设计的2.7~28V输入5V输出的SEPIC转换电路和5V输入12V输出的SEPIC转换电路。图5.4采用CS5171的升降压直流电源电路图5.5采用CS5171的5V转12V电源电路由数据手册可知,基于CS517X系列芯片可以构造出升压、降压、反相、逆变等不同的电压转换电路,使得嵌入式硬件的设计得以简化。除此之外,面向电池供电电子系统的TI TPS6103X系列升压转换器,可以将1.8~5.5V范围的输入电压转换为最大5.5V的输出电压。较CS517X而言,该器件的优势是具有非常高的能量转换效率,将1.8V输入升压至5V输出时可以提供1A的输出电流。需要强调的是,多个独立电源的电路中数字电源需先于模拟电源供电。同时,电源电路只是构成嵌入式系统供电电路的一部分,实际中可能需要进行扩展。在诸如电池供电的嵌入式系统设计中,电源电路中通常需要以电源控制数字芯片为核心。电源控制芯片在线检测电池电压、为不同组件提供不同的电压输出,并通过充电控制芯片控制电池的充电过程。在系统运行及电池充电过程中,充电控制芯片保护电池以防止过度放电、过压、过充及过温,保护电池寿命及系统安全。5.1.2延伸: 电源管理与低功耗设计外围电源电路为电子器件提供了正常工作所需的电荷能量。在此基础上,通过对电源电压的动态调节和管理,可以进一步使电子器件运行于不同的工作模式,如开启或关闭某些组件的电源、全速运行或睡眠、待机等低功耗状态。如前所述,性能的优化与芯片的运行电压、时钟频率以及外设能力密切相关。显然,进一步为基础供电电路增加动态电源调节机制,将是优化系统运行性能和能耗的有效手段。多种供电电源是嵌入式处理器的基本特征之一,用于满足处理器内处理器核、IO接口、时钟电路等数字逻辑以及ADCDAC、传感器、锁相环等模拟组件的供电要求。针对不同组件管理以及性能优化、功耗管理的需要,处理器内部一般都会集成辅助的智能电源控制和管理逻辑单元,可以为片内逻辑提供多种电源供给方案和运行模式。例如,提供内部参考电压如VREFINT、可编程电压检测器如PVD,可以监控电源电压变化并进行处理器复位控制等操作;提供线性电压调节器以及电源控制寄存器和状态寄存器,实现软件方式的芯片运行状态管理。STM32 L1是意法半导体推出的超低功耗、基于ARM CortexM3核的高性能32位MCU\[56\] 。该系列MCU采用意法半导体专有的超低泄漏制程,具有创新型自主动态电压调节功能和5种低功耗模式,在保证性能的同时扩展了超低功耗的运行机制。与主攻可穿戴设备的STM32 L0以及STM8L一样,STM32 L1提供了动态电压调节、超低功耗时钟振荡器、LCD接口、比较器、DAC及硬件加密功能。STM32L1xx处理器的内部供电电路如图5.6所示。图5.6STM32 L1处理器中的多类型供电在该电路中,各个引脚及电压域或电压区具有如下特性。1 当BOR欠压复位有效时,VDD的电压区间为1.8~3.6V上电时或1.65~3.6V掉电时,无效时,电压区间为1.65~3.6V。2 VDDA是向ADC、DAC、上电复位POR和掉电复位PDR模块、RC振荡器和锁相环供电的外部模拟电源供电电路,VDDA的电压区间与VDD相同;当连接ADC组件时,VDDA的电压为1.8V;独立的AD和DAC供电电源VDDA和电源地VSSA可以被单独滤波,并屏蔽PCB噪声,保证转换精度。3 VREF 是输入参考电压,在LQFP144、UFBGA132、LQFP100、UFBGA100和TFBGA64封装时VREF 和VREF-是独立引脚,其他封装形式时分别连接到VSSA和VDDA。VREF 不同时,ADC时钟ADCCLK的频率不同,如VDDA =VREF 2.4V时,ADC全速运行,ADCCLK为16MHz,转换速率为1MSPS,而当VDDA =VREF 1.8V或VDDA VREF 2.4V时,ADC中速运行,ADCCLK为8MHz,转换速率为500Ksps。对于DAC而言,1.8 VVREF