天天看點

嵌入式基礎怎麼學 嵌入式好學麼

 關于嵌入式基礎和物聯網,行業外的人員并不是很了解,基礎不同對其了解的也不同。但是,應該明确哪些是必備的基礎知識,哪些應該先學,哪些應該後學?哪些必須通過實踐才能獲得?哪些是與具體晶片無關的通用知識?哪些是與具體晶片或開發環境相關的知識?

嵌入式基礎怎麼學 嵌入式好學麼

嵌入式基礎怎麼學 嵌入式好學麼

  ①嵌入式系統軟體硬體密切相關,一定要打好軟硬體基礎。其實,隻要找到正确的方法,加上努力,任何理工科學生,甚至非理工科學生,都能學好嵌入式系統。

  ②選擇一個晶片及硬體評估闆(入門晶片最好簡單一點,例如8位MCU)、選擇一本好書(最好有規範的例子)、找一位好老師(最好是有經驗且熱心的)。硬 件評估闆的價格一定要在1000元以下,不要太貴,最好能有自己動手的空間。不花一分硬體錢想要學好嵌入式系統不實際,因為這是實踐性很強的學科。好書,可以讓人少走彎路,不被誤導。好老師也可以是做過一些實際項目的學長(一定要找做過幾個成功項目的學長或老師做指導,否則經驗不足也可能誤導),有教師指導,學習程序會加快(人工智能學科裡有個術語叫無教師指導學習模式與有教師指導學習模式,無教師指導學習模式比有教師指導學習模式複雜許多)。

  ③許多人怕硬體,其實嵌入式系統硬體比電子線路好學多了。隻要深入了解:MCU的硬體最小系統,對I/O口、串行通信、鍵盤、LED、LCD、 SPI、 I2C、PWM、A/D(包括一些傳感器)、D/A等逐個實驗了解,逐漸實踐,再通過動手做一個實際的小系統,底層硬體基礎就有了。各個硬體子產品驅動程式的編寫是嵌入式系統的必備基礎。學習嵌入式系統的初期,這個過程是必須的。

  ④至于嵌入式實時作業系統RTOS,一定不要一開始就學,這樣會走很多彎路,也會使你對嵌入式系統感到畏懼。等你軟體硬體基礎打好了,再學習就感到容易了解。實際上,許多嵌入式應用并不需要作業系統。也可以根據實際項目需要,再學習特定的RTOS。不要被一些嵌入式實時作業系統教育訓練班的宣傳所誤導,而忽視實際嵌入式系統軟硬體基礎知識的學習。

  ⑤要避免片面地單純從“電子”或“計算機軟體”角度認識嵌入式系統。前面說過,嵌入式系統是軟體與硬體的綜合體。是以,要逐漸從MCU的最小系統開始, 一點一點了解硬體原理及底層硬體驅動程式設計方法。要通過規範的例子,了解軟體工程封裝、可複用等思想。通過規範程式設計,積累底層構件(component),也就是一個一個子產品;但是要封裝得比較好,可複用。

  ⑥注重實驗與實踐。這裡說的實驗主要指通過重複來驗證他人的工作,目的是學習基礎知識,這個過程一定要經曆。實踐是自己設計,有具體的“産品”目标。如果花500元左右,自己做一個具有一定功能的小産品,且能穩定運作1年以上,就可以說接近入門了。

  ⑦關于入門晶片的選擇。不要選太複雜的微控制器作為入門晶片,不能超越學習過程。不要一下子學習幾種晶片。可以通過一個晶片入門,并具有一個實踐經驗後,根據實際需要選擇晶片開發實際産品。注意,不要把微處理器(MPU與微控制器(MCU)概念相混淆,微處理器隻是微控制器的核心。

  ⑧關于嵌入式作業系統的選擇。可以等到具有一定實踐基礎後,選擇一個簡單、容易了解原理的嵌入式作業系統進行學習。不要一開始就學習幾種作業系統,了解了基本原理,實踐中确有實際需要再學習也不遲。人總是要不斷學習的。

  ⑨關于彙編語言與C語言的取舍。随着:MCU對C編譯的優化支援,對于彙編語言可以隻了解幾個必要的語句,而直接使用C語言程式設計。但必須通過第一個程式了解晶片初始化過程、中斷機制、程式存儲情況等,差別于PC機程式的内容。另外,為了測試的需要,最好掌握一門PC機程式設計語言。

⑩要明确自己的學習目的,并注意學習方法。要明确學習目的是打基礎,還是為了适應工作需要而進行的短訓。學習方法方面,要根據學習目的選擇合适的學習途徑,注意理論學習與實踐、通用知識與晶片相關知識、硬體知識與軟體知識的平衡,要在了解軟體工程基本原理基礎上了解硬體構件與軟體構件等基本概念。

  當然,以上隻是基礎階段的學習建議。要成為良好的

嵌入式基礎

設計師,還需要在實際項目中鍛煉,并不斷學習與積累經驗。

繼續閱讀