在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 做ARM裸機C與程序時的注意事項

            做ARM裸機C與程序時的注意事項

            作者: 時間:2016-11-21 來源:網(wǎng)絡(luò) 收藏
            在設(shè)置好芯片類型,弄好芯片寄存器的宏定義后,接下來的編程就是走C的標(biāo)準(zhǔn)程序設(shè)計了。想法正確,但是ARM程序設(shè)計與以前大家學(xué)的8051是有差別的。
            以前在KeilC51里面,在建立完工程之后,Keil會提示是否加入startup.a51的文件,這個文件用來初始化51芯片的各個硬件資源。如果不加,往往程序會運行出錯。
            對于ARM裸機,也一樣,只不過RVDS編譯器不會給你提供初始化的文件,都要自己寫。一般工程文件為匯編和C的混合。因為現(xiàn)在的學(xué)習(xí)還不夠深入,所以目前也只清楚一些簡單的程序設(shè)計框架。
            例如,一般在工程文件中加一個init.s的匯編文件。里面僅有一句用于跳轉(zhuǎn)的匯編語句。假如你的C語言的入口函數(shù)為main,那么這句語句就是: BL main
            init.s的寫法,一般為如下;
            AREA init , CODE ,READONLY //段名,很重要,因為在設(shè)置起始段時有用
            GLOBAL start //應(yīng)該設(shè)置為全局的,在設(shè)置入口點的時候有用,否則編譯器找不到
            IMPORT main //由于main函數(shù)是外部函數(shù),所以要用import來聲明
            ENTRY
            start
            BL main //跳轉(zhuǎn)到了C語言中的main函數(shù)了,也可以是其它函數(shù)
            End
            寫好“引導(dǎo)”匯編程序及C語言程序后,還要進行設(shè)置。在Edit菜單下的 Debug setting 或者 Release setting(關(guān)鍵看你設(shè)置的是調(diào)試還生成)的
            link選項中選擇RealView Linker
            設(shè)置好自己程序的程序的開始的源地址后,再設(shè)置Layout菜單下的
            Place at begining of image(放置鏡像的起始文件)
            這里用的是目標(biāo)文件,用于鏈接時放在鏡像文件的最開始,設(shè)置如下。意思是將init.o目標(biāo)文件的init段放在鏡像文件的最開始。
            這些設(shè)置完成之后,還必須設(shè)置入口點,RealView Linker里面可以看到下面的命令行,加入
            --entry=start 就可以了,現(xiàn)在編譯鏈接后,在Axd里面就可以通過Jtag調(diào)試了。

            如果start在匯編中不是設(shè)置的global,那么鏈接的時候,鏈接器會警告無法找到入口。
            也可以不用加匯編作“引導(dǎo)”,但是在設(shè)置的時候,你要清楚C轉(zhuǎn)為匯編后,你要用的段在哪里,入口函數(shù)在哪里。



            關(guān)鍵詞: ARM裸機C與程序注意事

            評論


            技術(shù)專區(qū)

            關(guān)閉