日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

深入探討單片機(jī)異常處理

單片機(jī)匠人 ? 來源:單片機(jī)匠人 ? 作者: 黃忠老師 ? 2021-10-20 10:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ARM處理器中,如果一個程序產(chǎn)生了錯誤并且被處理器檢測到,這是就會產(chǎn)生錯誤異常。

錯誤是怎么發(fā)生的呢?

許多可能的原因都會引起錯誤發(fā)生,比如對于存儲器相關(guān)錯誤,總線系統(tǒng)的異常響應(yīng)可以有以下原因:

訪問的地址非法;

由于傳輸?shù)念愋头欠?,總線的從設(shè)備不接受此次傳輸(從設(shè)備決定)

由于傳輸未使能或初始化,總線的從設(shè)備無法進(jìn)行此次傳輸(例如,如果外設(shè)的時(shí)鐘被關(guān)閉,那么訪問這個外設(shè)時(shí),微控制器就可能會產(chǎn)生錯誤響應(yīng))。

當(dāng)確定了硬件錯誤異常的直接原因以后,我們可能還得花費(fèi)一些時(shí)間來確定問題的根源。例如,總線錯誤可以由很多種情況引發(fā),例如錯誤的指針操作、棧空間損壞、內(nèi)存溢出、非法存儲器映射以及其他原因。

分析錯誤

根據(jù)錯誤類型的不同,通常能夠直接確定引起硬件錯誤異常的指令的位置。要實(shí)現(xiàn)這個目的,就需要知道進(jìn)入硬件錯誤異常時(shí)的寄存器的內(nèi)容,以及異常處理前壓入棧中的寄存器的內(nèi)容。這些值中包含了程序返回地址,通過它也能知道引起錯誤的指令地址。

如果使用了調(diào)試器,那么可在工程中創(chuàng)建硬件錯誤異常處理,并且在其中添加一個用以暫停處理器的斷點(diǎn)指令;或者也可以在硬件錯誤異常處理的開始部分設(shè)置一個斷點(diǎn),這樣當(dāng)硬件錯誤發(fā)生時(shí),處理器就會自動暫停。在處理器由于硬件錯誤暫停后,我們就可以嘗試著按照下面圖的流程對錯誤進(jìn)行定位。

為了給分析提供更多的信息,也可以生成程序映像的匯編代碼,并且利用在棧幀中找到的PC值確定錯誤的位置。如果錯誤的地址為存儲器訪問指令,就應(yīng)該檢查寄存器的值確定存儲器訪問的地址是否合法。除了檢查地址范圍,也應(yīng)該確認(rèn)存儲器的地址是否正確地對齊。

除了壓入棧中的PC值(返回地址),棧幀中也包含了其他有助于調(diào)試的寄存器值。例如,壓入棧的IPSR能夠反映處理器是否在進(jìn)行異常處理,EPSR則代表了處理器狀態(tài)(EPSR的T位為0,則表示錯誤由意外切換至ARM狀態(tài)引起)。

棧中的LR也可能會提供一些信息,例如發(fā)生錯誤的函數(shù)的返回地址,錯誤是否發(fā)生在異常處理中,以及EXC_RETURN的值是否被異常破壞等。

另外,當(dāng)前的寄存器值也可以提供有助于定位錯誤原因的各種信息,除了當(dāng)前棧指針的值,當(dāng)前的鏈接寄存器的值也可能有幫助。如果LR中為非法的EXC_RETURN的值,這就意味著它在前面異常處理中被錯誤地修改了。

CONTROL寄存器也可以提供幫助。在沒有OS的簡單應(yīng)用程序中,進(jìn)程棧指針(PSP)不會被用到,并且CONTROL寄存器會一直保持為0。如果CONTROL寄存器被設(shè)置為0x2(PSP用于線程狀態(tài)),這就意味著LR在之前的異常處理中被錯誤地修改了,或者棧內(nèi)容被破壞導(dǎo)致了EXC_RETURN的值錯誤。

編輯:jq

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

    關(guān)注

    31

    文章

    5620

    瀏覽量

    130458
  • 存儲器
    +關(guān)注

    關(guān)注

    39

    文章

    7758

    瀏覽量

    172280
  • ARM處理器
    +關(guān)注

    關(guān)注

    6

    文章

    361

    瀏覽量

    43393

原文標(biāo)題:單片機(jī)的異常處理

文章出處:【微信號:gh_e7f294a514ca,微信公眾號:單片機(jī)匠人】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    深入理解單片機(jī)的位數(shù)對性能的影響

    單片機(jī)的位數(shù)是指其處理器核心的位寬,通常以比特(bit)為單位。常見的位數(shù)有8位、16位、32位和64位等。位數(shù)越高,處理器能夠處理的數(shù)據(jù)量越大,性能也相應(yīng)提高。以下是對
    發(fā)表于 04-27 15:05

    瑞薩8位單片機(jī)740族:指令與應(yīng)用全解析

    ,受到了眾多電子工程師的青睞。本文將深入探討瑞薩8位單片機(jī)740族的特點(diǎn)、中央處理器、指令系統(tǒng)以及使用注意事項(xiàng),希望能為電子工程師們在設(shè)計(jì)和開發(fā)過程中提供有價(jià)值的參考。 文件下載: R5F211A1DSP#U0.pdf 一、公司
    的頭像 發(fā)表于 04-13 15:05 ?159次閱讀

    Renesas 7544 系列單片機(jī):技術(shù)剖析與設(shè)計(jì)要點(diǎn)

    Renesas 7544 系列單片機(jī):技術(shù)剖析與設(shè)計(jì)要點(diǎn) 在電子設(shè)計(jì)領(lǐng)域,單片機(jī)作為核心控制元件,其性能和特性對整個系統(tǒng)的穩(wěn)定性和功能實(shí)現(xiàn)起著關(guān)鍵作用。今天,我們就來深入探討一下 Renesas
    的頭像 發(fā)表于 04-13 14:20 ?141次閱讀

    深入解析 SANYO LC87F57C8A 8 位單片機(jī):特性、參數(shù)與應(yīng)用考量

    深入解析 SANYO LC87F57C8A 8 位單片機(jī):特性、參數(shù)與應(yīng)用考量 在電子設(shè)計(jì)領(lǐng)域,單片機(jī)作為核心控制元件,其性能和特性對整個系統(tǒng)的設(shè)計(jì)和運(yùn)行起著關(guān)鍵作用。今天,我們將深入探討
    的頭像 發(fā)表于 04-11 10:05 ?442次閱讀

    Infineon XC866 8位單片機(jī):特性、功能與應(yīng)用解析

    單片機(jī)就是其中的佼佼者,它融合了高性能、豐富的外設(shè)和靈活的配置,為工程師們提供了強(qiáng)大的設(shè)計(jì)工具。本文將深入探討XC866的特性、功能和應(yīng)用,幫助電子工程師更好地了解和應(yīng)用這款單片機(jī)。 文件下載: XC8661FRIABKXUM
    的頭像 發(fā)表于 03-30 16:30 ?225次閱讀

    Infineon XC87xCLM 8位單片機(jī):功能特性與設(shè)計(jì)要點(diǎn)解析

    Infineon XC87xCLM 8位單片機(jī):功能特性與設(shè)計(jì)要點(diǎn)解析 在電子設(shè)計(jì)領(lǐng)域,單片機(jī)作為核心部件,其性能和特性對整個系統(tǒng)的穩(wěn)定性和功能實(shí)現(xiàn)起著關(guān)鍵作用。今天,我們就來深入探討英飛凌
    的頭像 發(fā)表于 03-30 14:40 ?290次閱讀

    深入解析Infineon C165 16位單片機(jī):特性、參數(shù)與應(yīng)用指南

    深入解析Infineon C165 16位單片機(jī):特性、參數(shù)與應(yīng)用指南 在當(dāng)今的電子設(shè)計(jì)領(lǐng)域,單片機(jī)作為核心控制元件,廣泛應(yīng)用于各種智能設(shè)備和工業(yè)控制系統(tǒng)中。Infineon
    的頭像 發(fā)表于 03-30 14:20 ?261次閱讀

    Infineon TC1197 32 位單片機(jī):功能、特性與應(yīng)用解析

    的 TC1197 32 位單片機(jī)就是其中一款性能卓越的產(chǎn)品,它基于 TriCore 架構(gòu),融合了 RISC 處理器架構(gòu)、數(shù)字信號處理能力以及豐富的片上存儲器和外設(shè),為嵌入式應(yīng)用帶來了新的活力。本文將
    的頭像 發(fā)表于 03-29 10:35 ?278次閱讀

    深入解析RL78/G1G單片機(jī):特性、規(guī)格與應(yīng)用考量

    深入解析RL78/G1G單片機(jī):特性、規(guī)格與應(yīng)用考量 在電子設(shè)備不斷發(fā)展的今天,單片機(jī)作為核心控制元件,其性能和特性對于產(chǎn)品的成功至關(guān)重要。Renesas的RL78/G1G單片機(jī)以其獨(dú)
    的頭像 發(fā)表于 02-26 17:20 ?960次閱讀

    深入解析英飛凌XC835/836 8位單片機(jī):特性、參數(shù)與應(yīng)用考量

    富的特性,在眾多單片機(jī)產(chǎn)品中脫穎而出。今天,我們就來詳細(xì)解析一下這款單片機(jī),探討它的特點(diǎn)、參數(shù)以及在實(shí)際設(shè)計(jì)中的應(yīng)用考量。 文件下載: XC836T2FRIABFXUMA1.pdf 一、特性概覽 高性能核心 XC835/836采
    的頭像 發(fā)表于 02-10 11:05 ?717次閱讀

    深入探討PCB布局布線的專業(yè)設(shè)計(jì)要點(diǎn)與常見挑戰(zhàn)

    本文深入探討PCB布局布線的專業(yè)設(shè)計(jì)要點(diǎn)與常見挑戰(zhàn),并介紹上海創(chuàng)馨科技如何憑借資深團(tuán)隊(duì)與豐富經(jīng)驗(yàn),為客戶提供從精密布局、優(yōu)化布線到生產(chǎn)制造的一站式高可靠性PCB解決方案。
    的頭像 發(fā)表于 01-04 15:29 ?435次閱讀

    嵌入式與單片機(jī)定義及區(qū)別

    ,我們將深入探討這些不同類型的嵌入式處理器的定義、特性及其在各種應(yīng)用領(lǐng)域中的作用。 我們的單片機(jī),即嵌入式微控制器MCU,是一種高度集成的電子器件。它內(nèi)部融合了ROM/RAM、總線邏輯、定時(shí)/計(jì)數(shù)器
    發(fā)表于 11-17 08:11

    怎么測單片機(jī)系統(tǒng)頻率

    單片機(jī)系統(tǒng)頻率是指單片機(jī)工作時(shí)的時(shí)鐘頻率,它直接影響單片機(jī)的運(yùn)行速度和處理能力,準(zhǔn)確測量系統(tǒng)頻率對單片機(jī)應(yīng)用開發(fā)、程序調(diào)試和性能優(yōu)化具有重要
    的頭像 發(fā)表于 07-25 11:39 ?1106次閱讀

    單片機(jī)定制開發(fā)的設(shè)計(jì)思路

    單片機(jī)定制開發(fā)是根據(jù)特定場景和功能需求,量身打造符合要求的單片機(jī)應(yīng)用方案,其設(shè)計(jì)過程需要兼顧技術(shù)可行性與實(shí)際應(yīng)用價(jià)值,涉及多個關(guān)鍵環(huán)節(jié)。 一、需求分析階段 單片機(jī)定制開發(fā)的第一步是深入
    的頭像 發(fā)表于 07-17 11:14 ?946次閱讀
    <b class='flag-5'>單片機(jī)</b>定制開發(fā)的設(shè)計(jì)思路

    給予單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)

    在工業(yè)生產(chǎn)、智能家居等領(lǐng)域,溫度的穩(wěn)定控制至關(guān)重要,基于單片機(jī)的溫度控制系統(tǒng)憑借靈活、高效的特點(diǎn)被廣泛應(yīng)用,其設(shè)計(jì)原理與實(shí)現(xiàn)方式值得深入探討。 基于單片機(jī)的溫度控制系統(tǒng)主要由單片機(jī)、溫
    的頭像 發(fā)表于 07-16 10:57 ?852次閱讀
    潞西市| 灵川县| 卓尼县| 安乡县| 兴隆县| 柯坪县| 浦江县| 德钦县| 南召县| 塔城市| 天峨县| 开鲁县| 黄石市| 安阳市| 阿合奇县| 镇赉县| 山东| 启东市| 礼泉县| 高安市| 保靖县| 尉犁县| 东光县| 彰化县| 临海市| 清徐县| 太保市| 临高县| 吉林市| 墨玉县| 油尖旺区| 武城县| 伊川县| 兴和县| 定襄县| 永春县| 大关县| 漳浦县| 蒙山县| 翁牛特旗| 三台县|