如何學習嵌入式系統(基於ARM平台)

2021-04-25 14:29:32 字數 2889 閱讀 4329

arm7比較適合於那些想從硬體層面上走的人,因為arm7系列處理器內部帶mmu的很少,而且比較好控制,就比如s3c44b0來講,可以很容易將 cache關了,而且內部介面暫存器很容易看明白,各種介面對於用硬體程式控制或axd單步命令列指令都可以控制起來,基於51微控制器的思想很容易能把他 搞懂,就當成個32位的微控制器,從而消除很多51工程師想轉為嵌入式系統硬體arm開發工程師的困惑,從而不會被業界某此不是真正懂嵌入式爛公司帶到操作 系統層面上去,讓他們望而失畏,讓業界更加缺少這方面的人才。

而嵌入式系統不管硬體設計還是軟體驅動方面都是十分注重介面這部分的,選擇平台還要考察乙個處理器的外部資源,你接觸外部資源越多,越熟悉他們那你以後就 業成功的機率就越高,這就是招聘時所說的有無「相關技能」,因為乙個人不可能在短短幾年內把所有的處理器都接觸一遍,而招聘單位所用的處理器就可能是我們 完全沒有見過的,就拿台灣數十家小公司(市價幾千萬)的公司生產的arm類處理器,也很好用,但這些東西通用性太差,用這些處理器的公司就只能招有相關工 作經驗的人了,那什麼是相關工作經驗,在硬體上講的是外圍介面設計,在軟體上講是作業系統方面相關介面驅動及應用開發經驗。我從業近十年,2023年 arm出現,我一天始做arm7,然後直接跑到了xscale(這個板本在arm10-11之間),一做就是五年,招人面試都不下數百人,在這些方面還是 深有體會的。  

我個人認為三星的s3c44b0對初學者來說比較合適,為什麼這麼說哪?因為介面資源比較豐富,技術成熟,資料較多,應該十分適合於初學者,有問題可能很 容易找人幫且解決,因為大多數人都很熟悉,就如同51類的微控制器,有n多位專家級的人物可以給你幫忙,相關問題得以很快解答

五、如何看待培訓。

首先說說我自己,我目前從業近十年,與國內嵌入式系統行業共同起步,一直站在嵌入式系統行業前沿,設計過多款高階嵌入式系統平台產品並為眾多公司提供過解 決方案,離職前為從事voip的美資公司設計ip-pbx,歷任專案經理、專案主管、技術總監、部門經理,積累眾多人脈,並集多年經驗所得,考慮到學生就 業與公司招人的不相匹配,公司想招人招不到,而學生和剛畢業的工程師想找份工作也不太容易,於此力創知天行科技****,開展嵌入式系統教育培訓。

因一線的科研人員和一線的教師不相接觸,導至國內嵌入式人才缺乏,國外高校的技術超前於業界公司,而國內情況是業界公司方面的嵌入式系統技術要遠遠領先於 高校。為架構業界與高校溝通的橋梁,把先進技能帶給高校學子,為學生在就業競爭中打造一張王牌,並為業界工程師快速提公升實現自我創造機遇,我就這樣辭去了 外企年薪20多萬的職位,做嵌入式系統方面的培訓了。 字串8

。他們的方面上我只能說是知道些,但不是太多,初級的問題也可以問我。

對於硬體來講有幾個方向,就單純訊號來分為數字和模擬,模擬比較難搞,一般需要很長的經驗積累,單單乙個阻值或容值的精度不夠就可能使訊號偏差很大。因此 年輕人搞的較少,隨著技術的發展,出現了模擬電路數位化,比如手機的modem射頻模組,都採用成熟的套片,而當年國際上只有兩家公司有此技術,自我感覺 模擬功能不太強的人,不太適合搞這個,如果真能搞定到手機的射頻模組,只要達到一般程度可能月薪都在15k以上。

另一類就是數字部分了,在大方向上又可分為51/arm的微控制器類,dsp類,fpga類,國內fpga的工程師大多是在ic設計公司從事ip核的前端驗 證,這部分不搞到門級,前途不太明朗,即使做個ic前端驗證工程師,也要搞上幾年才能勝任。dsp硬體介面比較定型,如果不向驅動或是演算法上靠攏,前途也 不會太大。而arm微控制器類的內容就較多,業界產品佔用量大,應用人群廣,因此就業空間極大,而硬體設計最體現水平和水準的就是介面設計這塊,這是各個高 級硬體工程師相互pk,判定水平高低的依據。而介面設計這塊最關鍵的是看時序,而不是簡單的連線,比如pxa255處理器i2c要求速度在 100kbps,如果把乙個i2c外圍器件,最高還達不到100kbps的與它相接,必然要導致設計的失敗。這樣的情況有很多,比如51微控制器可以在匯流排 接lcd,但為什麼這種lcd就不能掛在arm的匯流排上,還有arm7匯流排上可以外接個winband的sd卡控制器,但為什麼這種控制器接不到arm9 或是xscale處理器上,這些都是問題。因此介面並不是一種簡單的連線,要看時序,要看引數。乙個優秀的硬體工程師應該能夠在沒有參考方案的前提下設計 出乙個在成本和效能上更加優秀的產品,靠現有的方案,也要進行適當的可行性裁剪,但不是胡亂的來,我遇到乙個工程師把方案中的5v變1.8v的dc晶元, 直接更換成ldo,有時就會把cpu燒上幾個。前幾天還有人希望我幫忙把他們以前基於 pxa255平台的手持gps裝置做下程式優化,我問了一下情況,地圖是存在sd卡中的,而sd卡與pxa255的mmc控制器間採用的spi介面,因此 導致地圖讀取速度十分的慢,這種情況是設計中嚴重的缺陷,而不是程式的問題,因此我提了幾條建議,讓他們更新試下再說。因此想成為乙個優秀的工程師,需要 對系統整體性的把握和對已有電路的理解,換句話說,給你一套電路圖你終究能看明白多少,看不明白80%以上的話,說明你離優秀的工程師還差得遠哪。其次是 電路的除錯能力和審圖能力,但最最基本的能力還是原理圖設計pcb繪製,邏輯設計這塊。這是指的硬體設計工程師,從上面的硬體設計工程師中還可以分出 ecad工程師,就是專業的畫pcb板的工程師,和emc設計工程師,幫人家解決emc的問題。硬體工程師再往上就是板級測試工程師,就是c語功底很好的 硬體工程師,在電路板除錯過程中能通過自已編寫的測試程式對硬體功能進行驗證。然後再交給基於作業系統級的驅動開發人員。 http://www.armf  總之,硬體的內容很多很雜,硬體那方面練成了都會成為乙個高手,我時常會給人家做下方案評估,很多高階硬體工程師設計的東西,經常被我一句話否定,因此工程師做到我這種地步,也會得罪些人,但硬體的確會有很多不為人知的東西,讓很多高階硬體工程師也摸不到頭腦。

那麼高階硬體件工程師技術技能都要具備那些東西哪,首先要掌握eda設計的輔助工具類如protel/orcad/powperpcb/maplux2 /ise、vdhl語言,要能用到這些工具畫圖畫板做邏輯設計,再有就是介面設計審圖能力,再者就是除錯能力,如果能走到總體方案設計這塊,那就基本上快 成為資深工程師了。

硬體是要靠經驗,也要靠積累的,十年磨一劍,百年磨一針。

把乙個月前想寫的東西,今天終於用一上午的進間整理完了,希望對喜愛嵌入式系統開發的工程師和學生們有所幫助。

ARM學習筆記 嵌入式系統

嵌入式系統是 1 以應用為中心,以計算機技術為基礎 2 軟硬體可裁減,3 對功能 可靠性 成本 體積 功耗有嚴格要求的專用計算機系統。1 嵌入式應用領域 通訊 對講機 醫療 血壓儀 智慧型家居 遊戲機 軍事 頭盔 2 什麼樣的結構讓嵌入式系統具備軟硬體可裁減的特點 硬體 嵌入式處理器 arm x86...

嵌入式arm開發學習

今天是學習arm的第二天.感覺又懂了一點.記錄下來,以便以後不時之需.今天先是看了一些linux應用開發的東西,由於之前自己對linux程式設計還算是有過了解,這部分看得很快,基本沒有什麼閱讀障礙.個人建議想學嵌入式linux的人,最好先把unix環境高階程式設計看一遍.你會發現一切都會順其自然.之...

如何學習嵌入式 嵌入式如何入門?

學習嵌入式,該學習什麼基本的知識呢?嵌入式如何入門?其次,應該對作業系統有所了解,這對你對硬體和軟體的理解,絕對有很大的幫助。應該把系統的管理理解一下,比如程序 執行緒,系統如何來分配資源的,系統如何來管理硬體的,當然,不是看書就能把這些理解透,如果不是一時能理解,沒關係,多看看,結合以後的專案經驗...