现在,越来越多的设计师开始转向电子微控制器,以在电机控制和数字电源系统中控制功率级。 使用微控制器(例如德州仪器 (TI) 的 C2000? Piccolo? 微控制器)的集成模拟比较器功能可以保护系统电源,同时也可使设计师减少板级所需的外部模拟组件的数量。在此类电机控制和数字电源系统中,在微控制器自身发生执行错误的情况下防止发生过压或欠压时,设计师仍局限于模拟域。 通过使用 TI C2000 Piccolo 微控制器系列的集成模拟功能,可以围绕单个控制器来设计系统,而不需要外部支持电路。这主要涉及使用模拟比较器来监控功率级模拟域中的过压或欠压以及过流或欠流事件。
Piccolo 微处理器的优势
Piccolo 微控制器使用了 TI 的高性能 TMS320C28x 内核,可提供以单一独立控制器控制系统时所需的所有性能和外设。 通过充足的余量和专用外设,Piccolo 微控制器使开发人员能够实现更先进的控制算法,在进一步提高性能的同时降低系统成本。
Piccolo 微控制器架构已针对数字控制应用进行了优化,具有先进的架构特性,增强了高速信号处理能力。 Piccolo 的主 CPU 内核具有单周期 32×32 位乘法及累积单元等内置数字信号处理 (DSP) 功能,大幅度提高了计算速度。此外,诸如模数转换器 (ADC) 和脉宽调制器 (PWM) 等控制外设设计得非常灵活,能够轻松适应几乎任何用途,而需要的软件开销极小。 例如,ADC 具有自动序列发生器允许开发者进行编程,以循环通过特定次序的样本,这样当应用程序需要时值已就绪。 使用更智能的控制外设和强大的 CPU 内核,控制环路运行更紧密,既改进了控制算法的动态特性,又减少了干扰行为。
重要的 Piccolo MCU 特性包括:
40 至 90 MIPS 的处理性能
3.3-V 单电源支持全部功能的运行
双内部高精度振荡器;无需外部晶体
12 位 ADC 具有 16 通道,最大取样频率为每秒 4.6 兆样本
多达 19 通道的 PWM 输出,具有可配置自动死区
19 个 PWM 通道中有多达 8 个可以在高分辨率模式下工作,其可以低至150 皮秒
集成模拟比较器直接连接在专用输入和 PWM 输出(以及专用输出通道)之间,从而不需要外部模拟组件
Piccolo MCUs集成模拟比较器
TI 的 Piccolo 微控制器系列提供了两至三个模拟比较器,具体视器件系列而定。 在本文中,我们将关注 F2802x Piccolo 微控制器系列,该系列配备了两个比较器。 虽然这两个比较器都集成到了数字器件中,但它们的工作方式与传统的 30nS 模拟比较器类似。 这两个比较器与 F2802/3x/6x 微控制器的内部时钟不同步 – 只要器件自身有电,比较器块就能正常工作。 这两个比较器拥有两个输入(这与标准的模拟比较器类似,但是它们通过模拟输入/输出 (AIO) mux 与器件引脚连接),而且具有额外的能力,即通过使用器件上的内部数模转换器 (DAC) 为电压提供内部参考。 该内部 DAC 功能在峰值电流模式控制等数字功率级应用中非常重要,因为该DAC 可作为峰值电流模式跳闸点的斜坡发生器。 比较器块的输出也可通过连接至 PWM跳闸区域而被器件内部使用,或通过 GPIO mux 而被外部参考。 本白皮书将重点放在F2802x 器件系列上,但是内部比较器功能同样也可转换用于 F2803x 和 F2806x Piccolo 系列。
将比较器用于外部 (用于F2802x Piccolo微控制器)
因为 Piccolo F2802x 微控制器内部的比较器是作为真正的模拟组件而实施的,因此它们可被用于处理器外部的控制功能。 参阅下面的图 1,可以在通用输入/输出 (GPIO) mux 中进行更改以将比较器的输出连接至外部器件引脚。 我们可以通过 GPIO mux 让比较器在器件外部输出有源高信号或低信号,而不是让比较器触发内部 PWM 事件(例如用于“峰值电流模式控制”时)。 模拟输入跳闸点的特性可作为内部或外部参考,其最大输入为3.3 伏。
图 1. 通过 GPIO mux 中的更改所实现的比较器输出。
我们来看其中的一个应用案例:对于在功率级中使用模拟控制器的系统,当将F2802x Piccolo 微控制器用作“维护管理”微控制器时,可减少板级组件的数量。 这与在数字控制系统中的使用大致相同,当与带有启用或禁用引脚的电源器件共同使用时,模拟比较器功能可以用于启用或禁用功率级。 在许多情况下,也可使用模拟比较器使系统中的继电器跳闸或是启动特定的处理器任务。 现在我们可以将这些功能集成到微控制器自身当中,而不用通过外部器件实现这些功能,从而可节省电路板空间和成本。
演示F2802x Piccolo微处理器上的模拟比较器
我们已经了解了 Piccolo F2802x 微控制器系列内部模拟比较器的结构和设置,现在,我们将关注如何在 TI C2000 LaunchPad 评估套件的开发环境中使用这些比较器。C2000 LaunchPad 是一款低成本的评估套件,它配备了 F28027 Piccolo 微控制器。C2000 LaunchPad 配备了引脚接头,这些引脚接头使设计师能够测试 C2000 微控制器的各种模拟和数字输入及输出。 该套件还包含了一个独立的 USB 到 JTAG 接口,从而在为开发 PC 提供保护的同时却无需使用昂贵的外部仿真器硬件。 对于本例中的软件设置,我们将演示由 Visual Solutions, Inc. 提供的基于模型的VisSim 嵌入式图形化软件工具。可从该公司网站 www.vissim.com 上直接下载 VisSim的两个月免费试用版。
测试案例 – 外部参考的比较器事件触发 PWM 事件
在这个使用 C2000 LaunchPad 的测试案例中(图 2),我们有一张非常简单的 VisSim图,它生成 25Khz 的 PWM 信号,用以驱动 GPIO0 和 GPIO1;它还有外部参考的比较器信号,该信号可触发一对相应的高 PWM 和低 PWM 事件以及 GPIO 跳闸。 下面的示例是 VisSim 图的屏幕截图,图中用蓝色和绿色表示比较器输出级别,用黄色表示应用于输入 A 比较器引脚的电压。 在 VisSim 图中,已对输入电压进行归一化,以将VDDA 表示为 1。 在 C2000 LaunchPad 上,VDDA 设置为 3.3。 如图所示,我们使输入信号在 0 和 3.3 V 间循环。
在 VisSim 图中,比较器-1 DAC 被设置为 0.1 满标 (0.33V),比较器-2 DAC 被设置为 0.9 满标 (2.97V)。 在与输入电压所在的同一子图中,DAC 值以红色图形表示,其目的是当比较器发生跳闸时,DAC 值能够显而易见。 此外,我们对比较器-1 进行了配置,当输入电压低于 0.33V 的 DAC 值时,它将完全打开 PWM。 我们也对比较器-2进行了配置,当输入电压超过 2.97V 时,它将完全关闭 PWM,此外,它还可使 GPIO-3 跳闸(发生比较器事件时,硬件也允许 PWM 进入 HiZ 模式)。 运行 VisSim 图时,如果所提供的电压在比较器的正常范围内,或如果没有电压应用于 ADCIN2 或 ADCIN4,则 C2000 LaunchPad 上的 LED 将显示为中等亮度。 因此,当输入电压低于 0.33V时,LED 将 熄灭,当输入电压高于 2.97V 时,LED 的亮度将达到最大。 由于我们还需要对比较器输入和输出的使用情况进行演示,因此 COMP2DAC 的输出也连接到了GPIO3。 当触发 F28027 Piccolo 微控制器外部的事件时,例如关闭外部功率级时,它可以指示使用情况。当我们将 ADCINA4 连接至3.3V时,最右边的两个 LED 的亮度将达到最大,同时,位于最左边的 GPIO3 上的 LED 将熄灭。 这表示比较器在高位触发GPIO3。 我们还可在引脚 J1-5 上使用示波器,当我们将 3.3V 连接至引脚 J1-6 或将其从该引脚上断开时,我们会看见逻辑电平发生改变。
如果无法获得可变电压源,您可以在 GND 引脚和 ADCIN2 之间连接一根跳线(从J5-2 到 J1-8 的跳线),在此情况下,PWM 将会因输入电压过低而跳闸且 LED 将熄灭。 如果我们断开该跳线,LED 的亮度将恢复为中等亮度。 然后,我们可以将 3.3V连接至 ADCIN2(从 J1-1 到 J1-6 的跳线),此时,因为达到了比较器的高阈值,PWM会跳闸,LED 的亮度会达到最大且 GPIO-3 上的 LED 将熄灭。 重新拆下该跳线将使LED 恢复为中等亮度,而 C2000 LaunchPad 最左边 GPIO-3 上的 LED 将亮起。
图 2. 影响 VisSim 微控制器的 PWM 输出的两个比较器触发事件的 VisSim 图。
下面的图(图 3)是在 C2000 LaunchPad 硬件上实际运行的 VisSim 图。在针对阈值水平对比较器 DAC 进行初始化时,对于比较器-1,我们使用定点常数 0.1,对于比较器-2,我们使用定点常数 0.9。 (0.1@Fx6,16 对应于0.33V,0.9@Fx6,16 对应于 2.97V。) C2000 LaunchPad 将支持 GND 和 3.3V之间的 ADC 输入。
请注意,在本示例中,我们可以设置包含 PWM 单元、ADC 输入、比较器和相应的 GPIO 输出事件在内的整个结构,而不用编写任何代码。
图 3. 在 C2000 LaunchPad 硬件上运行的 VisSim 图
可以在 VisSim 中获取这个在 C2000 LaunchPad 上测试比较器功能的示例,方法是转到 Embedded->Examples->Piccolo->Launchpad,然后选择任一 PWMComparatorTRIP2。
结论
在本文中,我们讨论了通过 Piccolo 微控制器单元的模拟比较器功能,在增加系统功能的同时减少外部组件需求的可能性,这种可能性的实现有助于节省成本和电路板空间。 我们还通过成本低廉的 C2000 LaunchPad 平台和完全图形化的 VisSim 编程解决方案详细了解了这些功能的设置并进行了相关演示。