嵌入式門檻高,難度大,但是嵌入式的發展前景還是非常好的,這也是大家選擇嵌入式的原因,不過對於新人來說正確的學習步驟還是很重要的,下面一起來看看嵌入式的學習步驟吧。
嵌入式物聯網需要學的東西真的非常多,千萬不要學錯了路線和內容,導致工資要不上去!
無償分享大家一個資料包,差不多150多G。裡面學習內容、面經、項目都比較新也比較全!某魚上買估計至少要好幾十。
點擊這裡找小助理0元領取:
在學習嵌入式Linux之前,肯定要有C語言基礎。彙編基礎有沒有無所謂(就那麼幾條彙編指令,用到了一看就會)。C語言要學到什麼程度呢?越熟當然越好,不熟的話也要具備基本技能。比如寫一個數組排序、輸入數字求和什麼的。學C語言唯一的方法是多寫程序多練習,編譯出錯沒關係,自己去解決;執行出錯沒關係,自己去分析。以前我是用VC來練習C語言的,經常去嘗試着寫一些C語言競賽的題目。它們是純C、純數學、純邏輯的題目,不涉及界面這些東西,很適合煅煉你的編程能力。
回到主題,首先我們要明白你的目的是什麼,大概來說所謂嵌入式Linux可以分為兩部分:底層系統、應用開發。如果你是想做應用開發,那麼你去把C語言、數據結構、JAVA什麼的學好吧。嵌入式應用開發和PC上的應用開發並沒有什麼特別要注意的。也許你說在嵌入式上要做些優化,是的,要優化,但是未經優化的程序和PC上的程序開發沒什麼差別。另外,當你有能力去優化時,你已經不用來問這個問題了。具體到某個例子,比如說開發界面,在PC上我們用VC;在嵌入式Linux里也許我們用QT也許用Android,這個時候你應該去學學QT、Android的編程。但是基礎還是C或JAVA,在此基礎上去熟悉它們的接口。你學過VC的話,也是要花時間去了解那些類、控件的。
對於初學者嵌入式的學習步驟:
先打好兩個基礎:
電路基礎:熟悉數字電路,能看懂電路,能分析功能,能根據電路編程;
C語言基礎:要學的精通,學得不好,上了系統程序看都看不懂;掌握arm架構及其外設的使用,編程控制,做相應項目;學習系統編程及網絡編程,在應用程序中使用。
linux系統學習:uboot移植,內核移植、裁剪,根文件系統製作,驅動編寫與移植(花比較大精力學習,它是系統的核心,也結合硬件),應用編程用戶界面等。
先做系統編程或應用編程,有一定經驗之後可向底層驅動發展;軟件項目經驗比較豐富之後可向硬件電路設計發展。
綜合來說,純應用開發(如Java)來說,門檻較低,但更新太快,發展空間有限,生命周期太短;而嵌入式開發是靠經驗積累的,不用吃“青春飯”。
以上介紹的就是嵌入式的學習步驟了,本來嵌入式入門比較難,如果你是初學者的話,那麼在學習嵌入式的時候,不要太着急,這是一個循序漸進的過程,等你了解了嵌入式之後這些都不是問題了。
for (i = 0; i < 8; i++)
{
SetData((data >> i) & 0x1);
SetClockHigh();
for (j = 0; j < 5; j++);
SetClockLow();
for (j = 0; j < 5; j++);
}