19.8欠压电压值设定(BOD)
NuMicro M051系列微控制器本身有对系统电压进行检测的功能,一旦系统电压低于设定的门限电压后,将自动停止正常运行,并可设置进入复位状态。当系统电压稳定恢复到设定的门限电压之上,将再次启动运行,即相当于一次掉电再上电的复位。
作为一个正式的系统或产品,当系统基本功能调试完成后,一旦进行现场测试阶段,请注意马上改写芯片的配置位,启动内部欠压电压检测功能。NuMicro M051系列微控制器支持宽电压工作范围,但是经常工作在5V或3V系统,有必要进行适当的配置。对于5V系统,设置欠压电压为4.5V;对于3V系统,设置欠压电压为2.7V。当允许欠压电压检测时,一旦NuMicro M051系列微控制器的供电电压低于设置的欠压值,它将会进入复位状态,不执行程序,然而当电源恢复到欠压电压值以上时,它才正式执行程序,以保证系统的可靠性。
由于NuMicro M051系列微控制器是宽电压工作的芯片,例如在一个5V的电子系统中,当电压跌至2.3V时,它本身还能工作,还在执行指令程序,但这时出现2个可怕的隐患:
l 2.3V时,外围芯片工作可能已经不正常了,而且逻辑电平严重偏离5V标准,NuMicro M051系列微控制器读取到的信息不正确,造成程序的执行发生逻辑错误(这不是NuMicro M051本身的原因)。
l 当电源下降到一个临界点,如2.1V时,并且在此抖动,这样将使NuMicro M051运行的程序不正常,取指令、读/写数据都可能发生错误,从而造成程序乱飞,工作不稳定。
由于NuMicro M051本身具有对片内Flash写操作指令,在临界电压附近,芯片工作已经不稳定了,硬件的特性也是非常不稳定,所以在这个时候,一旦程序跑飞,就可能破坏Flash中的数据,进而使系统受到破坏。
典型的故障现象如下:
1) Flash中的数据突然被破坏,系统不能正常运行,需要重新下载程序。
2) 电源关闭后立即上电,系统不能运行,而电源关闭后一段时间再上电,系统就可以正常工作。
实际上,任何的单片机都会出现这样的问题,因此在许多系统中,需要使用专门的电源电压检测芯片来防止这样的情况出现。因此,NuMicro M051有必要设置欠压电压值检测,对于系统可靠性的提高绝对是有利无害的,欠压电压值明细表如下表19.8-1。
表19.8-1 欠压电压值明细表
参数 |
最小值 |
典型值 |
最大值 |
单位 |
测试条件 |
欠压电压 BOV_VL [1:0] =00b |
2.1 |
2.2 |
2.3 |
V |
|
欠压电压 BOV_VL [1:0] =01b |
2.6 |
2.7 |
2.8 |
V |
|
欠压电压 BOV_VL [1:0] =10b |
3.7 |
3.8 |
3.9 |
V |
|
欠压电压 BOV_VL [1:0] =11b |
4.4 |
4.5 |
4.6 |
V |
|
BOD电压迟滞范围 |
30 |
- |
51 |
mV |
VDD = 2.5V~5.5V |
书籍下载地址(复制到下载工具进行下载):
https://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part1.rar
https://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part2.rar
注:书籍内容会不定期进行更新!