/************************************************************************************************

本例程基于AI8051U为主控芯片的实验箱进行编写测试。

使用Keil C51编译器，为了达到比较高的效率，一般建议选择"Small"模式。

当编译器出现 "error C249: 'DATA': SEGMENT TOO LARGE" 错误时，则需要手动将部分比较大的数组通过"xdata" 强制分配到 XDATA 区域（例如：char xdata buffer [256];）。

用STC的MCU的IO方式控制74HC595驱动8位数码管。

使用Timer0的16位自动重装来产生1ms节拍,程序运行于这个节拍下,用户修改MCU主时钟频率时,自动定时于1ms.

用户可以在"用户定义宏"中修改掉电保存的EEPROM地址。

显示效果为: 上电后显示秒计数, 计数范围为0~10000，显示在右边的5个数码管。

当掉电后，MCU进入低压中断，对秒计数进行保存。MCU上电时读出秒计数继续显示。

用户可以在"用户定义宏"中选择滤波电容大还是小。
大的电容(比如1000uF)，则掉电后保持的时间长，可以在低压中断中擦除后(需要20多ms时间)然后写入。
小的电容，则掉电后保持的时间短, 则必须在主程序初始化时先擦除.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
注意：下载时，下载界面"硬件选项"中下面的项要固定如下设置:

不勾选  允许低压复位(禁止低压中断)；低压检测电压选择最大值。

设置用户EEPROM大小，并确保"用户定义宏"中设定的地址在EEPROM设置的大小范围之内，EEPROM大小包括用户系统区。
例如需要用户系统区4K、EEPROM区8K，那么用户EEPROM大小需要设置12K。

修改过硬件选项，需要给单片机重新上电后才会生效。

选择时钟 24MHZ (用户可自行修改频率)。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

不建议直接使用低压中断检测低电压然后保存EEPROM数据，
因为产生低压中断时MCU电压已经很低，不一定有足够的时间进行擦除/保存EEPROM数据；

建议参考规格书比较器章节范例程序，使用比较器做外部掉电检测例子，
通过比较器检测稳压管前端输入电压值，这样才有足够时间进行擦除/保存EEPROM数据。

************************************************************************************************/