国产精品一区二区久久,沦为公妓的清纯校花H ,久久久久国产综合AV天堂,国产精品久久久久久久久无码

入門向導:ARM與嵌入式linux

浪起激光2013-04-2358781

由于很多人總問這個問題,所以這里做一個總結文檔供大家參考。這里必須先說明,以下的步驟都是針對Linux系統(tǒng)的,并不面向WinCE。也許你會 注意到,現(xiàn)在做嵌入式的人中,做linux研究的人遠比做WinCE的人多,很多產家提供的資料也是以linux為主。我一直很難理解,其實WinCE的 界面比linux的界面好看多了,使用起來也很方便,更為重要的是,WinCE的開發(fā)和Windows下的開發(fā)基本一樣,學起來簡單得多,但是學 linux或者使用linux做嵌入式的人就是遠比WinCE多。在和很多工作的人交流時我了解到,他們公司從沒考慮使用WinCE,因為成本高,都是使 用linux進行開發(fā)。我讀研究生的的實驗室中也沒有使用WinCE的,大都研究linux,也有少部分項目使用vxwork,但是就沒有聽說過使用 WinCE的,原因就是開源!當然現(xiàn)在WinCE6.0聽說也開源,不過在成本和資源上linux已經有了無人能擋的優(yōu)勢。與此相對應的是,越來越多的電 子廠商已經開始使用linux開發(fā)產品。舉個例子,Google開發(fā)的智能手機操作系統(tǒng)Android其實就是使用linux-2.6.23內核進行改進 得到的。
第一、學習基本的裸機編程
對于學硬件的人而言,必須先對硬件的基本使用方法有感性的認識,更必須深刻認識該硬件的控制方式,如果一開始就學linux系統(tǒng)、學移植那么只會馬上就陷 入一個很深的漩渦。我在剛剛開始學ARM的時候是選擇ARM7(主意是當時ARM9還很貴),學ARM7的時候還是保持著學51單片機的思維,使用ADS 去編程,第一個實驗就是控制led。學過一段時間ARM的人都會笑這樣很笨,實際上也不是,我倒是覺得有這個過程會好很多,因為無論做多復雜的系統(tǒng)最終都 會落實到這些最底層的硬件控制,因此對這些硬件的控制有了感性的認識就好很多了。
學習裸機的編程的同時要好好理解這個硬件的構架、控制原理,這些我稱他為理解硬件。所謂的理解硬件就是說,理解這個硬件是怎么組織這么多資源的,這 些資源又是怎么由cpu、由編程進行控制的。比如說,s3c2410中有AD轉換器,有GPIO(通用IO口),還有nandflash控制器,這些東西 都有一些寄存器來控制,這些寄存器都有一個地址,那么這些地址是什么意思?又怎么通過寄存器來控制這些外圍設備的運轉?還有,norflash內部的每一 個單元在這個芯片的內存中都有一個相應的地址單元,那么這些地址與剛剛說的寄存器地址又有什么關系?他們是一樣的嗎?而與norflash相對應的 nandflash內部的儲存單元并不是線性排放的,那么s3c2410怎么將nandflash的地址映射在內存空間上進行使用?或者簡單地說應該怎么 用nandflash?再有,使用ADS進對ARM9行編程時都需要使用到一個初始化的匯編文件,這個文件究竟有什么用?他里面的代碼是什么意思?不要這 個可以嗎?
諸如此類都是對硬件的理解,理解了這些東西就對硬件有很深的理解了,這對以后更深一步的學習將有很大的幫助,如果跳過這一步,我相信越往后學越會覺得迷茫,越覺得這寫東西深不可測。因為,你的根基沒打好。
不過先聲明一下,本人并沒有使用ADS對ARM9進行編程,我是學完ARM7后直接就使用ARM9學linux系統(tǒng)的,因此涉及使用ADS對ARM9進行編程的問題我很難回答^_^,自己去研究研究吧。
對于這部分不久將提供一份教程,這個教程中的例程并不是我為我們所代理的板子寫的,是我在我們學院實驗室拿的,英培特為他們自己 的實驗箱寫的,不過很有借鑒意義,可以作為一份有價值的參考。
第二、使用linux系統(tǒng)進行一些基本的實驗
在買一套板子的時候一般會提供一些linux的試驗例程,好好做一段時間這個吧,這個過程也是很有意義的,也是為進一步的學習積累感性認識,你能想 象一個從沒有使用過linux系統(tǒng)的人能學好linux的編程嗎?好好按照手冊上的例程做一做里面的實驗,雖然有點娃娃學走路,有點弱智,但是我想很多高 手都會經歷這個過程。
在這方面我們深藍科技目前沒有計劃提供相應的例程,主要是開發(fā)板的提供商會提供很豐富的例程,我們不做重復工作,只提供他們沒有的、最有價值的東西給大家。
第三、研究完整的linux系統(tǒng)的的運行過程
所謂完整的linux系統(tǒng)包括哪些部分呢?
三部分:bootloader、linux kernel(linux內核)、rootfile(根文件系統(tǒng))。
那么這3部分是怎么相互協(xié)作來構成這個系統(tǒng)的呢?各自有什么用呢?三者有什么聯(lián)系?怎么聯(lián)系?系統(tǒng)的執(zhí)行流程又是怎么樣的呢?搞清楚這個問題你對整 個系統(tǒng)的運行就很清楚了,對于下一步制作這個linux系統(tǒng)就打下了另一個重要的根基。介紹這方面的資料網上可以挖掘到幾噸,自己好好研究吧。
第四、開始做系統(tǒng)移植
上面說到完整的linux有3部分,而且你也知道了他們之間的關系和作用,那么現(xiàn)在你要做的便是自己動手學會制作這些東西。
當然我不可能叫你編寫這些代碼,這不實現(xiàn)。事實上這個3者都能在網下載到相應的源代碼,但是這個源代碼不可能下載編譯后就能在你的系統(tǒng)上運行,需要 很多的修改,直到他能運行在你的板子上,這個修改的過程就叫移植。在進行移植的過程中你要學的東西很多,要懂的相關知識也很多,等你完成了這個過程你會發(fā) 現(xiàn)你已經算是一個初出茅廬的高手了。
在這個過程中如果你很有研究精神的話你必然會想到看源代碼。很多書介紹你怎么閱讀linux源代碼,我不提倡無目的地去看linux源代碼,用許三 多的話說,這沒有意義。等你在做移植的時候你覺得你必須去看源代碼時再去找基本好書看看,這里我推薦一本好書倪繼利的《linux內核的分析與編程》,這 是一本針對linux-2.6.11內核的書,說得很深,建議先提高自己的C語言編程水平再去看。
至于每個部分的移植網上也可以找到好多噸的資料,自己研究研究吧,不過要提醒的是,很多介紹自己經驗的東西都或多或少有所保留,你按照他說的去做總 有一些問題,但是他不會告訴你怎么解決,這時就要靠自己,如果自己都靠不住就找我一起研究研究吧,我也不能保證能解決你的問題,因為我未必遇到過你的問 題,不過我相信能給你一點建議,也許有助你解決問題。
這一步的最終目的是,從源代碼的官方主頁上(都是外國的,悲哀)下載標準的源代碼包,然后進行修改,最終運行在板子上。
盜用阿基米德的一句話:“給我一根網線,我能將linux搞定”。 

本文鏈接:http://www.hxsygame.com/Read/79.html 轉載需授權!

  • 光纖激光打標機能在陶瓷上打標嗎?

    光纖激光打標機能在陶瓷上打標嗎?

    光纖激光打標機能在陶瓷上打標嗎?經常遇到用戶的問題,根據我們的經驗和以往的測試,陶瓷產品部分是可以的,但是大部分不行,例如這個陶瓷水果刀就是可以的,打標出來是黑色非常漂亮;然后,我們常見酒瓶、盤子、碗...

    閱讀學習2024-10-11
  • 激光除銹機使用注意事項(PDF下載版)

    激光除銹機使用注意事項(PDF下載版)

    激光除銹機使用注意事項.pdf一、開機1、打開機器后面空開機器得電。2、前面板開機順序:水冷機-系統(tǒng)-激光器(注意:冬季時水冷機溫度需要達到設定溫度)。3、冬季為了防止結冰,水冷機需按比例使用防凍液;...

    閱讀學習2024-08-21
  • 打標機的二維碼中有漢字掃描不出來是怎么回事?

    打標機的二維碼中有漢字掃描不出來是怎么回事?

    2024年3月,接到部分客戶反映,用激光打標機制作的二維碼掃描不出來,提示:“微信暫不支持展示二維碼中的文本內容”。請注意,在底部還有一個“復制文本內容”。其實,這和打標機沒有關系,因為微信的改版,暫...

    閱讀學習2024-03-15
  • 激光除銹機和手持激光焊接機區(qū)別

    激光除銹機和手持激光焊接機區(qū)別

    激光除銹機和手持激光焊接機是兩種不同的設備,它們的區(qū)別主要體現(xiàn)在使用場景、技術原理和應用領域上。首先,激光除銹機主要用于清除金屬表面的銹跡和雜質,而手持激光焊接機主要用于焊接金屬材料。其次,激光除銹機...

    閱讀學習2024-01-01
  • 激光打標機激光場鏡的主要作用

    激光打標機激光場鏡的主要作用

    激光打標機激光場鏡的主要作用是:1、提高邊緣光束入射到探測器的能力;2、使探測器光敏面上的非均勻光照得以均勻化;3、在相同的主光學系統(tǒng)中,附加激光場鏡將減少探測器的面積;如果使用同樣的探測器面積,可擴...

    閱讀學習2023-10-14
  • 比較專業(yè)的場鏡的分類

    比較專業(yè)的場鏡的分類

    場鏡按功能分可分為平場鏡(f-theta)透鏡和遠心透鏡(Telecentric)。遠心透鏡主要是為了消除相差而設計的,它可以在一定的物距范圍內,使得到的圖像放大倍率不會變化,這對被測物不在同一物面上...

    閱讀學習2023-10-14
  • 激光打標機激光場鏡的主要作用

    激光打標機激光場鏡的主要作用

    #場鏡激光打標機激光場鏡的主要作用是:1、提高邊緣光束入射到探測器的能力;2、使探測器光敏面上的非均勻光照得以均勻化;3、在相同的主光學系統(tǒng)中,附加激光場鏡將減少探測器的面積;如果使用同樣的探測器面積,可擴...

    閱讀學習2023-05-25
  • 風冷手持激光焊接機將會成為趨勢和主流

    風冷手持激光焊接機將會成為趨勢和主流

    從2020年開始,手持激光焊接機開始起量,用戶接受焊接效果及其價格,2021年更是有爆發(fā)式的增長,截止到目前,一臺1000瓦的手持激光焊接機價格已經在3萬元左右了,價格還是比較容易接受的。目前的激光焊...

    閱讀學習2023-05-20
  • 影響激光打標機打標速度的幾個因素

    影響激光打標機打標速度的幾個因素

    通常來說激光打標機速度是非??斓?,大部分廠家給出的一般性能指標為7000mm/s。但是實際應用中,有客戶感覺效率并不高,企業(yè)在采購激光打標機時,都很看重設備的打標速度,因為這直接關系到訂單的加工效率。...

    閱讀學習2022-09-02
  • 選購激光焊接設備的注意事項

    選購激光焊接設備的注意事項

    1、購買激光焊接設備一個重要因素就是需要明確焊接的產品類型,如何焊接,焊接速度需要多快,而這些都會影響你購買設備的價格,比如你是焊接電池蓋帽,極耳,動力電池連接片,方形電池密封焊,防爆閥焊接,金屬薄板...

    閱讀學習2022-09-01

猜你還喜歡這些...

扶沟县| 拉萨市| 滨州市| 辛集市| 苏州市| 西平县| 泗阳县| 汾阳市| 宁安市| 昌图县| 砚山县| 天台县| 济南市| 乌海市| 武胜县| 右玉县| 长乐市| 增城市| 建宁县| 九寨沟县| 青海省| 敦化市| 察雅县| 连山| 方正县| 句容市| 永善县| 巫山县| 板桥市| 清原| 澜沧| 土默特右旗| 竹山县| 合川市| 贵州省| 盐城市| 闻喜县| 雷波县| 壶关县| 岑溪市| 闸北区|