工程師應該怎么學習嵌入式 嵌入式從2002年之后就成為很熱門的職業,這其中與ARM的商用分不開。Samsung,Philiphs,Atmel這些公司紛紛推出性價比非常高的arm核的cpu(soc),而且這些soc非常適合作為手機,數碼相機, mp3,mp4(還包括汽車電子,醫療電子等行業)的cpu。因此,很多做此類產品的公司對熟悉ARM架構cpu的人才需求很大,再加之大學課程與社會需求脫節,造成人才緊缺。 Arm,除了網路處理器不能抗衡之外,其他領域都有用武之地,它不但會像51單片機一樣經久不衰而且會更加輝煌,所以在電子產品整個領域,arm將是工程師必須掌握的技術。 怎樣的人適合學習嵌入式 學習嵌入式需要有一定的基礎,這些基礎大概包括下面兩點: 學過c語言,匯編; 對微控制器有一定了解。 一般理工類(計算機,自動化,電子類專業)的學生大三學比較合適。因為到了大三,一般學過了c語言及匯編,雖然大部分學生沒有獨立寫過一個程序,但至少上過這門課,自己也看過相關知識點;而且上過8051等微控制器原理的課程,也看過類似的教課書。 具備以上基礎的人,也不是誰都可以學。因為嵌入式學習門檻比較高,難度比較大,不但要有一定的毅力,而且要觸類旁通,如果太死板也很難學會。 概括的說學習嵌入式還必備下列性格: 熱愛研發! 切忌浮躁! 執著,頑強,自信! 舉一反三! 熱愛研發,不僅僅是“喜歡搞技術”;我永遠記得我第一次在EM78P156EL(儀隆8位單片機)上點亮第一個LED燈的感覺,可以用“欣喜若狂”來形容。這就是一種熱愛。被問題困擾時的著急,無助,絞盡腦汁,到最后通過自己的努力問題得到解決的無比自豪和快感,這一過程是很多人熱愛研發的原動力。 切忌浮躁,最近網絡總結出了中國人所患的一種通病”喪失了慢能力”!此話不假!改革開發以來,中國翻天覆地的變化,物質的發達,網絡的普及,文化的西化,貧富差距的加大造成了我們靜不下心來讀書,寫作,學習。 《電子工程專輯》有一網友博文:《從通用訴奇瑞間諜案反思技術發展之殤》 我一直在思考著為什么我國的產業結構調整一直推行得較為緩慢?為什么大多數畢業生從事制造業的5年計劃就是轉向管理層?為什么我國較為成功的企業不多... 此文從工程師浮躁的心理闡述了中國工程師和企業的知識技術積累不夠,不能產生有價值的發明及有核心技術的企業。因嵌入式開發一時成為了熱門職業,工資高,好找工作,很多人決定投入這一行業,可是嵌入式開發需要軟硬件知識。 單從軟件工程師來說: 需要c語言(要精),匯編語言(要懂),c++(如果是上次應用程序需要精);還有各種通信協議(最基本的有串口通信,I2C,SPI;復雜一點的有tcp/ip,bluetooth等待);還有更重要的中斷原理,dma原理,定時器等等!還要看得懂原理圖,要根據原理圖和datasheet就能把代碼寫出來,這些都是一個搞嵌入式必須掌握的技術!如果是linux驅動要掌握的知識遠不如這些! 所以學習嵌入式要“慢慢來”切忌“浮躁”! 執著、頑強、自信,在產品開發過程中,當你做的比較深的時候,你出現的問題已經太依賴你現在的環境,如果要找人來幫你,你還要花很長時間給他解釋你問題產生的原因,他也要花時間從頭跟進去,一般是找不到這種人來幫你的。像這種問題在網上也找不到類似的答案,圖書館也查不到有價值的資料。此時,只能靠自己了。雖然沒人能幫你,但是你還是要想辦法請教人,通過跟別人的討論或許能給你啟發;雖然在網上找不到類似的答案,但你還是需要到網上去找相關信息;雖然圖書館也查不到有價值的資料,但你有時還是需要跑跑圖書館;結合,別人的指導,網絡的信息,圖書館的知識,自己的分析,以前的經驗,各種實驗的排除,如果能堅持做到這些是沒有解決不了的問題的。 但是很多人做不到這些;他除了網上找答案,論壇發貼問別人一籌莫展,堅持不了幾天就把問題擱置了,如果參加工作,只會讓老板認為你能力不夠,下次也不會委以重任;如果是學習,你將不能深入進去,做不到精通。 在你嵌入式職業生涯中,如果第一個棘手的問題憑你的不懈努力解決了,那么,接下來的問題都會得到解決,因為第一次解決問題不但讓你學會了如何分析問題,解決問題,更重要的是增強了你的自信。其實,我們做研發工作不是搞發明,所有的問題都難不到哪里去!我有個同事,這位同事是我招募進公司的應屆畢業生,嵌入式是中的問題對一個應屆畢業生來說確實比較難,比如說通過IO腳來模擬I2C總線讀寫EEPROM。我記得這位同事說過一句話,他說“別人能發明,至少我能會用!”。 我從這句話中感受到了他的自信,事實確是如此,我們僅僅是應用,不是發明,我們都應該有能力去把這些原理性的東西搞懂,這位同事在后續的工作中,一直是出類拔萃,工資也越來越高! 舉一反三,或者說模仿。在驅動開發中這種能力尤其重要,比如在Rtems,Linux這種OS中,支持各種BSP,但不一定支持你所用的BSP。現在學習嵌入式比較流行的開發板是s3c2410,如果OS是用rtems那么你找不到現成的BSP,但幸運的是rtems支持2400,我們就可以很容易的模仿它做一個2410的BSP,如果你的網卡是cs8900,那么你很不幸,2400中沒有cs8900的網卡驅動,怎么辦,如果夠心細,你會發現edp7312的BSP中有cs8900的驅動,那么你就可以搬過來,雖然有很多改動的地方,但是比重新寫一個符合rtems的驅動要來得容易的多。 |