本帖最后由 megawin 于 2009-9-19 09:53 编辑
Megawin MCU凭借超强抗干扰能力,在工业级MCU领域取得非常好的成绩。(ESD可过6000V,EFT 可过1.5KV )。
抗干扰问题,不仅仅是硬件设计时考虑的问题,另外还可以在软件上做处理来提高MCU抗干扰能力。
工作原理:如果外界有很强干扰信号,超出了MCU承受范围,就会引起MCU系统复位(非上电复位),我们利用MCU系统复位后寄存器数据不发生改变特点,在软件增加特殊处理,让MCU恢复到之前运行状态,从而消除干扰的影响。
Megawin 89系列 PCON寄存器POF位是上电标志位,可以通过这个位来判断是“上电复位”还是“系统复位”,软件再做对应处理。具体方法如下:
void main(void)
{
if(POF)
{
// 上电复位,初如化变量
...
...
}
else
{
// 系统复位,只初如化部分变量
...
...
}
POF = 0; //POF位上电复位是1,可以软件清零,可以判断是“上电复位”,还是“系统复位”。
while(1)
{
//主循环处理
...
}
}
提示:
1.单片机ISP CODE(引导程序)不能破坏寄存器数据。
2.建立项目时,最好不要加Startup.a51。
3.82系列还有WRF标志位,判断是否是看门狗引起复位。 |