那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

單片機的主程序和中斷程序是怎么樣運行的

Wildesbeast ? 來源:今日頭條 ? 作者:電子產(chǎn)品設計方案 ? 2020-01-04 10:11 ? 次閱讀

中斷用于執(zhí)行優(yōu)先級更高的任務

中斷顧名思義是“中途打斷”的意思。舉一個簡單的例子:您正在和部門的同事在開會,突然老板進來找你,你就得暫停會議,離開會議室,跟老板談完重要的事情,再重新回來會議室繼續(xù)會議。單片機的中斷就是類似的一個過程,發(fā)生中斷時,就會打斷正在執(zhí)行的主程序,先處理完中斷任務,返回主程序繼續(xù)運行,當然在執(zhí)行中斷函數(shù)之前,單片機需要把關鍵的數(shù)據(jù)保存下來,中斷函數(shù)執(zhí)行完成后才可以正確的恢復主函數(shù)運行。

單片機的主程序是怎么運行的?

其實單片機的主程序其實是一個主函數(shù),我們一般命名為Main,主函數(shù)會從上住下運行的,執(zhí)行到最后又返回上面繼續(xù)運行。我們用C語言編寫Main主函數(shù)時,會用到while(1)讓主程序不斷的循環(huán)。

由此可見,主程序里的各種功能是按著順序來執(zhí)行的,誰也不能插隊。那怎么樣來實現(xiàn)中途打斷插隊呢?這就需要用到中斷了。

單片機的中斷程序是怎么執(zhí)行的?

單片機有著各種和樣的中斷功能,比如定時器中斷、外部中斷、串口中斷等等。比如我們要實時檢測一個按鍵的按下事件,如果在主程序中進行掃描,就會有一定的延時,需要等主程序運行到按鍵掃描的程序時才可以檢測到按鍵的狀態(tài)。

中斷是單片機一個重要的功能,單片機會給所有中斷功能分配一個中斷向量(有些中斷功能會共用一個中斷向量)。當開啟了相應的中斷功能并且發(fā)生中斷時,就會自動跳轉(zhuǎn)到對應的中斷向量運行。在中斷向量處,我們就可以調(diào)用我們編寫好的中斷函數(shù),處理相關的事件就可以了。如果開啟了中斷嵌套,在中斷函數(shù)執(zhí)行過程發(fā)生優(yōu)先級更高的中斷,還可以暫停正在運行的中斷函數(shù),去執(zhí)行更高級別的中斷程序。

中斷函數(shù)為什么不在主函數(shù)中運行?

主函數(shù)是一個函數(shù),中斷函數(shù)也是一個函數(shù),它們是獨立的函數(shù),所以是分開的。上面已經(jīng)說得很清楚了,中斷是打斷正在運行的函數(shù)去執(zhí)行優(yōu)先級更高的函數(shù),所以中斷就是打斷主函數(shù)去執(zhí)行更高優(yōu)先級別的中斷函數(shù)的一個過程。

在發(fā)生中斷時,單片機會自動跳轉(zhuǎn)到對應的中斷向量,在中斷向量處,我們需要調(diào)用中斷函數(shù)來處理中斷事件,如果中斷事件的處理程序放在主函數(shù)中,那么這些處理中斷事件的程序就不是一個獨立的函數(shù)了,就沒法調(diào)用了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6043

    文章

    44622

    瀏覽量

    638535
  • 中斷
    +關注

    關注

    5

    文章

    900

    瀏覽量

    41751
  • 函數(shù)
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62971
收藏 人收藏

    評論

    相關推薦

    單片機外部中斷程序下載

    單片機外部中斷程序和電路圖,通過按鍵控制計數(shù)和清零操作
    發(fā)表于 05-21 10:57 ?0次下載
    <b class='flag-5'>單片機</b>外部<b class='flag-5'>中斷</b><b class='flag-5'>程序</b>下載

    51單片機中斷程序資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是51單片機中斷程序資料免費下載。
    發(fā)表于 04-08 08:00 ?22次下載
    51<b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b><b class='flag-5'>程序</b>資料免費下載

    51單片機中斷程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是51單片機中斷程序免費下載。
    發(fā)表于 08-26 17:30 ?8次下載
    51<b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b><b class='flag-5'>程序</b>免費下載

    Arduino中的中斷函數(shù)詳細說明

    單片機中斷可概述為:由于某一隨機事件的發(fā)生,單片機暫停原程序運行,轉(zhuǎn)去執(zhí)行另一程序(隨機事件
    發(fā)表于 08-20 17:31 ?1次下載
    Arduino中的<b class='flag-5'>中斷</b>函數(shù)詳細說明

    單片機中斷程序如何運行

    單片機中斷就是類似的一個過程,發(fā)生中斷時,就會打斷正在執(zhí)行的主程序,先處理完中斷任務,返回主程序
    的頭像 發(fā)表于 01-27 17:11 ?1.1w次閱讀
    <b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b><b class='flag-5'>程序</b>如何<b class='flag-5'>運行</b>

    為什么單片機主程序是死循環(huán)

    任何一個可用程序都必然是死循環(huán)程序,這不僅僅是指單片機程序。因為任何微處理器系統(tǒng)一旦開機,系統(tǒng)都在處理內(nèi)部事件和外設響應,這個過程是一個循環(huán)過程,除非關機才能結(jié)束這個死循環(huán)
    發(fā)表于 07-15 17:38 ?5433次閱讀

    單片機主程序是如何執(zhí)行的

    我們從單片機的工作原理可以看出單片機是執(zhí)行程序來完成我們所要求的任務的,在單片機中有很多子程序單片機
    的頭像 發(fā)表于 10-30 17:28 ?1.1w次閱讀
    <b class='flag-5'>單片機</b>的<b class='flag-5'>主程序</b>是如何執(zhí)行的

    【51單片機】有關單片機執(zhí)行中斷無法恢復主程序探討

    Author: Manba Cople專業(yè):IOT說明:記錄和輸出學習內(nèi)容文章目錄問題思考修改進階聲明問題??最近在給小伙伴培訓單片機中斷時,小伙伴寫了一段中斷的代碼(代碼如下),出現(xiàn)每次執(zhí)行完
    發(fā)表于 11-22 12:06 ?12次下載
    【51<b class='flag-5'>單片機</b>】有關<b class='flag-5'>單片機</b>執(zhí)行<b class='flag-5'>中斷</b>無法恢復<b class='flag-5'>主程序</b>探討

    MCS-51單片機中斷系統(tǒng)

    ,CPU暫時中斷當前程序而轉(zhuǎn)去執(zhí)行相應的處理程序,待處理程序執(zhí)行完畢后,CPU再繼續(xù)執(zhí)行原來被中斷程序
    發(fā)表于 11-23 16:20 ?7次下載
    MCS-51<b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b>系統(tǒng)

    單片機課設-中斷程序

    proteus單片機中斷程序利用單片機的P0口做輸出接8只發(fā)光二極管,P3.2引腳接獨立按鍵產(chǎn)生外部中斷信號。編寫
    發(fā)表于 01-13 15:02 ?2次下載
    <b class='flag-5'>單片機</b>課設-<b class='flag-5'>中斷</b><b class='flag-5'>程序</b>

    謹慎處理單片機中斷中斷等價于比主程序優(yōu)先級更高的線程

    ?有些小伙伴喜歡在單片機中斷里做任務,殊不知可能會因此遇到棘手的bug,然后查半天查不出個所以然。本文為了糾正這個不良習慣,對單片機中斷進行闡述。?無
    發(fā)表于 01-14 14:54 ?2次下載
    謹慎處理<b class='flag-5'>單片機</b><b class='flag-5'>中斷</b>,<b class='flag-5'>中斷</b>等價于比<b class='flag-5'>主程序</b>優(yōu)先級更高的線程

    單片機里的程序是如何運行

    我們想要理解單片機是如何運行程序的,我們首先需要了解單片機的組成,我們這里以80C51單片機為例來理解程序
    的頭像 發(fā)表于 02-17 10:47 ?4603次閱讀
    <b class='flag-5'>單片機</b>里的<b class='flag-5'>程序</b>是如何<b class='flag-5'>運行</b>?

    51單片機中斷程序示例

    51單片機中斷程序示例
    發(fā)表于 05-17 18:03 ?0次下載

    基于單片機的外部中斷實驗 中斷系統(tǒng)知識介紹

    單片機中有兩個重要的概念分別叫做中斷中斷系統(tǒng),那么他們分別又代表什么意義呢?當單片機CPU正在運行
    的頭像 發(fā)表于 07-26 17:23 ?2896次閱讀
    基于<b class='flag-5'>單片機</b>的外部<b class='flag-5'>中斷</b>實驗 <b class='flag-5'>中斷</b>系統(tǒng)知識介紹

    單片機中斷機制

    單片機中斷機制是一種重要的處理方式,它允許單片機在執(zhí)行主程序的過程中,能夠暫停當前任務,轉(zhuǎn)而處理外部或內(nèi)部緊急事件。這種機制極大地提高了系統(tǒng)的響應速度和處理能力,使得
    的頭像 發(fā)表于 10-17 18:03 ?965次閱讀
    赌博百家乐判断决策| 百家乐赌场方法| 百家乐赢钱公式| 大世界百家乐赌场娱乐网规则| 百家乐官网最佳注码法| 大发888平台| 中骏百家乐官网的玩法技巧和规则| 泗阳县| 大发888缺casino组件| 视频百家乐信誉| 闲和庄百家乐官网的玩法技巧和规则 | 鑫鑫百家乐的玩法技巧和规则 | 百家乐官网真钱送彩金| 188比分直播网| 太阳城娱乐官方网站| 澳门百家乐怎赌才能赚钱| 大发888官方df888gwyxpt| 百家乐有多少种游戏| 百家乐官网开闲的几率多大| 娱乐城免费送彩金| 威尼斯人娱乐网假吗| 网上百家乐怎么赌能赢钱| 24向风水| 百家乐官网轮盘一体机厂家| 百家乐官网网站制作| 真人百家乐官网破解软件下载| 香港六合彩报| bet365百科| 大发888游戏下载投注| 互博百家乐的玩法技巧和规则| 百家乐大轮转| 百家乐tt娱乐网| 百家乐娱乐网77scs| 百家乐反缆公式| 广州百家乐娱乐场开户注册| 百家乐三国| 百家乐在线洗码| 长沙百家乐的玩法技巧和规则 | 九运2024年-2043年| 百家乐视频象棋| 百家乐声音不印网|