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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8825|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32F103系列外部中斷EXTI->SWIER的用途,已實(shí)驗(yàn)成功

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:72008 發(fā)表于 2015-1-12 15:12 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
     關(guān)于外部中斷寄存器EXTI->SWIER的用途,剛開始我也是云里霧里,感覺手冊說的不是很清楚。憑借自己對EXTI->SWIER功能的理解,自己寫了驗(yàn)證程序,做了一個(gè)實(shí)驗(yàn)。實(shí)驗(yàn)成功了;實(shí)驗(yàn)平臺(tái)是野火mini開發(fā)板。

    實(shí)驗(yàn)原理是:定義兩個(gè)中斷線EXTI0(PA0)和EXTI13(PC13)用來管理兩個(gè)按鍵KEY0和KEY1,然后編寫中斷服務(wù)函數(shù),中斷服務(wù)函數(shù)的思路是,按下KEY0時(shí),在LCD上顯示“SWIER+KEY0:”;按下KEY1時(shí)就將LCD上顯示的
SWIER+KEY0:”清除掉以證明KEY1按鍵已按下,同時(shí)也證明了外部中斷線EXTI13已經(jīng)觸發(fā)(主函數(shù)會(huì)有相關(guān)的操作)。下面是兩個(gè)中斷服務(wù)函數(shù)(至于配置和分組函數(shù)就不貼出來了):
void EXTI0_IRQHandler(void)    //KEY0按鍵
{
    if(EXTI_GetITStatus(EXTI_Line0) != RESET)
      {

        LCD_DispStr(20, 80, (uint8_t *)"SWIER+KEY0:", RED);  //顯示SWIER+KEY0:
       EXTI_ClearITPendingBit(EXTI_Line0);   
     }  
}
void EXTI15_10_IRQHandler(void)  //KEY1按鍵
{
   if(EXTI_GetITStatus(EXTI_Line13) != RESET)
   {
       // LCD_DispStr(20, 60, (uint8_t *)"SWIER+KEY1:", RED);
        LCD_DispStr(20, 80, (uint8_t *)"SWIER+KEY0:", WHITE);    //清除LCD顯示的SWIER+KEY0:
        EXTI_ClearITPendingBit(EXTI_Line13);     
        EXTI->SWIER=0;  //清除EXTI->SWIER寄存器相應(yīng)的位,這種寫法有點(diǎn)不規(guī)范,其實(shí)是應(yīng)該將EXTI->SWIER寄存器的bit13清零即復(fù)位
   }  
}
主函數(shù):
int main(void)
{  u8 m=0;
  LCD_Init();
  LED_GPIO_Config();
  delay_init();
  uart_init(9600);

  EXTI_PC13_Config();
  EXTI_PA0_Config();

  LCD_Clear(0, 0, 240, 320, WHITE);


  EXTI->IMR|=1<<13;//  
  EXTI->EMR|=1<<13;//
  EXTI->SWIER=0;

while( 1 )
{
    m++;
   LCD_DispNumber(100, 100, m, WHITE); //顯示m的值
   delay_ms(500);
  if(m==10)
   {
     EXTI->SWIER|=1<<13;  //軟件觸發(fā)中斷線13,
      m=0;
   
   }
}

主函數(shù)其實(shí)很簡單,程序運(yùn)行之后,先按下KEY0按鍵這時(shí)會(huì)在LCD上顯示“SWIER+KEY0”;同時(shí),在LCD上每隔500ms顯示一次m的值,當(dāng)m等于10的時(shí)候程序?qū)?EXTI->SWIER寄存器的bit13位置1,這時(shí)就相當(dāng)于按下KEY1按鍵只不過是由程序執(zhí)行的而已,這時(shí)LCD上顯示的“SWIER+KEY0”會(huì)被清除;證明外部中斷線EXTI13已經(jīng)觸發(fā)。

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

使用道具 舉報(bào)

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

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美亚洲在线观看 | 久久久久久久久久久久久久久久久 | 国产乱码一区二区三区 | 亚洲国产欧美日韩在线 | 欧美精品一区在线观看 | 一本色道久久综合亚洲精品酒店 | 在线看片a | 久久久午夜精品 | 亚洲高清中文字幕 | 国产小视频在线播放 | 久久伊人精品 | www.免费视频. | 在线视频h| 一区二区久久久 | 精品一区在线 | 亚洲欧洲天堂 | 操操av| 免费三级网站 | 国产欧美激情 | 国产视频一区在线 | 黄色大片在线免费观看 | 欧美在线视频一区二区 | 性史性dvd影片农村毛片 | 久久精品视频一区二区 | 国产精品视频99 | 日韩在线高清 | 日韩av一级片 | www.av在线播放 | 日本韩国三级 | 午夜视频福利 | 亚洲欧美视频一区 | 国产成人97精品免费看片 | 国产天天操 | 黄色一级网站 | 亚洲777| 欧美成人精品一区 | 久久精品视频免费 | 国产在线天堂 | 中国农村毛片免费播放 | 黄色一级在线观看 | 亚洲在线免费观看 |