/****************************************************************************
typedef unsigned char uchar;
typedef unsigned int uint;
#define LED1 P1_0 //定义P1.0口为LED1控制端
#define LED3 P1_4 //定义P1.4口为LED3控制端
#define KEY1 P0_1 //定义P0.1口为S1控制端
uchar KeyValue=0;
/****************************************************************************
出口参数: 无
****************************************************************************/
void DelayMS(uint msec)
{
uint i,j;
for (i=0; i<msec; i++)
for (j=0; j<530; j++);
}
/****************************************************************************
出口参数: 无
****************************************************************************/
void LedOnOrOff(uchar mode)
{
LED1 = mode;
LED3 = mode;
}
/****************************************************************************
出口参数: 无
****************************************************************************/
void InitLed(void)
{
P1DIR |= 0x11; //P1.0、P1.1、P1.4定义为输出
LedOnOrOff(0); //使所有LED灯默认为熄灭状态
}
/****************************************************************************
/****************************************************************************
描 述: #pragma vector = 中断向量,紧接着是中断处理程序
****************************************************************************/
#pragma vector = P0INT_VECTOR
__interrupt void P0_ISR(void)
{
if(P0IFG > 0) //按键中断
{
DelayMS(10); //延时去抖
if(P0IFG > 0) //按键中断
{
KeyValue = 1; //产生中断保存中断状态
}
}
P0IFG = 0; //清中断标志
P0IF = 0; //清端口0中断标志
}
/****************************************************************************
void main(void)
{
InitLed(); //设置LED灯相应的IO口
InitKey(); //设置KEY相应的IO口
//去按模块上的 s1按键,从 led 3往 led1 led1去流水亮或者灭。
//写代码
}