• <acronym id="ibnab"><strong id="ibnab"></strong></acronym><track id="ibnab"><strike id="ibnab"></strike></track>
  • <track id="ibnab"></track><acronym id="ibnab"></acronym>
  • <pre id="ibnab"><ruby id="ibnab"></ruby></pre>
  • <td id="ibnab"><noscript id="ibnab"></noscript></td>
  • <p id="ibnab"><label id="ibnab"></label></p>
  • 專注電子技術學習與研究
    當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

    MSP430按鍵采用中斷也要消抖動(程序)

    作者:佚名   來源:本站原創   點擊數:  更新時間:2014年08月31日   【字體:

     機械按鍵都有抖動,所以,為了消除按鍵的抖動,避免各種干擾引起的抖動產生誤操作,所以,消抖就變得尤為重要。

    #include "MSP430G2553.h"
    int ms,k,i;
    char key=0;
    void delay(int ms)
    {
             while(ms--)
               {
                  for(i=0;i<120;i++);
               } 
    }
    int main( void )
    {
          // Stop watchdog timer to prevent time out reset
          WDTCTL = WDTPW + WDTHOLD;
          P1DIR |=BIT6+BIT0;                  
          P1DIR &=~BIT3;                   
          P1IE  |=BIT3;                  
          P1IES |=BIT3;                 
          P1IFG &=~BIT3;        
          _EINT();                                 
          while(1)
           {
              for(k=0;k<22;k++)
                {
                   P1OUT=jj[k];
                   delay(100);
                 }
           }
    }
     #pragma   vector=PORT1_VECTOR
     __interrupt void zhansan(void) 
          { 
                key=P1IN & P1IFG;
                delay(2);        
                if(key==(P1IN & BIT3))      //以上三句為消抖
                    {       
                        for(k=0;k<5;k++)
                          {
                              P1OUT |=BIT6+BIT0;
                              delay(1000);
                              P1OUT &=~(BIT6+BIT0);
                              delay(1000);
                           }
                    }
                P1IFG &=~BIT3;
          }
     
    關閉窗口
    国产A片好看
  • <acronym id="ibnab"><strong id="ibnab"></strong></acronym><track id="ibnab"><strike id="ibnab"></strike></track>
  • <track id="ibnab"></track><acronym id="ibnab"></acronym>
  • <pre id="ibnab"><ruby id="ibnab"></ruby></pre>
  • <td id="ibnab"><noscript id="ibnab"></noscript></td>
  • <p id="ibnab"><label id="ibnab"></label></p>