新闻中心

EEPW首页 > 消费电子 > 设计应用 > 为低功耗应用选择正确的 µC 外围器件

为低功耗应用选择正确的 µC 外围器件

作者:时间:2010-03-09来源:网络收藏

内部振荡器时应慎重。虽然某些内部振荡器可以在数微秒内唤醒处理器,但是,必须在经过数毫秒,当外部晶体达到稳定之后, 才能以更高的速度运行,然后 CPU 时钟才能切换到更高的频率。例如,如果一个 100 MIP 的处理器有一个 20kHz 的内部时钟,该时钟与外部振荡器的 1 MHz 时钟同时启动,内部振荡器将仍然能够执行 999 条指令,而更高速度的处理器用同样的时间只能执行 20 条指令。
定时器

利用好定时器有助于在处理器保持待机状态的情况下实现系统处理功能。由于定时器非常小,因此这有助于大大降低。应该使用实时时钟模块接受 32kHz 计时器定时器输入和设置不同时间间隔的“警报”或中断,在无需处理器干预的情况下,使计时器计数增加。同样,应该使用影子寄存器更新和比较来自 ISR 的值。一旦寄存器读到有效的预编程值,即触发 ISR,使处理器脱离休眠或待机状态,而不需要 CPU 寻找 ISR 地址、更新周期或比较值。
管理开销

管理开销系统监视程序、监管工作有助于防范不安全的状况,有关包括电压监控器和看门狗定时器。由于数字电路依赖触发器或从负到正(或相反亦然)状态的转换,因此,即使工作电压有稍小的下降,也可能会意外触发 RESET 条件,从而造成系统无法工作。电力减弱保护作为电压监控的一部分,一般用于确保电压瞬变不会强制处理器进入和退出RESET 状态。

只要有可能,在电压监控解决方案中应采用不可屏蔽的中断 (NMI) 来识别电压瞬变。这种方法让用户能随心所欲地设定电压触发的门限电平,无需系统复位条件,其一般比模拟-数字转换器 (ADC) 通道更低。

看门狗定时器监视故障情况。虽然在典型的嵌入式中,内嵌的系统程序器往往禁用看门狗定时器,但是在系统中,在电源电压不稳定的情况下,看门狗定时器是一种有用的工具。看门狗定时器会执行预先设定功能,例如在符合某些条件时,比如电压过低或有内存问题时,向处理器发出 RESET 指令。所的处理器应该能够生成已知的 ISR,使处理器无需执行 RESET 而恢复联机状态;因为执行 RESET,必须启动设备,因而会消耗更多的处理器功率。
UART 通信

将一个数字时钟与另一个数字时钟精确到秒地同步是不可能的,因为每个时钟均与其内部晶体同步。在 MCU 驱动的系统中,模式下使用的 32kHz 实时时钟晶体与用于生成UART 波特率的普通 38.4kHz 频率之间会出现类似的同步问题。因为实时时钟的 32,768 频率使 15 位寄存器每秒溢出一次,所以非常适合时间保持(time-keeping) 。比较而言,在UART 中使用相同的频率,则在典型的 10 位(起始位、8 位数据和 1 个奇偶校验位)传输中保证至少有一位读取不。这是由于 32,768Hz 时钟必须除以 3.4,才能得到 9,600 波特率。由于没有 3.4 这一,因此必须选择除以 3 或除以 4(参见图2)。

将一个数字时钟与另一个数字时钟精确到秒地同步是不可能的,因为每个时钟均与其内部晶体同步。在 MCU 驱动的系统中,模式下使用的 32kHz 实时时钟晶体与用于生成UART 波特率的普通 38.4kHz 频率之间会出现类似的同步问题。因为实时时钟的 32,768 频率使 15 位寄存器每秒溢出一次,所以非常适合时间保持(time-keeping) 。比较而言,在UART 中使用相同的频率,则在典型的 10 位(起始位、8 位数据和 1 个奇偶校验位)传输中保证至少有一位读取不。这是由于 32,768Hz 时钟必须除以 3.4,才能得到 9,600 波特率。由于没有 3.4 这一选择,因此必须选择除以 3 或除以 4(参见图2)。

图 2:9600 波特传输时 32Khz 驱动 UART Rx 错误



评论


相关推荐

技术专区

关闭