出错的地方
错误提示
全部代码:
#include <msp430.h>
void P11_Onclick()
{
P1OUT ^= BIT0;//翻转LED的电平
}
int main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0; //设置LED的方向
P1OUT &= ~BIT0;//设置LED的默认输出,为低电平不点亮
P1DIR &= ~BIT1;//这一步可以省略,但是我们最好都写,默认端口为输入
P1REN = BIT1;//设置按键的上拉电阻
//P1IES |= BIT1;//设置按键中断为下降沿触发
P1IE |= BIT1;//使能中断
_enable_interrupts();
return 0;
}
#pragma vector = PORT1_VECTOR ;
__interrupt void PORT1_ISR(void)
{
unsigned int Key = 0;
Key = P1IFG & (~P1DIR);
__delay_cycles(10000);
if((P1IN&Key) == 0)
{
switch(Key)
{
//case BIT0: P10_Onclick();break;
case BIT3: P11_Onclick();break;
//case BIT2: P12_Onclick();break;
//case BIT3: P13_Onclick();break;
//case BIT4: P14_Onclick();break;
//case BIT5: P15_Onclick();break;
//case BIT6: P16_Onclick();break;
//case BIT7: P17_Onclick();break;
}
}
P1IFG = 0;//清除中断标志位
}
程序是按照着【MSP430趣谈】里第四讲码的。这是编译器的问题嘛?
此帖出自
小平头技术问答
一周热门 更多>