久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5416|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

如何學(xué)習(xí)基于ARM平臺的嵌入式系統(tǒng)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:142451 發(fā)表于 2016-11-17 16:46 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
一、嵌入式系統(tǒng)的分層與專業(yè)的分類
嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動層、操作系統(tǒng)層和應(yīng)用層。

1.硬件層
它是整個嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機及接口這塊很熟悉,并且能用C和匯編語言來編程的話,從嵌入式系統(tǒng)的硬件層走起來相對容易,硬件層也是驅(qū)動層的基礎(chǔ),一個優(yōu)秀的驅(qū)動工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設(shè)計的,同時還要對操作系統(tǒng)內(nèi)核及其調(diào)度性相當?shù)氖煜さ。但硬件平臺是基礎(chǔ),增值還要靠軟件。
硬件層比較適合于,電子、通信、自動化、機電一體、信息工程類專業(yè)的人來搞,需要掌握的專業(yè)基礎(chǔ)知識有:單片機原理及接口技術(shù)、微機原理及接口技術(shù)、C語言。

2.驅(qū)動層
這部分比較難,驅(qū)動工程師不僅要能看懂電路圖,還要對操作系統(tǒng)內(nèi)核十分精通,以便其所寫的驅(qū)動程序在系統(tǒng)調(diào)用時,不會獨占操作系統(tǒng)時間片,而導(dǎo)至其它任務(wù)不能行動,不懂操作系統(tǒng)內(nèi)核架構(gòu)和實時調(diào)度性,沒有良好的驅(qū)動編寫風(fēng)格,按大多數(shù)書上所說添加的驅(qū)動的方式,很多人都能做到,但可能連個初級的驅(qū)動工程師的水平都達不到,這樣所寫的驅(qū)動在應(yīng)用調(diào)用時就如同Windows下我們打開一個程序運行后,再打開一個程序,要不就是中斷以前的程序,要不就是等上一會兒才能運行后來打開的程序。
想做個好的驅(qū)動人員沒有三、四年功底,操作系統(tǒng)內(nèi)核不研究上幾編,不是太容易成功的,但其工資在嵌入式系統(tǒng)四層中可是最高的。
驅(qū)動層比較適合于電子、通信、自動化、機電一體、信息工程類專業(yè)尤其是計算機偏體系結(jié)構(gòu)類專業(yè)的人來搞,除硬件層所具備的基礎(chǔ)學(xué)科外,還要對數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理十分精通了解。

3.操作系統(tǒng)層
對于操作系統(tǒng)層目前只能說是簡單的移植,而很少有人來自已寫操作系統(tǒng),或者寫出缺胳膊少腿的操作系統(tǒng)來,這部分工作大都由驅(qū)動工程師來完成。操作系統(tǒng)是負責系統(tǒng)任務(wù)的調(diào)試、磁盤和文件的管理,而嵌入式系統(tǒng)的實時性十分重要。

4.應(yīng)用層
相對來講較為容易的,如果會在Windows下如何進行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開發(fā)環(huán)境有相應(yīng)的變化而已。如果涉及Jave方面的編程也是如此的。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫、基于嵌入式系統(tǒng)的網(wǎng)絡(luò)編程和基于某此應(yīng)用層面的協(xié)議應(yīng)用開發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復(fù)雜,并且有難度了。

二、目標與定位

先有目標,再去定位。
學(xué)ARM,從硬件上講,一方面就是學(xué)習(xí)接口電路設(shè)計,另一方面就是學(xué)習(xí)匯編和C語言的板級編程。如果從軟件上講,就是要學(xué)習(xí)基于ARM處理器的操作系統(tǒng)層面的驅(qū)動、移植了。這些對于初學(xué)都來說必須明確,要么從硬件著手開始學(xué),要么從操作系統(tǒng)的熟悉到應(yīng)用開始學(xué),但不管學(xué)什么,只要不是純的操作系統(tǒng)級以及基于API的應(yīng)用層的編程,硬件的寄存器這類的東西還是要能看懂的,基于板級的匯編和C編程還是要會的。因此針對于嵌入式系統(tǒng)的硬件層和驅(qū)動程的人,ARM的接口電路設(shè)計、ARM的C語言和匯編語言編程及調(diào)試開發(fā)環(huán)境還是需要掌握的。
因此對于初學(xué)者必然要把握住方向,自己的目標是什么,自己要在哪一層面上走,然后再著手學(xué)習(xí)較好,與ARM相關(guān)的嵌入式系統(tǒng)的較為實際的兩個層面是硬件層和驅(qū)動層,不管學(xué)好了哪一層都會很有前途的。
如果想往嵌入式系統(tǒng)的應(yīng)用層面走的話,可能與ARM及其它體系相去較遠,要著重研究基嵌入式操作系統(tǒng)的環(huán)境應(yīng)用與相應(yīng)開發(fā)工具鏈,比如WinCe操作系統(tǒng)下的EVC應(yīng)用開發(fā)(與Windows下的VC相類似),如果想再有突破就往某些音視頻類的協(xié)議上靠,比如VOIP領(lǐng)域的基于SIP或H.323協(xié)議的應(yīng)用層開發(fā),或是基于嵌入式網(wǎng)絡(luò)數(shù)據(jù)庫的開發(fā)等等。
對于初學(xué)者來講,要量力而行,不要認為驅(qū)動層工資高就把它當成方向,要結(jié)合自身特點,嵌入式系統(tǒng)四個層面上,哪個層面上都是有高人存在的,當然高人也對應(yīng)高工資,我是做硬件層的,以前每月工資中個人所得稅要被扣上近3千大元,當然一方面充當工程師的角色,一方面充當主管及人物的角色,兩個職位我一個人干,但上班時間就那些。硬件這方面上可能與我PK的人很少了,才讓我拿到那么多的工資。

三、開發(fā)系統(tǒng)選擇
很多ARM初學(xué)者都希望有一套自己能用的系統(tǒng),但他們住住會產(chǎn)生一種錯誤認識就是認為處理器版本越高、性能越高越好,就像很多人認為ARM9與ARM7好,我想對于初學(xué)者在此方面以此入門還應(yīng)該理智,開發(fā)系統(tǒng)的選擇最終要看自己往嵌入式系統(tǒng)的哪個方向上走,是做驅(qū)動開發(fā)還是應(yīng)用,還是做嵌入式系統(tǒng)硬件層設(shè)計與板級測試。如果想從操作系統(tǒng)層面或應(yīng)用層面上走,不管是驅(qū)動還是應(yīng)用,那當然處理器性能越高越好了,但這個東西自學(xué),有十分大的困難,不是幾個月或半年或是一年二年能搞定的事。
在某種意義上請,ARM7與9的差別就是在某些功能指令集上豐富了些,主頻提高一些而已,就比如286和386。對于用戶來講可能覺查不到什么,只能是感覺速度有些快而已。
  
ARM7比較適合于那些想往硬件層面上走的人,因為ARM7系列處理器內(nèi)部帶MMU的很少,而且比較好控制,就比如S3C44B0來講,可以很容易將Cache關(guān)了,而且內(nèi)部接口寄存器很容易看明白,各種接口對于用硬件程序控制或AXD單步命令行指令都可以控制起來,基于51單片機的思想很容易能把它搞懂,就當成個32位的單片機,從而消除很多51工程師想轉(zhuǎn)為嵌入式系統(tǒng)硬件ARM開發(fā)工程師的困惑,從而不會被業(yè)界某些不是真正懂嵌入式的爛公司帶到操作系統(tǒng)層面上去,讓他們望而失畏,讓業(yè)界更加缺少這方面的人才。
而嵌入式系統(tǒng)不管硬件設(shè)計還是軟件驅(qū)動,都是十分注重接口這部分的,選擇平臺還要考察一個處理器的外部資源,你接觸外部資源越多,越熟悉它們,那你以后就業(yè)成功的機率就越高,這就是招聘時所說的有無“相關(guān)技能”。
因為一個人不可能在短短幾年內(nèi)把所有的處理器都接觸一遍,而招聘單位所用的處理器就可能是我們完全沒有見過的,就拿臺灣數(shù)十家小公司生產(chǎn)的ARM類處理器,也很好用,但這些東西通用性太差,用這些處理器的公司就只能招有相關(guān)工作經(jīng)驗的人了,那什么是相關(guān)工作經(jīng)驗,在硬件上講的是外圍接口設(shè)計,在軟件上講是操作系統(tǒng)方面相關(guān)接口驅(qū)動及應(yīng)用開發(fā)經(jīng)驗。
  
我個人認為三星的S3C44b0對初學(xué)者來說比較合適,為什么這么說?因為接口資源比較豐富,技術(shù)成熟,資料較多,應(yīng)該十分適合于初學(xué)者,有問題可能很容易找人幫且解決,因為大多數(shù)人都很熟悉,就如同51類的單片機,有N多位專家級的人物可以給你幫忙,相關(guān)問題得以很快解答,所然業(yè)界認為這款A(yù)RM都做用得爛了,但對于初學(xué)者來,就卻是件好事。
因此開發(fā)系統(tǒng)的選擇,要看自己的未來從業(yè)目標方向、要看開發(fā)板接口資源、還要看業(yè)界的通用性。

四、成為高級嵌入式系統(tǒng)硬件工程師要具備的技能
對于硬件來講有幾個方向,就單純信號來分為數(shù)字和模擬,模擬比較難搞,一般需要很長的經(jīng)驗積累,單單一個阻值或容值的精度不夠就可能使信號偏差很大。因此年輕人搞的較少,隨著技術(shù)的發(fā)展,出現(xiàn)了模擬電路數(shù)字化,比如手機的Modem射頻模塊,都采用成熟的套片,而當年國際上只有兩家公司有此技術(shù),自我感覺模擬功能不太強的人,不太適合搞這個,如果真能搞定到手機的射頻模塊,只要達到一般程度可能月薪都在15K以上。
另一類就是數(shù)字部分了,在大方向上又可分為51/ARM的單片機類、dsp類、FPGA類。

國內(nèi)FPGA的工程師大多是在IC設(shè)計公司從事IP核的前端驗證,這部分不搞到門級,前途不太明朗,即使做個IC前端驗證工程師,也要搞上幾年才能勝任。dsp硬件接口比較定型,如果不向驅(qū)動或是算法上靠攏,前途也不會太大。而ARM單片機類的內(nèi)容就較多,業(yè)界產(chǎn)品占用量大,應(yīng)用人群廣,因此就業(yè)空間極大,而硬件設(shè)計最體現(xiàn)水平和水準的就是接口設(shè)計這塊,這是各個高級硬件工程師相互PK,判定水平高低的依據(jù)。

而接口設(shè)計這塊最關(guān)鍵的是看時序,而不是簡單的連接,比如PXA255處理器I2C要求速度在100Kbps,如果把一個總線外圍器件,最高還達不到100kbps的與它相接,必然要導(dǎo)致設(shè)計的失敗。這樣的情況有很多,比如51單片機可以在總線接LCD,但為什么這種LCD就不能掛在ARM的總線上,還有ARM7總線上可以外接個Winband的SD卡控制器,但為什么這種控制器接不到ARM9或是Xscale處理器上,這些都是問題。

因此接口并不是一種簡單的連接,要看時序,要看參數(shù)。 一個優(yōu)秀的硬件工程師應(yīng)該能夠在沒有參考方案的前提下設(shè)計出一個在成本和性能上更加優(yōu)秀的產(chǎn)品,靠現(xiàn)有的方案,也要進行適當?shù)目尚行圆眉,但不是胡亂的來。我遇到一個工程師把方案中的5V變1.8V的DC芯片,直接更換成LDO,有時就會把CPU燒上幾個。

因此想成為一個優(yōu)秀的工程師,需要對系統(tǒng)整體性的把握和對已有電路的理解,換句話說,給你一套電路圖你終究能看明白多少,看不明白80%以上的話,說明你離優(yōu)秀的工程師還差得遠。其次是電路的調(diào)試能力和審圖能力,但最最基本的能力還是原理圖設(shè)計PCB繪制、邏輯設(shè)計這塊。這是指的是硬件設(shè)計工程師,從上面的硬件設(shè)計工程師中還可以分出ECAD工程師,就是專業(yè)的畫PCB板的工程師,和EMC設(shè)計工程師,幫人家解決EMC的問題。硬件工程師再往上就是板級測試工程師,就是C語功底很好的硬件工程師,在電路板調(diào)試過程中能通過自已編寫的測試程序?qū)τ布δ苓M行驗證。然后再交給基于操作系統(tǒng)級的驅(qū)動開發(fā)人員。

總之,硬件的內(nèi)容很多很雜,硬件哪方面練成了都會成為一個高手,那么高級硬件工程師都要具備那些素質(zhì)?首先要掌握EDA設(shè)計的輔助工具類如Protel/ORCAD/PowperPCB/Maplux2/ISE、VDHL語言,要能用到這些工具畫圖、畫板,做邏輯設(shè)計,再有就是接口設(shè)計審圖能力,再者就是調(diào)試能力,如果能走到總體方案設(shè)計這塊,那就基本上快成為資深工程師了。
硬件是要靠經(jīng)驗,也要靠積累的,十年磨一劍,百年磨一針。

評分

參與人數(shù) 1黑幣 +5 收起 理由
自動化學(xué)院123 + 5 說的很有道理。。。

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:142451 發(fā)表于 2017-3-7 14:11 | 只看該作者
大家有在研究單片機嗎,可以加群478743261一起探討
回復(fù)

使用道具 舉報

板凳
ID:241966 發(fā)表于 2017-10-22 23:04 | 只看該作者
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美亚洲视频在线观看 | 黄色一级特级片 | 精品九九 | 亚洲黄色国产 | 青青草一区二区三区 | 日韩激情免费 | 欧美视频三区 | 亚洲视频在线播放 | 日韩精品免费一区二区在线观看 | 国产成人一区二区 | 草草影院ccyy | 免费看黄视频网站 | 国产精品视频免费观看 | 国产精品成人一区二区三区夜夜夜 | 三级特黄特色视频 | 91不卡在线| 日本国产一区二区 | 国产成人网 | 国内精品久久久久 | 91网站视频在线观看 | 欧美中文一区 | 99pao成人国产永久免费视频 | 日韩精品一区二区三区中文在线 | 久久久久久亚洲 | 精品欧美一区二区中文字幕视频 | 在线观看欧美日韩视频 | 日韩一区二区在线视频 | 亚洲一区二区中文字幕在线观看 | 欧美一区免费 | 日韩电影中文字幕 | www精品| 天天成人综合网 | 国产在线精品一区 | 日韩在线国产 | 欧美日韩一区二区在线观看 | 亚洲欧洲精品一区 | 欧美黑人巨大videos精品 | 国产 欧美 日韩 一区 | 每日在线更新av | 成人免费视频网站在线观看 | 国产中文|