/****************************************************************************<br />* 名称:IRQ_EINT0()<br />* 功能:外部中断0中断处理程序。<br />* 入口参数:无<br />* 出口参数:无<br />****************************************************************************/<br />void __irq IRQ_EINT0(void)<br />{ <br />EXTINT = 0x01; // 清除EINT0中断标志<br />dispayerclock = 0 ;<br />displayerledmode = displaybint ;<br />dispayerbuffer[0] = 0x00 ;<br />dispayerbuffer[1] = 0x6E ;<br />dispayerbuffer[2] = 0x5E ;<br />dispayerbuffer[3] = 0x50 ;<br />leddisdelay = 20 ;<br />VICVectAddr = 0x00; // 中断处理结束<br />} <br /><br /><br />/****************************************************************************<br />* 名称:InitEint1()<br />* 功能:初始化外部中断0,使能IRQ中断。<br />* 入口参数:无<br />* 出口参数:无<br />****************************************************************************/ <br />void InitEint0(void) <br />{ <br /> INTWAKE = 0x01; // 允许外部中断0唤醒掉电的CPU<br /> EXTINT = 0x01; // 清除外部中断标志 <br /> EXTMODE = 0X01;<br /> EXTPOLAR = 0X00 ;<br /> VICVectCntl13 = 0x2E; // EINT0通道分配到IRQ slot 13,即优先级最高<br /> VICVectAddr13 = (int)IRQ_EINT0; // 设置EINT0向量地址<br /> VICIntEnable = 0x00004000; // 使能EINT0中断<br />}<br /> <br /><br />/****************************************************************************<br />* 名称:powerrun()<br />* 功能:掉电测试<br />****************************************************************************/<br />void powerrun(void)<br />{ <br />if(timepowercn==0)<br /> {<br /> displayerledmode=displaystop;<br /> timeMS = 5 ;<br /> while(timeMS != 0);<br /> PCON = 0x02; // 系统进行掉电模式<br /> }<br />} |
|