1. gzyueqian
      18529173453

      基于ARM的嵌入式Linux開發(fā)平臺(tái)

      更新時(shí)間: 2007-06-21 09:37:51來源: 粵嵌教育瀏覽量:861

        在進(jìn)行嵌入式系統(tǒng)的開發(fā)時(shí),首先面臨的難題就是如何挑選一個(gè)適合自己的開發(fā)平臺(tái)。ARM系列處理器是專門針對(duì)嵌入式設(shè)備設(shè)計(jì)的,是目前構(gòu)造嵌入式系統(tǒng)硬件平臺(tái)的。本文將介紹如何挑選適合實(shí)際需要的嵌入式開發(fā)平臺(tái),如何構(gòu)建實(shí)用的開發(fā)環(huán)境,以及如何邁出嵌入式Linux系統(tǒng)開發(fā)的步。

        選用指南 

         在進(jìn)行嵌入式系統(tǒng)的開發(fā)之前,首先必須要選擇恰當(dāng)?shù)拈_發(fā)平臺(tái)。對(duì)于經(jīng)驗(yàn)豐富的開發(fā)者來說,當(dāng)然可以自己動(dòng)手組裝硬件,然后挑選合適的嵌入式Linux系統(tǒng),將其移植到開發(fā)平臺(tái)上。但對(duì)于初學(xué)者來說,可能更好的辦法是購(gòu)買硬件廠商已經(jīng)做好的開發(fā)板,將精力集中在應(yīng)用程序的開發(fā)上。

        雖然ARM微處理器有多達(dá)十幾種的內(nèi)核結(jié)構(gòu)、幾十個(gè)芯片生產(chǎn)廠家和眾多的功能組合,但這也給廣大嵌入式開發(fā)人員在確定方案時(shí)帶來了一定的困難。客觀上講,嵌入式系統(tǒng)一般都是量身打造的。開發(fā)人員必須依據(jù)客戶需求選擇合適的軟硬件平臺(tái),否則的話要么無法完成所要求的功能,要么就會(huì)造成資源的浪費(fèi),挑選出一個(gè)合適的方案確實(shí)很不容易。初學(xué)者在做決定時(shí)不妨借鑒下面的一些經(jīng)驗(yàn)。

        ARM公司設(shè)計(jì)了一系列的微處理器內(nèi)核結(jié)構(gòu),以適應(yīng)不同應(yīng)用領(lǐng)域的需要。如果用戶希望使用Windows CE或標(biāo)準(zhǔn)Linux等操作系統(tǒng)來減少軟件開發(fā)時(shí)間,就需要選用ARM720T以上帶有內(nèi)存管理單元(MMU)的ARM芯片,如ARM720T、ARM920T、ARM922T、ARM946T等。但對(duì)于ARM7TDMI這類沒有MMU的微處理器來說,只能運(yùn)行像UcLinux那樣不需要MMU支持的操作系統(tǒng),而無法運(yùn)行標(biāo)準(zhǔn)的Linux。

        微處理器的工作頻率在很大程度上決定了其運(yùn)算能力的高低。ARM7系列微處理器的典型處理速度為0.9MIPS/MHz,常見的ARM7芯片的系統(tǒng)主時(shí)鐘為20MHz到133MHz;ARM9系列微處理器的典型處理速度為1.1MIPS/MHz,常見的ARM9芯片的系統(tǒng)主時(shí)鐘為100MHz到233MHz;ARM10系列微處理器的典型處理速度為1.25MIPS/MHz,其時(shí)鐘頻率則可以高達(dá)400MHz。不同ARM芯片對(duì)時(shí)鐘的處理各不相同。有些芯片只有一個(gè)主時(shí)鐘頻率,而有些芯片的內(nèi)部時(shí)鐘控制器則可以分別為ARM核、USB、UART和DSP等功能部件提供不同頻率。

        大多數(shù)ARM微處理器片內(nèi)存儲(chǔ)器的容量都不大,需要用戶在設(shè)計(jì)嵌入式系統(tǒng)時(shí)擴(kuò)充外部存儲(chǔ)器。 

        除了ARM微處理器核之外,幾乎所有的ARM芯片都根據(jù)各自不同的應(yīng)用領(lǐng)域擴(kuò)展了相應(yīng)的功能模塊,并集成在芯片之中,從而形成了片內(nèi)外圍電路,如USB接口、I/O接口、RTC和LCD控制器等。嵌入式系統(tǒng)的開發(fā)人員應(yīng)該盡可能運(yùn)用這些外圍電路,來實(shí)現(xiàn)系統(tǒng)所要求的功能。這樣既可以簡(jiǎn)化系統(tǒng)的設(shè)計(jì),同時(shí)又能夠提高系統(tǒng)的可靠性。

        為嵌入式系統(tǒng)挑選合適的硬件平臺(tái)是一件很復(fù)雜的工作。以上給出的只是一些基本的原則,實(shí)際應(yīng)用當(dāng)中還要根據(jù)情況靈活確定。筆者在展開對(duì)嵌入式Linux的研究和開發(fā)之時(shí),經(jīng)過比較和鑒別,選用了一款基于S3C4510B處理器的開發(fā)板。它是由三星公司推出的一款具有很高性價(jià)比的16/32位RISC微控制器,采用的是ARM公司提供的ARM7TDMI RISC處理器核。由于它具有高性能、低功耗等優(yōu)點(diǎn),因此特別適合于對(duì)價(jià)格和功耗比較敏感的應(yīng)用場(chǎng)合,如手持設(shè)備、網(wǎng)絡(luò)通信和工業(yè)控制等。

        S3C4510B整個(gè)開發(fā)板的結(jié)構(gòu)大致如圖1所示。

      圖1 基于S3C4510B的開發(fā)板框圖

        快速入門

        下面就來一睹嵌入式Linux的芳容。如果用戶的開發(fā)板是由專門的硬件廠商提供的,一般來說都會(huì)預(yù)裝一個(gè)嵌入式操作系統(tǒng),如Windows CE、Palm OS或Linux等。此處介紹的S3C4510B開發(fā)板預(yù)裝的是嵌入式Linux。我們不妨借用它來感受一下嵌入式Linux的開發(fā)方法。如果用戶的開發(fā)板是自己組裝的,或者買來時(shí)預(yù)裝的是其它的嵌入式操作系統(tǒng),那么就需要自己動(dòng)手來重新構(gòu)建系統(tǒng)了。

        正如前面介紹過的,在開發(fā)嵌入式系統(tǒng)時(shí)需要用到兩個(gè)平臺(tái):一個(gè)是開發(fā)平臺(tái)(Host),另一個(gè)是目標(biāo)平臺(tái)(Target)。開發(fā)平臺(tái)通常用普通的PC機(jī)充當(dāng)。它可以通過串行端口、并行端口和以太網(wǎng)等方式與目標(biāo)平臺(tái)相連,從而共同構(gòu)成一個(gè)嵌入式系統(tǒng)的基本開發(fā)環(huán)境。對(duì)于嵌入式Linux系統(tǒng)來說,簡(jiǎn)單的開發(fā)環(huán)境只需要用到宿主機(jī)、目標(biāo)板和串行連接線。

        它們之間的連接如圖2所示。


      圖2 簡(jiǎn)單的開發(fā)環(huán)境

        當(dāng)硬件連接好之后,接下去該做的就是要在宿主機(jī)和目標(biāo)板之間建立起連接。這需要在宿主機(jī)上運(yùn)行一個(gè)終端仿真程序。Linux下終端仿真程序非Minicom莫屬。Minicom是一個(gè)界面友好,并且容易使用的串口通信程序,利用它可以很方便地對(duì)串行端口進(jìn)行監(jiān)視或控制,是嵌入式Linux開發(fā)環(huán)境中非常重要的一個(gè)組成部分。稍微了解串行通信的人都知道,進(jìn)行串行通信時(shí)比較麻煩的是通信參數(shù)的設(shè)置。好在Minicom提供了非常友好的配置界面,通過執(zhí)行下面的命令將進(jìn)入Minicom的配置界面。

        從選單中選擇Serial port setup項(xiàng),進(jìn)入串行端口配置界面。然后用戶根據(jù)所用開發(fā)板的具體情況,選擇正確的串行設(shè)備文件、波特率、數(shù)據(jù)位、停止位、奇偶校驗(yàn)位、硬件流控制和軟件流控制參數(shù)。在圖4中選擇的參數(shù)代表使用串口1(/dev/ttyS0)、波特率為19200bps、數(shù)據(jù)8位、無奇偶校驗(yàn)位、停止1位、無硬件流控制和無軟件流控制。

        在設(shè)置好串行通信的參數(shù)之后,重新返回到Minicom的主配置界面;然后選擇Save setup as dfl項(xiàng)保存當(dāng)前配置值;再選擇Exit from Minicom項(xiàng)退出Minicom。

        如果一切正常,下面就可以通過Minicom來與開發(fā)板建立起正常的通信了。首先執(zhí)行如下命令再次進(jìn)入Minicom:
      # minicom


        然后接通開發(fā)板上的電源,或者按下開發(fā)板上的復(fù)位鍵,就可以在Minicom中監(jiān)視到開發(fā)板上嵌入式Linux系統(tǒng)的當(dāng) 前運(yùn)行狀態(tài)。可以將Minicom想象成是開發(fā)板上嵌入式Linux系統(tǒng)的一個(gè)虛擬終端,也就是說在Minicom中輸入的所有命令都將交由開發(fā)板上的嵌入式Linux系統(tǒng)來進(jìn)行處理。

        小結(jié)

        構(gòu)建嵌入式系統(tǒng)的首要任務(wù)是明確它到底要做些什么。用途決定了嵌入式系統(tǒng)的整個(gè)行為模式和體系結(jié)構(gòu),同時(shí)也決定了它所應(yīng)該采用的硬件平臺(tái)和軟件平臺(tái)。為嵌入式系統(tǒng)挑選目標(biāo)平臺(tái)必須審慎,因?yàn)檫@牽涉到有沒有好的開發(fā)環(huán)境和技術(shù)支持,一定要根據(jù)實(shí)際情況來挑選合適的處理器、合適的開發(fā)板和合適的開發(fā)環(huán)境。在開發(fā)嵌入式系統(tǒng)時(shí)請(qǐng)始終牢記一點(diǎn),用戶需求永遠(yuǎn)是嵌入式系統(tǒng)的“推動(dòng)力”。

        ARM處理器簡(jiǎn)介

        ARM(Advanced RISC Machines)公司位于英國(guó)劍橋,主要業(yè)務(wù)是設(shè)計(jì)16位和32位的嵌入式微處理器。但它本身并不生產(chǎn)和銷售芯片,而是采用技術(shù)授權(quán)的方式,讓其它半導(dǎo)體制造商進(jìn)行ARM微處理器的制造。

        采用RISC結(jié)構(gòu)的ARM處理器具有如下一些典型的特點(diǎn):體積小、功耗低、成本廉、性能高;支持Thumb(16位)/ARM(32位)雙指令集;寄存器數(shù)量眾多,指令執(zhí)行速度快;絕大多數(shù)據(jù)操作都在寄存器中完成;尋址方式靈活簡(jiǎn)單,執(zhí)行效率高;采用固定長(zhǎng)度的指令格式。

      免費(fèi)預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 有码视频一伊香蕉久久 | 听筒婷婷色色激情五月 | 亚州国产一线在线观看 | 日韩精品久久人人躁人人 | 一本之道高清乱码久久久 | 久久国产精品-国产十精品 中文字幕视频综合网 |