《AVR教程113464.docx》由会员分享,可在线阅读,更多相关《AVR教程113464.docx(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、ATmega16 减少功耗的方法试图降低AVR 控制系统的功耗时需要考虑几个问题。一般来说,要尽可能利用睡眠模式,并且使尽可能少的模块继续工作。不需要的功能必须禁止。下面的模块需要特殊考虑以达到尽可能低的功耗。模数转换器使能时, ADC 在睡眠模式下继续工作。为了降低功耗,在进入睡眠模式之前需要禁止ADC。重新启动后的第一次转换为扩展的转换。具体请参照P192“ 模数转换器” 。模拟比较器在空闲模式时,如果没有使用模拟比较器,可以将其关闭。在ADC 噪声抑制模式下也是如此。在其他睡眠模式模拟比较器是自动关闭的。如果模拟比较器使用了内部电压基准源,则不论在什么睡眠模式下都需要关闭它。否则内部电压
2、基准源将一直使能。请参见P189“ 模拟比较器” 以了解如何配置模拟比较器。掉电检测BOD 如果系统没有利用掉电检测器BOD,这个模块也可以关闭。如果熔丝位BODEN 被编程,从而使能了BOD 功能,它将在各种休眠模式下继续工作。在深层次的休眠模式下,这个电流将占总电流的很大比重。请参看P38“ 掉电检测” 以了解如何配置BOD。片内基准电压使用BOD、模拟比较器和ADC 时可能需要内部电压基准源。若这些模块都禁止了,则基准源也可以禁止。重新使能后用户必须等待基准源稳定之后才可以使用它。如果基准源在休眠过程中是使能的,其输出立即可以使用。请参见P40“ 片内基准电压” 以了解基准源启动时间的细
3、节。看门狗定时器如果系统无需利用看门狗,这个模块也可以关闭。若使能,则在任何休眠模式下都持续工作,从而消耗电流。在深层次的睡眠模式下,这个电流将占总电流的很大比重。请参看P40“ 看门狗定时器” 以了解如何配置看门狗定时器。端口引脚进入休眠模式时,所有的端口引脚都应该配置为只消耗最小的功耗。最重要的是避免驱动电阻性负载。在休眠模式下I/O 时钟clkI/O 和ADC 时钟clkADC 都被停止了,输入缓冲器也禁止了,从而保证输入电路不会消耗电流。在某些情况下输入逻辑是使能的,用来检测唤醒条件。用于此功能的具体引脚请参见P52“ 数字输入使能和休眠模式” 。 如果输入缓冲器是使能的,此时输入不能
4、悬空,信号电平也不应该接近VCC/2,否则输入缓冲器会消耗额外的电流。 JTAG 接口与片上调试系统如果通过熔丝位OCDEN使能了片上调试系统,当芯片进入掉电或省电模式时主时钟保持运行。在休眠模式中这个电流占总电流的很大比重。下面有三种替代方法:? 不编程OCDEN? 不编程JTAGEN? 置位MCUCSR 的JTD当JTAG 接口使能而JTAG TAP 控制器没有进行数据交换时,引脚TDO 将悬空。如果与TDO 引脚连接的硬件电路没有上拉电阻,功耗将增加。器件的引脚TDI 包含一个上拉电阻,因此在扫描链中无需为下一个芯片的TDO 引脚设置上拉电阻。通过置位MCUCSR寄存器的JTD 或不对J
5、TAG 熔丝位编程可以禁止JTAG 接口。 ATmega16 复位源复位AVR 复复位时所有的的I/O 寄寄存器都被设设置为初始值值,程序从复复位向量处开开始执行。复复位向量处的的指令必须是是绝对跳转JJMP 指令令,以使程序序跳转到复位位处理例程。如如果程序永远远不利用中断断功能,中断断向量可以由由一般的程序序代码所覆盖盖。这个处理理方法同样适适用于当复位位向量位于应应用程序区,中中断向量位于于Boot 区 或者反过过来 的时候。FFiguree 15 为为复位逻辑的的电路图。TTable 15 则定定义了复位电电路的电气参参数。复位源源有效时I/O 端口立立即复位为初初始值。此时时不要求任
6、何何时钟处于正正常运行状态态。所有的复复位信号消失失之后,芯片片内部的一个个延迟计数器器被激活,将将内部复位的的时间延长。这这种处理方式式使得在MCCU 正常工工作之前有一一定的时间让让电源达到稳稳定的电平。延延迟计数器的的溢出时间通通过熔丝位SSUT 与CCKSEL 设定。延迟迟时间的选择择请参见 PP23“ 时钟源” 。复位源ATmmega166 有5 个个复位源:? 上电复位位。电源电压压低于上电复复位门限 VVPOT 时时, MCUU 复位。? 外部复位位。引脚 RRESET 上的低电平平持续时间大大于最小脉冲冲宽度时MCCU 复位。? 看门狗复位。看门狗使能并且看门狗定时器溢出时复位
7、发生。? 掉电检测复位。掉电检测复位功能使能,且电源电压低于掉电检测复位门限 VBOT 时MCU 即复位。? JTAG AVR复位。复位寄存器为1时MCU复位。详见 P215“IEEE 1149.1 (JTAG) 边界扫描”。Notes: 1. 电压压下降时,只只有电压低于于VPOT 时复位才会会发生。2. 一些器件件的VBOTT 可能比标标称的最小工工作电压还要要低。这些器器件在生产测测试过程中进进行了VCCC = VBBOT 的测测试,保证在在VCC 下下降到处理器器无法正常工工作之前产生生掉电检测复复位。ATmmega166L 的测试试条件为BOODLEVEEL=1, ATmegga16
8、 的的测试条件为为BODLEEVEL=00。BODLLEVEL=1 不适用用于ATmeega16。ATmega116 上电复复位上电复位(POOR) 脉冲冲由片内检测测电路产生。检检测电平请参参见 Tabble 155。 无论何何时VCC 低于检测电电平POR 即发生。PPOR 电路路可以用来触触发启动复位位,或者用来来检测电源故故障。PORR电路保证器器件在上电时时复位。VCCC 达到上上电门限电压压后触发延迟迟计数器。在在计数器溢出出之前器件一一直保持为复复位状态。当当VCC 下下降时,只要要低于检测门门限,RESSET 信号号立即生效。ATmega116 外部复复位外部复位由外加加于RE
9、SEET 引脚的的低电平产生生。当复位低低电平持续时时间大于最小小脉冲宽度时时( 参见TTable 15) 即即触发复位过过程,即使此此时并没有时时钟信号在运运行。当外加加信号达到复复位门限电压压VRST( 上升沿) 时, ttTOUT 延时周期开开始。延时结结束后MCUU 即启动。ATmega116 掉电检检测ATmega116 具有片片内BOD(Brownn-out Detecction) 电路,通通过与固定的的触发电平的的对比来检测测工作过程中中VCC 的的变化。此触触发电平通过过熔丝位BOODLEVEEL 来设定定, 2.77V(BODDLEVELL 未编程),4.0VV (BODDL
10、EVELL 已编程)。BOD 的触发电平平具有迟滞功功能以消除电电源尖峰的影影响。这个迟迟滞功能可以以解释为VBBOT+ = VBOTT + VHHYST/22 以及VBBOT- = VBOTT- VHYYST/2。BOD 电路的开关由熔丝位BODEN控制。当BOD使能后(BODEN被编程),一旦VCC下降到触发电平以下(VBOT-, Figure 19), BOD 复位立即被激发。当VCC 上升到触发电平以上时(VBOT+,Figure 19),延时计数器开始计数,一旦超过溢出时间tTOUT,MCU即恢复工作。如果VCC 一直低于触发电平并保持如Table 15 所示的时间tBOD, BOD 电路将只检测电压跌落。ATmega116 看门狗狗复位看门狗定时器溢溢出时将产生生持续时间为为1 个CKK 周期的复复位脉冲。在在脉冲的下降降沿,延时定定时器开始对对tTOUTT 记数。请请参见P400 以了解看看门狗定时器器的具体操作作过程。