void Init_Port()
{
P1DIR|=BIT0+BIT6
P1DIR&=~BIT3
P1REN|=BIT3
P1IES|=BIT3//选择下降沿触发
P1IE|=BIT3
P1OUT&=~BIT0
P1OUT|=BIT6
}
void main()
{
WDTCTL = WDTPW + WDTHOLD
Init_Port()
_EINT()
while(1)
}
#pragma vector=PORT1_VECTOR//按键响应处理函数
__interrupt void Port1(void)
{
unsigned char PushKey
unsigned int i
PushKey=P1IFG&BIT3
for(i=0i<50000i++)
if(!(P1IN&PushKey)==PushKey)//没有按下,则为抖动,标志清零
{
P1IFG=0
return
}
if(PushKey&BIT3)
{
P1OUT^=BIT0
P1OUT^=BIT6
}
P1IFG=0
return
}
不知道你现在调试通了没,这是我改的网上的试了通过。希望帮到你!
设置io端口需要看手册来进行设置哦。看这款芯片带不带内部上拉电阻的,如果没有还要加上外部上拉电阻。P2SEL=选择功能;
P2DIR=设置成输入;
if(P2IN&0x10==0x00)
{
//按下后的处理代码
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)