找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 1656|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

樸生電子51單片機(jī)學(xué)習(xí)-外部中斷

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:83230 發(fā)表于 2019-3-13 00:17 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
       相信很多單片機(jī)初學(xué)者都會(huì)對(duì)中斷這個(gè)概念不太理解。

對(duì)于傳統(tǒng)的STC89C52單片機(jī),它只有兩個(gè)外部中斷。外部中斷0,外部中斷1 。但是我們要說的STC15單片機(jī),有五個(gè)外部中斷,INT0,INT1,INT2,INT3,INT4.  


      再看外部中斷的時(shí)候,你會(huì)發(fā)現(xiàn)其實(shí)外部中斷真的是很簡(jiǎn)單。簡(jiǎn)單到只需要處理三個(gè)地方。          ① 打開總中斷,打開自己的中斷允許位;

          ② 選擇中斷的觸發(fā)方式;

          ③ 寫中斷處理函數(shù)。   
在STM32里面可能還需要清中斷標(biāo)志位。在STC15里面外部中斷服務(wù)函數(shù)里面是不需要手動(dòng)清中斷標(biāo)志位。

上述的三個(gè)步驟,我們使用代碼來實(shí)現(xiàn)。如下所示。

void Int3_Init(void)
{
    EA = 1;                                                   // 打開總中斷允許位
    INT_CLKO = INT_CLKO | 0x20;              // 0010 0000 打開外部中斷 INT3
}

void Int3_Routine(void)   interrupt 11         // 外部中斷INT3
{
     LED1 = !LED1;
     LED2 = !LED2;
     LED3 = !LED3;
}


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:448822 發(fā)表于 2019-3-13 13:30 | 只看該作者
謝謝樓主分享 學(xué)習(xí)中。。。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表