衡阳派盒市场营销有限公司

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次閱讀
    百家乐官网十佳投庄闲法| 万豪网| 沙巴百家乐现金网| 澳门百家乐官网的故事| 太阳城娱乐城官方网| 百家乐出牌规| 百家乐官网老千| 澳门百家乐官网鸿福厅| 17pk棋牌官方下载| 模拟百家乐的玩法技巧和规则| 百家乐官网视频游戏盗号| 大发888娱乐城下载| 运城百家乐蓝盾| 真人百家乐官网| 瑞昌市| 百家乐正网| 百家乐视频麻将游戏| 百家乐官网伴侣| 百家乐官网有赢钱公式吗| 188比分| 威尼斯人娱乐平台代理| 最好的百家乐游戏平台1| 百家乐官网倍投软件| 有破解百家乐官网仪器| 宁陵县| 边城棋牌中心| 百家乐俄罗斯轮盘转盘套装| 网上百家乐赌场| 海尔百家乐官网的玩法技巧和规则| 百家乐官网筹码防伪定制| 永利高投注网| 棋牌游戏注册送6元| 威尼斯人娱乐怎么样| 怎么看百家乐路单| 3U百家乐娱乐城| 赌王百家乐官网的玩法技巧和规则| 丘北县| 在线娱乐城注册送彩金| 网上百家乐注册彩金| 澳门百家乐官网单注下| 百家乐官网上海代理|