找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機中斷函數(shù)為什么不需要調用就可以執(zhí)行?

[復制鏈接]
跳轉到指定樓層
樓主
ID:320305 發(fā)表于 2018-11-1 20:02 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:387733 發(fā)表于 2018-11-2 08:03 | 只看該作者
一般函數(shù)執(zhí)行條件就是被其他函數(shù)指令調用,而中斷函數(shù)不同,執(zhí)行條件是相應的中斷條件滿足,自動調用的。
回復

使用道具 舉報

板凳
ID:164602 發(fā)表于 2018-11-2 08:16 | 只看該作者
顧名思義,中斷函數(shù),只有中斷發(fā)生時才執(zhí)行的函數(shù)嘛,當然不需要調用了。
中斷函數(shù)由中斷控制寄存器進行控制管理,在程序中,不用申明、不能調用。中斷函數(shù)不是有中斷號嘛,那個就是執(zhí)行中斷函數(shù)的入口,C語言程序沒有感覺,匯編程序就必須知道這個入口的地地址的。
回復

使用道具 舉報

地板
ID:7485 發(fā)表于 2018-11-2 08:43 | 只看該作者
本帖最后由 ahshmj 于 2018-11-2 09:27 編輯

單片機的每個中斷都相當是一個特殊的開關。當你的程序里面允許某個中斷其作用,那么一旦產(chǎn)生中斷信號,單片機就會由硬件作用,將程序直接指向這個中斷的入口(向量)從這里執(zhí)行指令(執(zhí)行完以后會再回到終端產(chǎn)生前的程序處)。這些中斷入口都被集中安排在程序存儲器(ROM)的100H以下。
圖中可以看出,每個中斷向量僅僅數(shù)個字節(jié),不足以安排程序。一般是在這里按一個跳轉指令,跳轉到中斷程序處。

這些對于學習過匯編語言的人來說,是清清楚楚的。由于C語言不直接接觸這一塊,往往是不太了解。
回復

使用道具 舉報

5#
ID:379730 發(fā)表于 2018-11-2 10:35 | 只看該作者
中斷就是異常,系統(tǒng)中斷會自動去查找向量表,向量表里保存了各個中斷的標號,根據(jù)標號會進入相應函數(shù)
回復

使用道具 舉報

6#
ID:317383 發(fā)表于 2020-4-12 23:28 | 只看該作者
它是從中斷入口地址,轉到中斷服務函數(shù)來執(zhí)行的。而跳轉到中斷入口是cpu根據(jù)中斷標志位來判斷是哪個中斷源,從而確定中斷入口地址是哪個。
從匯編的角度來分析,就能夠理解為什么會自動執(zhí)行了
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表