久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3063|回復: 0
打印 上一主題 下一主題
收起左側

關于MSP430的中斷和查詢方式

[復制鏈接]
跳轉到指定樓層
樓主
ID:186516 發表于 2017-4-6 00:09 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
MSP430F5529的芯片使用按鍵S2,以查詢方式控制LED1:按下S2,LED1開始以1Hz的頻率開始閃爍,再次按下S2,LED1熄滅;同時,使用按鍵S1以中斷方式,控制LED1的閃爍或熄滅。這個可以用選擇語句吧 但是 我就不知道中斷函數下面又有聲明 我想用switch語句 但是現在只能寫成這個樣子了 接下來應該怎么辦呢 拜托各位大神了

  1. #include<msp430.h>


  2. #define OSC 1000000


  3. #define u8 unsignedchar


  4. #define u16 unsignedshort


  5. #define S1 (P1IN&BIT7)


  6. #define S2 (P2IN&BIT2)


  7. u8 led_flash;





  8. void GPIO_init(void);


  9. void delay_ms(u16 time);


  10. /*


  11. * main.c


  12. */


  13. void main(void)


  14. {


  15.    WDTCTL = WDTPW | WDTHOLD;    // Stop watchdog timer


  16.    GPIO_init();


  17.    _BIS_SR(GIE);


  18.    P1OUT |= BIT0;


  19.    while(1)


  20.      {


  21.         if(!S2)


  22.         {


  23.         delay_ms(10);


  24.         if(!S2)


  25.         {


  26.             while(!S2);


  27.             delay_ms(10);


  28.             led_flash=1;


  29.           }


  30.         if(!S2)


  31.         {


  32.             led_flash=2;


  33.         }


  34.         switch(led_flash)


  35.                  {case 1:


  36.                      P8OUT|=BIT1;


  37.                      P1OUT|=BIT0;


  38.                      delay_ms(500);


  39.                      P8OUT&=~BIT1;


  40.                      P1OUT&=~BIT0;


  41.                      delay_ms(500);


  42.                      break;


  43.                  case 2:


  44.                      P1OUT^= BIT0;


  45.                      break;


  46.                  case 3:


  47.                      break;


  48.                  default: ;


  49.                  }


  50.      }


  51.      }


  52. }





  53. void GPIO_init(void)


  54. {


  55.     P1DIR|=BIT0;//LED1


  56.     P1DIR&=~ BIT7;


  57.     P1OUT|=BIT7;


  58.     P1REN|=BIT7;





  59.     P1IFG= 0x00;


  60.     P1IES|= BIT7;


  61.     P1IE|= BIT7;





  62.     P1DIR|=BIT0;//LED1


  63.     P2DIR&=~ BIT2;


  64.     P2OUT|=BIT2;


  65.     P2REN|=BIT2;


  66. }





  67. void delay_ms(u16 time)


  68. {


  69.     while(time--)


  70.             __delay_cycles(OSC/1000);


  71. }





  72. #pragma vector=PORT1_VECTOR


  73. __interrupt void Port1_ISR(void)


  74. {


  75.     if(P1IFG & BIT7)


  76.     {


  77.         delay_ms(10);


  78.         while (!S1)


  79.         delay_ms(10);


  80.         P1IFG&=~ BIT7;


  81.         P1OUT^= BIT0;


  82.     }


  83. }

復制代碼


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产三级精品三级在线观看四季网 | 日韩专区中文字幕 | 天天草天天操 | 91精品国产乱码久久久久久久 | 国产精品久久久久久 | 国产偷自视频区视频 | 狠狠操狠狠干 | www.99热.com| 福利视频一区 | 婷婷五月色综合香五月 | 精品欧美一区二区三区久久久 | 欧美一区二区三区 | 91看片在线 | 国产精品免费播放 | 久久精品免费观看 | 日韩另类视频 | 欧美成年视频 | 国产999精品久久久影片官网 | 久久乐国产精品 | 成人影视网址 | 国产精品久久久久久久 | 欧美一区二区在线免费观看 | 亚洲国产偷| 久www| 国产精品日韩在线观看 | av国产精品 | 成人精品视频99在线观看免费 | 在线欧美视频 | 久在线| 91国产在线播放 | 一级片免费视频 | 亚洲国产精久久久久久久 | 久久一热 | 国产xxxx在线 | 九九av| 久操国产 | 中文在线a在线 | 午夜亚洲 | www.日本国产 | 91在线一区二区 | 精品一二三区在线观看 |