×
嵌入式 > 技术百科 > 详情

测试程序(状态机检测按键)

发布时间:2020-09-22 发布时间:
|
//原始状态P1.6亮,P1.0暗,利用状态机进行按键检测,按下并释放的瞬间P1.0翻转,P1.6翻转
//
// MSP430G2xx3
// -----------------
// /|| XIN|-
// | | |
// --|RST XOUT|-
// P1.3|KEY P1.6|-->LED 
// | P1.0|-->LED
// 作者http://jiwm.blog.163.com
// Built with IAR Embedded Workbench Version: 5.40
/
// Timer A0 interrupt service routine
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A (void) 
{ TACCTL0&=~ CCIE; //关中断
static unsigned char KEY_State=0; //按键的状态变量
switch(KEY_State) //处理按键状态
{case NOKEY: //未按键时进行按键处理
if ((P1IN&BIT3)==0)
{KEY_State=PUSH_KEY; //按下按键后,进入短按状态
}
break;
case PUSH_KEY: //短按状态时进行按键处理
if((P1IN&BIT3)!=0) //释放按键,认为是一次短按,加以处理
{KEY=1; //按键赋值
KEY_State=NOKEY; //回到未按状态
}
break;
}
TACCTL0|= CCIE; //开中断
}
 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
联发科高端芯片系列出新品Helio P10 中文名[曦力"