ARM處理器的工作模式 ARM處理器狀態 ARM微處理器的工作狀態一般有兩種,并可在兩種狀態之間切換:第一種為ARM狀態,此時處理器執行32位的字對齊的ARM指令;第二種為Thumb狀態,此時處理器執行16位的、半字對齊的Thumb指令。在程序的執行過程中,微處理器可以隨時在兩種工作狀態之間切換,并且,處理器工作狀態的轉變并不影響處理器的工作模式和相應寄存器中的內容。但ARM微處理器在開始執行代碼時,應該處于ARM狀態。 ARM處理器狀態 進入Thumb狀態:當操作數寄存器的狀態位(位0)為1時,可以采用執行BX指令的方法,使微處理器從ARM狀態切換到Thumb狀態。此外,當處理器處于Thumb狀態時發生異常(如IRQ、FIQ、Undef、Abort、SWI等),則異常處理返回時,自動切換到Thumb狀態。 進入ARM狀態:當操作數寄存器的狀態位為0時,執行BX指令時可以使微處理器從Thumb狀態切換到ARM狀態。此外,在處理器進行異常處理時,把PC指針放入異常模式鏈接寄存器中,并從異常向量地址開始執行程序,也可以使處理器切換到ARM狀態。ARM處理器模式 ARM微處理器支持7種運行模式,分別為:用戶模式(usr):ARM處理器正常的程序執行狀態。快速中斷模式(fiq):用于高速數據傳輸或通道處理。外部中斷模式(irq):用于通用的中斷處理。管理模式(svc):操作系統使用的保護模式。數據訪問終止模式(abt):當數據或指令預取終止時進入該模式,可用于虛擬存儲及存儲保護。系統模式(sys):運行具有特權的操作系統任務。定義指令中止模式(und):當未定義的指令執行時進入該模式,可用于支持硬件協處理器的軟件仿真。ARM處理器模式 ARM微處理器的運行模式可以通過軟件改變,也可以通過外部中斷或異常處理改變。大多數的應用程序運行在用戶模式下,當處理器運行在用戶模式下時,某些被保護的系統資源是不能被訪問的。 除用戶模式以外,其余的所有6種模式稱之為非用戶模式,或特權模式;其中除去用戶模式和系統模式以外的5種又稱為異常模式,常用于處理中斷或異常,以及需要訪問受保護的系統資源等情況。ARM寄存器 ARM處理器共有37個寄存器。其中包括:31個通用寄存器,包括程序計數器(PC)在內。這些寄存器都是32位寄存器。以及6個32位狀態寄存器。 關于寄存器這里就不詳細介紹了,有興趣的人可以上網找找,很多這方面的資料。異常處理 當正常的程序執行流程發生暫時的停止時,稱之為異常,例如處理一個外部的中斷請求。在處理異常之前,當前處理器的狀態必須保留,這樣當異常處理完成之后,當前程序可以繼續執行。處理器允許多個異常同時發生,它們將會按固定的優先級進行處理。當一個異常出現以后,ARM微處理器會執行以下幾步操作:進入異常處理的基本步驟:將下一條指令的地址存入相應連接寄存器LR,以便程序在處理異常返回時能從正確的位置重新開始執行。將CPSR復制到相應的SPSR中。根據異常類型,強制設置CPSR的運行模式位。強制PC從相關的異常向量地址取下一條指令執行,從而跳轉到相應的異常處理程序處。如果異常發生時,處理器處于Thumb狀態,則當異常向量地址加載入PC時,處理器自動切換到ARM狀態。 ARM微處理器對異常的響應過程用偽碼可以描述為: R14_ = Return LinkSPSR_= CPSRCPSR[4:0] = Exception Mode NumberCPSR[5] = 0 ;當運行于 ARM 工作狀態時If == Reset or FIQ then;當響應 FIQ 異常時,禁止新的 FIQ 異常CPSR[6] = 1PSR[7] = 1PC = Exception Vector Address異常處理完畢之后,ARM微處理器會執行以下幾步操作從異常返回:將連接寄存器LR的值減去相應的偏移量后送到PC中。將SPSR復制回CPSR中。若在進入異常處理時設置了中斷禁止位,要在此清除。
上傳時間: 2013-11-15
上傳用戶:hanbeidang
針對人行徑方向測量的紅外探測系統需求,提出了實現多通道模數轉換器(ADC)的一種新方法,采用了雙片可獨立工作的帶有8 通道ADC 的單片機,基于雙片單片機之間的SMBus 通訊可實現16 通道ADC 系統,從而可簡化后端處理電路,提高系統的數據處理能力,并取得較好的數據采集的同步性。
上傳時間: 2013-10-09
上傳用戶:jiiszha
S51編程器制作包:自制AT89S51編程器教程AT89S51芯片的日漸流行,對我們單片機初學者來說是一個大好消息。因為做個AT89S51編程器非常容易,而且串行編程模式更便于做成在線編程器,給頻繁燒片,調試帶來了巨大的方便。 電路: 只要焊13根線就可以搞定這個電路?;驹恚篟ST置高電平,然后向單片機串行發送 編程命令。P1.7(SCK)輸入移位脈沖,P1.6(MISO)串行輸出,P1.5(MOSI)串行輸入(要了解詳細編程原理可以去看AT89S51的數據手冊)。使用并口發出控制信號,74373只是用于信號轉換,因為并口直接輸出高電平的電壓有點沒到位,使用其他芯片也可以,還有人提出直接接電阻。并口引腳1控制P1.7,引腳14控制P1.5,引腳15讀P1.6,引腳16控制RST,引腳17接74373 LE(鎖存允許),18-25這些引腳都可以接地。建議在你的單片機系統板上做個6芯的接口。注意:被燒寫的單片機一定是最小系統(單片機已經接好電源,晶振,可以運行),VCC,GND是給74373提供電源的。 還有一個方案:使用串口+單片機,這個方案已經用了半年了。電路稍微麻煩一點,速度比較快,而且可以燒AT89C51等等。其實許多器件編程原理差不多,由于我沒太多時間研究器件手冊,更沒有MONEY買一堆芯片來測試,所以只實現了幾個最常用單片機編程功能(AT89C51,C52,C55,AT89S51,S52,S53)。如果要燒寫其他單片機,你可以直接編寫底層控制子程序(例如,寫一個單元,讀一個單元,擦除ROM的子程序)。如果有需要,我可以在器件選擇欄提供一個“X-CHIP”的選擇,“X-CHIP”的編程細節將由用戶自己去實現。當你仔細閱讀器件手冊后,會發現實現這些子程序其實好容易,這也是初學者學單片機編程的好課題。如果成功了會極大的提高你學單片機的積極性。 軟件: 這個軟件的通信,控制部分早在半年前就完成了,這回只是換了個界面和加入并口下載線的功能,希望你看到這個軟件不會想吐。使用很簡當,有一點特別,當你用鼠標右鍵點擊按鈕后,可以把相關操作設置為自動模式(只有打開文件,擦除芯片,寫FLASH ROM,讀FLASH ROM,效驗數據 可以設置),點擊‘自動完成’后會依次完成這些操作,并在開始時檢測芯片。當“打開文件”設為自動后,第2次燒寫同一個文件時不必再去打開文件,軟件會自動刷新緩沖。軟件在WIN XP,WIN 2000可以使用(管理員登陸的),在WIN 98 ,WIN ME使用并口模式時會更快些。這個軟件同時支持串口編程器和并口下載線。操作正常結束后會有聲音提示。如果沒有聲卡或聲卡爛了,則聲音會從機箱揚聲器中發出。注意:記得在CMOS設置中把并口設為ECP模式。就這些東西,應該夠詳細吧,還有什么問題或遇到什么困難可以聯系我,軟件出現什么問題一定要通知我修正。祝你一次就搞定。
上傳時間: 2014-01-24
上傳用戶:13162218709
介紹一種家用電熱水循環采暖洗浴器的組成及其控制系統的軟、硬件設計方法。該系統采用納米材料加熱體,利用單片機對水溫、水位、房間溫度等參數進行檢測,并進行超溫、缺水、漏電等保護,提高了系統的可靠性。
上傳時間: 2013-11-24
上傳用戶:18707733937
可編程控制器PLC以抗擾性強、可靠性高和編程靈活等特點在工業上得到廣泛應用,為了優化PLC系統設計,介紹一種基于MCS.51單片機的PLC仿真器,并給出了硬、軟件設計與實現方法。編程設計主要包括監控主程序、與主機通訊子程序及用戶指令解釋子程序等模塊設計,該設計方案簡潔,輸入/輸出接點可擴展,為PLC系統設計及實驗教學提供了理論數據和途徑。
上傳時間: 2013-10-23
上傳用戶:chendawei
單片機溫度采集器與PC104分站的串行通信:用PC104 模塊組建的礦井變電所采集分站,具有強大的以太網和CAN 總線通信功能。在PC104模塊底板上,設計了一個基于89C2051 單片機的溫度采集器,用于采集溫度傳感器監測值并通過串口將該監測值傳送到PC104 分站。該設計簡化了變電所環境溫度監測的軟、硬件,并且編程簡單,充分利用了PC104 的空閑串口資源。關鍵詞:溫度采集器; 單片機; 串行通信; PC104
上傳時間: 2013-11-24
上傳用戶:wangchong
模/數轉換是現代測控電路中非常重要的環節,它有并行和串行兩種數據輸出形式。目前,模/數轉換器ADC已被做成大規模集成電路,并有多種型號和種類可供選擇。本文介紹了AD7654的性能特點,并設計了AD7654與單片機ADuC848的接口電路,同時給出了軟件流程和相應的匯編源程序。
上傳時間: 2014-01-25
上傳用戶:hanhanj
用EasyFPGA030開發套件,游戲電路是模擬乒乓球比賽,可供兩人游戲。甲乙各持一按鍵作為球拍,實驗板上一行16只發光二極管為乒乓球運動軌跡,用一只亮點代表乒乓球,它可以在此軌跡上左右移動。擊球位置應在左右端第2只發光二極管位置,若擊球鍵恰好當球到達擊球位置時按下,則發出短短的擊球聲,球即向相反方向移動,若按鍵偏早或偏晚,則擊球無效,無球聲發出,球將繼續向前運行至移位寄存器末端,并停止在該位置上不動也可以設計為亮點熄滅,此時判擊球者失敗,記分板上給勝球者加1分,再經過1s后,亮點自動按乒乓球比賽規則移到發球者的擊球位置上,發球者按動擊球按鍵,下一次比賽開始。
標簽: 模擬
上傳時間: 2013-11-12
上傳用戶:hopy
看門狗定時器的工作原理:WDT 工作原理使能時,WDT 將遞增,直到溢出,或稱“超時”。除非處于休眠或空閑模式,WDT 超時會強制器件復位。為避免WDT 超時復位,用戶必須定期用PWRSAV 或CLRWDT 指令將看門狗定時器清零。如果WDT 在休眠或空閑模式下超時,器件將喚醒并從PWRSAV 指令執行處繼續執行代碼。在上述兩種情況下,WDTO 位(RCON<4>)都會置1,表示該器件復位或喚醒事件是由于WDT超時引起的。如果WDT 將CPU 從休眠或空閑模式喚醒,“休眠”狀態位(RCON<3>)或“空閑”狀態位(RCON<2>)也會置1,表示器件之前處于省電模式。9.2.1 使能和禁止WDT通過FWDTEN(CW1<7>)配置位可將WDT 使能或禁止。FWDTEN 配置位置1 時,使能WDT。這是已擦除器件的默認值。關于閃存配置字寄存器的更多詳細信息,請參見器件數據手冊。
上傳時間: 2014-01-20
上傳用戶:mikesering
信息技術的日新月異要求發展新的技術來提高熱量計量收費的可靠性,改變過去熱力站數據采集靠人工抄表的落后方法,以實現集中供熱系統管理的全面自動化。便攜式查表器是一種新興的現場數據采集技術。本文所設計的查表器通過RS485 接口從現場使用的熱量計中遠距離采集數據,它采用Intel 80C196 作為CPU, 240×128 點陣的液晶作為顯示器,并擴展了256K 的非易失性RAM 來保存30 個熱力站的所有運行數據。信息革命沖擊著各行各業,傳統的數據采集方式已不適應信息時代的需要。常規的現場儀表數據采集方法要靠查表員手工來完成。有些儀表安裝在危險場所,如在地下的熱水管道系統,查表員有時會冒生命危險。目前公用事業的發展,迫切要求改變傳統的數據采集方式,以更方便、更快捷的服務來適應信息時代的到來。微處理器、存儲器、VLSI, A/D 轉換等技術的迅速發展,使得現場儀表與控制中心之間傳遞的不再是傳統的模擬信號,而是數字信號。數字信號不但避免了模擬信號傳輸過程中存在的精度降低、信號衰減、易引入干擾信號等的不足,而且顯著提高了信號的可靠性,它為采用新的數據采集技術提供了可能。
上傳時間: 2013-11-17
上傳用戶:tzl1975