卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

如何實(shí)現(xiàn)51單片機(jī)同時(shí)使用兩個(gè)外部中斷

在使用51單片機(jī)時(shí),中斷系統(tǒng)是一個(gè)非常重要的特性,可以實(shí)現(xiàn)保護(hù)CPU現(xiàn)場(chǎng)、跳轉(zhuǎn)到中斷服務(wù)函數(shù)進(jìn)行處理、恢復(fù)CPU現(xiàn)場(chǎng)、繼續(xù)進(jìn)行原始操作等功能。中斷分為外部中斷、內(nèi)部中斷和串行口中斷,我們也可以同時(shí)使用

在使用51單片機(jī)時(shí),中斷系統(tǒng)是一個(gè)非常重要的特性,可以實(shí)現(xiàn)保護(hù)CPU現(xiàn)場(chǎng)、跳轉(zhuǎn)到中斷服務(wù)函數(shù)進(jìn)行處理、恢復(fù)CPU現(xiàn)場(chǎng)、繼續(xù)進(jìn)行原始操作等功能。中斷分為外部中斷、內(nèi)部中斷和串行口中斷,我們也可以同時(shí)使用兩個(gè)外部中斷。首先要知道中斷源的入口地址,由于需要同時(shí)使用兩個(gè)外部中斷,即要用到外部中斷0:0003H和外部中斷1:0013H。

配置Keil μVision編譯器并設(shè)置工程

1. 打開(kāi)Keil μVision編譯器,新建一個(gè)工程,并保存在硬盤上的位置。

2. 選擇Atmel-AT89C51單片機(jī)為模型,并添加STARTUP.A51文件。

3. 在當(dāng)前目錄下新建一個(gè)C文件,并將其添加入工作路徑。

4. 導(dǎo)入51單片機(jī)的頭文件,在主函數(shù)中使EA1,即總中斷允許,打開(kāi)中斷的總開(kāi)關(guān)。

配置外部中斷

5. 分別打開(kāi)外部中斷0和外部中斷1的開(kāi)關(guān),即EX01和EX11,同時(shí)設(shè)置中斷的觸發(fā)方式為跳沿觸發(fā),以避免增加額外的電路。

6. 如果不添加別的代碼,此時(shí)這兩個(gè)中斷的優(yōu)先級(jí)是外部中斷0 > 外部中斷1,一個(gè)中斷正在執(zhí)行時(shí)來(lái)了另外一個(gè)中斷是不會(huì)打斷前一個(gè)中斷的執(zhí)行過(guò)程,因此需要為中斷設(shè)置優(yōu)先級(jí)。

編寫中斷服務(wù)函數(shù)

7. 編寫兩個(gè)外部中斷對(duì)應(yīng)的中斷服務(wù)函數(shù),確保中斷發(fā)生后能夠產(chǎn)生相應(yīng)的響應(yīng)。外部中斷0和外部中斷1的中斷號(hào)分別是0和2。

8. 在Project菜單的output項(xiàng)目中勾選Create Hex File,點(diǎn)擊編譯按鈕生成.hex文件。

運(yùn)行與仿真

9. 將生成的.hex文件燒入51單片機(jī)進(jìn)行運(yùn)行或者加載到Proteus仿真系統(tǒng)中進(jìn)行仿真。

10. 點(diǎn)擊運(yùn)行按鈕后,可以觀察到第一個(gè)按鍵的狀態(tài)變化會(huì)導(dǎo)致LED燈由滅變亮,而點(diǎn)擊第二個(gè)按鈕則無(wú)論LED燈原先的狀態(tài)如何都會(huì)變成常亮狀態(tài)。

通過(guò)以上步驟,我們可以成功配置并運(yùn)行51單片機(jī)同時(shí)使用兩個(gè)外部中斷,實(shí)現(xiàn)多重中斷處理功能,提高了系統(tǒng)的靈活性和響應(yīng)能力。

標(biāo)簽: