概述
微处理器用于大规模系统设计时,通常需要各种外部器件的支持。这些外部器件为微处理器提供多项任务支持:为微处理器提供满足电压、电流需求的稳压电源、监控其它电源电压、提供外部时钟、控制上电和断电顺序或执行其它任务。这些外部器件通常称为微处理器监控器,是专为特殊监控任务而设计的IC。
使用一个低功耗微控制器可以取代专用的微处理器监控电路,支持上述各种任务。根据其性能,一个微控制器可以提供多个器件所支持的服务,且由于监控功能可通过软件编程,具有很大的灵活性。
本应用笔记介绍了使用带有压电扬声器驱动、稳压器和比较器的低功耗微控制器MAXQ3210实现典型微处理器监控功能的方法。MAXQ3210可在单机配置下实现各种功能,采用9V电池供电,使用其内部低速振荡器可以省去外部时钟电路。MAXQ3210的小封装尺寸(24引脚TSSOP)使其成为传统设计或其它空间受限产品的理想选择。
电池供电便携系统
MAXQ3210内置9V至5V转换的线性稳压器,可理想用于便携式、电池供电的微控制器或微处理器系统。由于MAXQ3210具有低电池电压检测,使系统能够在低电池电压状态下提供智能化管理。
配合5V微处理器工作时,只要微处理器所需的供电电流在MAXQ3210线性稳压器的供电范围内(最大值约为50mA,详细信息请参见MAXQ3210数据资料),MAXQ3210可直接使用其稳压器的输出引脚REGOUT (图1)为微处理器供电。当微处理器电流非常低时,还可以将MAXQ3210的端口引脚设置为标准高电平输出(PD = 1,PO = 1),直接为微处理器供电。每个端口都能提供至少4mA的电流,压降小于0.4V。只要所有端口引脚的电流总和不超过最大额定值(约为25mA,详细信息请参见数据资料),可将多个端口引脚连接在一起增强供电电流。使用端口直接为微处理器供电时,MAXQ321能够根据需要接通、关断微处理器的电源,从而延长电池寿命。注意:当使用REGOUT为微处理器供电时,电源仍可在MAXQ3210控制下接通、关断,但需要一个外部FET或其它开关器件。
当所支持的微处理器需要的端电压不是5V(例如3V、2.5V或其它)时,MAXQ3210的REGOUT输出可通过线性稳压器产生微处理器所需要的电压。通过使用带有使能/禁止输入的线性稳压器,MAXQ321仍然能够完全关断微处理器的电源,以延长电池寿命。
图1. 使用MAXQ3210为5V微处理器供电的原理图
设计过程中对电池寿命和系统总吸入电流要求苛刻时,MAXQ3210可在非常低的电流状态下工作,以节省能量。MAXQ3210不仅具有功能完善的MAXQ电源管理模式(分频、PMM1模式和STOP模式),有效节省能量,还包含了一个8kHz的振荡器,可作为一个极低功耗的时钟源使用。上电时,如果没有外部晶体或高频时钟源,MAXQ3210将运行在8kHz振荡器,使其工作电流降至微安级。由于对响应时间要求并不严格,即使在8kHz下工作时,MAXQ3210仍可实现本应用笔记中的监控功能。
复位和电源监控
MAXQ3210提供上电复位(POR)和欠压检测功能,使其能够在供电电源稳定时退出复位状态。欠压检测可以使微控制器从电源跌落状态下恢复工作。MAXQ3210还可以为没有电源监控功能的微处理器提供类似的POR和欠压检测。
将MAXQ3210的一个端口接至微处理器的外部RESET引脚,使MAXQ3210在电源低于门限设置时复位微处理器,并在供电电源恢复正常时使微处理器退出复位状态。如果微处理器在5V电源下工作,只要MAXQ3210处于POR或欠压状态,MAXQ3210都将使微处理器复位。如果微处理器工作在更低的电源电压(例如3.3V),MAXQ3210的模拟比较器能够将微处理器的供电电源与VREF引脚的任意电压(可达3.5V)进行比较(关于模拟比较器的详细信息,请参考MAXQ3210数据资料)。当微处理器的供电电源跌落至基准电压以下时,比较器将产生中断给MAXQ3210,使微处理器复位并在电源恢复正常以前保持复位状态。
因为所有功能都是通过软件实现的,所以微处理器从电源恢复到退出复位状态的时间间隔可以设置为任意时间周期。如果系统有多个供电电源或需要按照特定顺序上电,MAXQ3210可作为上电定时器,按照每个动作的指定延迟时间顺序控制器件的上电过程。
给系统增加一个外部复位按键可初始化复位顺序。将复位按钮接至MAXQ3210的一个端口,使MAXQ3210完成基于软件的去抖功能,并产生宽度可编程的复位脉冲,以响应一次按键复位。
添加唤醒定时器
便携式电池供电系统中,节省电源及电池寿命是设计的关键。为保持低电流耗损,此类系统一般尽可能工作在低功耗状态。系统周期性地(或在用户按键请求下)唤醒,进行测量或运行其它任务,然后返回休眠状态。不工作的器件,最好关闭其供电电源。
MAXQ3210提供一个长周期唤醒定时器,有助于节省功耗。可设定在8kHz环形振荡器下工作的唤醒定时器,使MAXQ3210进入低功耗状态 - 停止模式,并在长达2分钟的预设时间间隔后自动唤醒。退出停止模式后,MAXQ3210按需求唤醒或使系统中的其它器件上电。以下MAXQ3210程序代码演示了如何进入停止模式,然后在60秒后自动唤醒。
mainLoop:
;; Perform application tasks here...
;;
;; Start the wakeup timer for 60 seconds.
move CKCN.6, #1 ; Select ring oscillator mode
waitRing:
move C, CKCN.5
jump NC, waitRing ; Wait for RGMD=1 (running from ring)
move WUT, #30000 ; 1/8kHz * 30000 * 16 = 60 seconds
move WUTC, #0101b ; Start the wakeup timer (running from ring)
move IV, #wakeUpInt ; Set interrupt handler for wakeup interrupt
move IMR.0, #1 ; Enable interrupts from module 0
move IC.0, #1 ; Globally enable interrupts
move CKCN.4, #1 ; Go into Stop mode, wait for wakeup int
nop
jump mainLoop ; Back for another round
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
wakeUpInt:
move CKCN.6, #1 ; Select ring oscillator mode
wakeUp_ring:
move C, CKCN.5
jump NC, wakeUp_ring ; Wait for RGMD=1 (running from ring)
move WUTC, #0 ; Clear wakeup timer flag
move CKCN.6, #0 ; Select crystal mode
wakeUp_xtal:
move C, CKCN.5
jump C, wakeUp_xtal ; Wait for RGMD=0 (running from crystal)
reti
将MAXQ3210的一个端口连接至微处理器,可通知其作好断电准备。MAXQ3210通知断电后,微处理器根据执行任务的不同立即进入低功耗停止模式或等待断电。
MAXQ3210从停止模式唤醒时,既可使微处理器上电(如果微处理器完全关断),也可使用外部中断或类似机制通知微处理器,使其从低功耗状态下唤醒。
添加看门狗复位
与MAXQ3210的唤醒定时一样,微控制器的内置看门狗复位电路可以扩展为微处理器的一个外部硬件看门狗复位电路。MAXQ3210中,看门狗作为一个安全装置,防止瞬态脉冲干扰时程序运行失控。一旦启动看门狗定时器,必须通过周期性地置位一个寄存器位使其复位。如果MAXQ3210停止置位寄存器位,且定时器溢出,看门狗将使MAXQ3210自动复位。该自动复位使MAXQ3210恢复到一个已知的起始状态并重新启动运行。
将MAXQ3210的看门狗复位扩展给微处理器只需要两个连接:将微控制器的一个端口接至微处理器的外部RESET;将微处理器的一个端口返回到MAXQ3210端口。
MAXQ3210自动使能看门狗,只要收到来自微处理器的信号就复位看门狗。微处理器负责周期性地触发此引脚,防止MAXQ3210的看门狗超时,超时周期可编程(详细信息,请参考MAXQ3210 User's Guide Supplement。)
作为微处理器的外部看门狗,MAXQ3210设定看门狗超时情况下触发一个中断。如果看门狗超时,意味着微处理器未能及时触发微控制器的端口,微控制器需要复位。
MAXQ3210响应看门狗中断,重启看门狗,通过外部的RESET引脚复位微处理器,重新开始一次循环。
电平和接口
监控状态下,MAXQ3210与微处理器之间通信时,必须考虑两个器件的I/O电平。如果两个器件都在5V电压下工作,端口引脚通常可以直接连接,请务必参考器件的数据资料。
MAXQ3210输出信号给低电压微处理器(例如3.6V的器件)时也可以直接连接。如果微处理器引脚含有保护二极管,MAXQ3210的5V输出可以通过限流电阻直接连接至低电压引脚。也可以选择使用漏极开路连接方法:两引脚间引出一个上拉电阻连接至低电压微处理器的电源,并使MAXQ3210的端口强制下拉(PD = 1,PO = 0)或为三态(PD = 0,PO = 0)模式。
由低电压微处理器引脚驱动的MAXQ3210的输入时同样需要谨慎操作,这是因为低电压微处理器不能驱动其端口引脚至足够高的电平,以使MAXQ3210的寄存器置位。如果仅需要一个输入(如图1),低电压信号可以连接到MAXQ3210的模拟比较器。其它可能的方法有,使用带有漏极开路配置的外部下拉FET,或使用电平转换器,如MAX3370。
结论
MAXQ3210的小尺寸、电池供电及单机工作特性使其成为可编程微处理器监控的理想选择。几种有用的节电模式和电源监控特性,可方便地为微处理器提供监控,使MAXQ3210成为通过软件配置延长电池工作时间的核心,非常适合便携式电池供电产品。
上一篇:基于VHDL实现的十六路彩灯控制系统
下一篇:PC电源常见故障判断分析与排除
推荐阅读最新更新时间:2024-03-30 21:23