www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 閱讀數(shù):1742啟動代碼通常都燒寫在flash中,它是系統(tǒng)一上電就執(zhí)行的一段程序,它運(yùn)行在任何用戶c代碼之前。上電后,arm處理器處于arm態(tài),運(yùn)行于管理模式,同時系統(tǒng)所有中斷被禁止,pc到地址0處取指令執(zhí)行。一個可執(zhí)

啟動代碼通常都燒寫在flash中,它是系統(tǒng)一上電就執(zhí)行的一段程序,它運(yùn)行在任何用戶c代碼之前。上電后,arm處理器處于arm態(tài),運(yùn)行于管理模式,同時系統(tǒng)所有中斷被禁止,pc到地址0處取指令執(zhí)行。一個可執(zhí)行映像文件必須有個入口點,而能放在rom起始處的映像文件的入口地址也必須設(shè)置為0.在匯編語言中,我們已經(jīng)說過怎樣定義一個程序的入口點,當(dāng)工程中有多個入口點時,需要在連接器中使用-entry指出程序的入口點。如果用戶創(chuàng)建的程序中,包含了main函數(shù),則與c庫初始化代碼對應(yīng)的也會有個入口點。

總的來說,啟動代碼主要完成兩方面的工作,一是初始化執(zhí)行環(huán)境,例如中斷向量表、堆棧、i/o等;二是初始化c庫和用戶應(yīng)用程序。在第一階段,啟動代碼的人物可以描述為:

(1)建立中斷向量表;

(2)初始化存儲器;

(3)初始化堆棧寄存器;

(4)初始化i/o以及其他必要的設(shè)備;

(5)根據(jù)需要改變處理器的狀態(tài)。

-->建立中斷向量表

初始化代碼必須建立好中斷向量表,以備應(yīng)用程序后續(xù)使用。如果系統(tǒng)的地址0處是rom,則中斷向量表直接是一些跳轉(zhuǎn)指令就可以了,他們轉(zhuǎn)到相應(yīng)的中斷處理函數(shù)執(zhí)行。如果系統(tǒng)的0地址處不是rom,則中斷向量表是通過動態(tài)的方式創(chuàng)建的,這主要是通過存儲器映射的方式來實現(xiàn):即上電后,rom中的地址被映射到地址0,它首先開始執(zhí)行以便完成環(huán)境的初始化,最重要的它會將中斷向量表拷貝到ram中,然后通過地址映射將ram地址映射為0,這樣ram中的中斷向量就可以使用了。

-->初始化存儲系統(tǒng)

對于有mmu的處理器,需要正確初始化mmu,沒有的只需正確初始化存儲控制器,為每個bank配置正確的參數(shù)就可以了。

-->初始化堆棧指針

初始化代碼必須初始化處理器各個模式下的堆棧指針,所有系統(tǒng)或用戶程序會涉及的處理器模式對應(yīng)的堆棧指針都應(yīng)該初始化。通常未定義指令和預(yù)取指終止異常對應(yīng)模式的堆棧指針不需要配置,除非用戶需要使用它們作為調(diào)試使用。

-->初始化堆棧指針

初始化代碼必須初始化處理器各種模式下的堆棧指針,所有系統(tǒng)或用戶程序會涉及的處理器模式對應(yīng)的堆棧指針都應(yīng)該被初始化。通常未定義指令和預(yù)取指終止異常對應(yīng)模式的堆棧指針不需要配置,除非用戶需要使用它們作為調(diào)試使用。

-->初始化i/o以及其他必要設(shè)備

關(guān)鍵的輸入輸出模塊必須在中斷打開之前被配置,例如看門狗,否則它們會在系統(tǒng)啟動后產(chǎn)生復(fù)位信號。

-->改變處理器狀態(tài)和模式

啟動代碼運(yùn)行時,處理器狀態(tài)認(rèn)為管理模式,如果用戶程序需要運(yùn)行在用戶模式,可以切換轉(zhuǎn)入用戶模式;所有處理器上電后是處于arm狀態(tài)的,如果需要改變處理器狀態(tài),也可以在啟動代碼里切換到thumb態(tài)。

在執(zhí)行環(huán)境建立起來后,接下來就是應(yīng)用程序的初始化,簡單點就是講用戶程序加載到他們相應(yīng)的運(yùn)行地址,初始化數(shù)據(jù)區(qū)等,這個階段完成后,才能進(jìn)入用戶最終的c代碼區(qū)域。用戶應(yīng)用程序的初始化過程包括:將rw段的數(shù)據(jù)拷貝到他們的運(yùn)行地址處,同時在rw段后面初始化相應(yīng)大小的zi段數(shù)據(jù),把他們初始化為0,使用了庫函數(shù)的程序(工程中有main函數(shù))是在庫函數(shù)_main中自動完成這些工作的。應(yīng)該還沒玩,但小編找不到下文了sorry...

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉