能利用AT89C52本身的资源,在软件中判断单片机的冷启动还是热启动? 正常工作时在某几个RAM中置标志,启动时判断这个标志即可,但要注意89C52内部RAM在很低的残余电压下仍能保持数据,最好在电源上并一适当大小的放电电阻。 所谓“冷启动”是指掉电后再启动,而热启动过程是不掉电的。单片机内部RAM在掉电再上电后的值在理论上是随机的(实际上大多会是0x00或0xff),这样你可以在某几个RAM中写上一些特定的值,例如0x55,0xaa,在启动时检查这几个RAM中的值是否与你预先写入的值相等,如相等,表示单片机没有掉过电,是热启动,否则就是冷启动。多设几个这样的标志,则随机因素引起误