#include "config.h" void __irq Eint0_IRQ(void); //INT0中断函数声明 void delay(int dly); //delay延时函数声明 //流水灯数值表 int Led_Table[]={ 0x00fe0000,0x00fd0000,0x00fb0000,0x00f70000,0x00ef0000, 0x00df0000,0x00bf0000,0x007f0000}; int Delaytime=70; //主函数 int main(void) { int i=0; PINSEL0=0X000CC0CC; //使能p0.1 p0.3 p0.7 p0.8分别为外部中断0.1.2.3 PINSEL1=0X00000000; //使能p1.16~23为IO功能 IO1DIR=0XFF<<16; //这个写法很清楚,推荐 IRQEnable(); VICIntSelect=0x00000000; //设置所有的终端都为IRQ中断 VICVectCntl0=0x20|14; //设置INT0为IRQ中断,使用slot0 VICVectAddr0=(uint32)Eint0_IRQ; //设置终端服务程序地址 VICIntEnable=0x00004000; //使能INT0 EXTMODE=0x00; //INT0电平触发 EXTPOLAR=0x00; //触发电平为低电平 EXTINT=0x0f; //清除所有中断标志 while(1) { IO1SET=Led_Table[i];//设置高电平引脚 IO1CLR=~Led_Table[i]; //设置低电平引脚 dela