很多大學生覺得嵌入式入門并不容易,這其中牽扯的內容、知識點太多。像C語言基礎是否掌握?匯編語言是否了解?電路原理學的怎么樣,能看懂接單的電路圖嗎?AD軟件學的怎么樣,能畫電路嗎?
嵌入式行業(yè)前景
有一種說法,下一個時代是物聯(lián)網(wǎng)的時代,以后的生活一定是智能的、萬物互聯(lián)的,所有的家電都會集中到一個終端上,通過這個終端就可以控制周圍的一切,就像扎克伯格為自己家的設備寫的一套系統(tǒng)一樣,通過一個語音助手就控制整個家。
這些智能設備都需要我們嵌入式開發(fā)者來做,把那些設備嵌入進程序,讓它們任你控制。 最近華為、中興的芯片事件刺痛了每一個國人的心。華為因為被美國制裁,麒麟芯片將成為絕版,因為以國內的技術、設備、工藝水平無法生產7納米芯片。在芯片領域,國家投入幾千億來做,這方面人才非常稀缺。 傳聞阿里收購了唯一自主嵌入式 CPU IP Core 公司中天微,就是想做芯片,解決我們的無 “ 芯 ” 之痛。我們學習嵌入式正好可以用的上,相關文章推薦:嵌入式行業(yè)真的沒前途嗎?嵌入式學習的有軟件知識還有硬件知識,當看到學習的是可以實際操作的單片機后就感覺不錯了。 嵌入式以后的工作是可以動手做自己想做的東西,而且是很智能的設備,開發(fā)出來一款設備豈不是很爽,比如門禁,熱敏打印機,電子手表,掃地機器人等等。 最后真正喜歡嵌入式的話,那么就好好學習吧,后期的學習嵌入式還是有點難度的,這個時候就要發(fā)揮興趣的作用了,相關文章推薦:嵌入式開發(fā)經(jīng)驗分享,把學習當作一種興趣。既然喜歡,知道他好,那再難也要去學,這樣一定能學好的,比的不是誰比誰聰明,比的完全是誰學的時間久,學的知識多。
如何入門嵌入式
大學期間想要學好嵌入式,那么從大一開始吧。嵌入式不容易學習,嵌入式牽扯的東西太多了,不會像軟件那么容易學。 你可能見過滿大街JAVA、Python、大數(shù)據(jù)、數(shù)據(jù)庫的培訓 ,但很少聽到有培訓嵌入式培訓吧?
就是因為入門難,既要掌握軟件的知識,還要學習硬件的知識,還要學習各種硬件之間通訊原理。也就是說,嵌入式學習需要一定的的科班基礎,相關文章:嵌入式行業(yè)那些坑與出路。 大一剛來的話肯定要多參加學校的活動,多交些朋友的,期間要留意下實驗室什么時候納新,最好從實驗室納新的時候就進去,當然大一主要學習C 語言。 大二要開始學習單片機了,這個要有老師,學長帶帶,有實驗室的環(huán)境,還能一起做項目,學的會快很多,想著在宿舍學習的盡早放棄,感覺幾乎不可能學好。
如果大一上學期就加入了實驗室,那么上學期就應該把 C 語言學習完的,C 語言在實驗室學習的進度一定要比課堂上的快的,不會的就問別人或者上網(wǎng)搜索。這樣下學期就開始學習單片機,剛開始學習的時候一套資料是一定要有的,不然很吃力。
怎么才算是掌握了單片機?
大一階段,懵懵懂懂,思維還沒有從高中轉變過來。總覺得學習就是要把所有的東西看一遍做一遍才叫會。如果是這樣的話,那你的上限只會成為一個 “ 匠 ”。
所謂掌握,就是做到心中有數(shù),那什么樣算心中有數(shù)?這就很關鍵了,掌握單片機的核心構架、擁有自己的編程思想。 我當時學到了大二下學期,把單片機的各個模塊都學習過了,但是不太會用,不能把每個模塊結合起來做一個項目。 后來有幸參加電賽,當時的題目是做一個可以改時間的萬年歷,我們需要把溫濕度模塊,時鐘模塊,按鍵模塊,液晶模塊都添加到程序中,并且讓他們能夠運轉正常,最后在主函數(shù)里面調用各個模塊的功能,做成了一個項目,不一定非要把每一個知識點都吃透,但是你要準確無誤的用起來,那么這時候你就算是學會了。
大一應該學習最重要的 C 語言,51 單片機,大二學 51 單片機也可以,高數(shù)也應該好好學下,考研或者以后的工作中會有用的。
大二期間一定要把 51 單片機學完,做幾個小項目,再學習些自己感興趣的模塊,比如紅外感應模塊,WIFI 模塊,藍牙模塊,指紋檢測模塊。..。..
很多很多模塊的,你可以實現(xiàn)你自己的想法了。
譬如做個跑馬燈、動態(tài)數(shù)碼管顯示、模擬個 “ 世上只有媽媽好的鈴聲 ”、又或者弄個難點的時鐘計時又或者紅外控制,想做什么,都可以問問老師有沒有相關的模塊。
大二期間還應該學習畫原理圖的軟件 protel99se 或者 AD(Altium Designer),C++,數(shù)據(jù)結構,數(shù)據(jù)庫,這些都是課堂上的課程,在課堂上好好學習就行。 英語在以后的工作中也挺重要的,要看英文的文檔,四六級要好好準備。 在大二下學期也可以開始學 STM32 單片機了,我是大二暑假留在學校的實驗室學習 STM32 的,就是每天看視頻學些基礎的知識。
大三學習一種做上位機的語言 VC 或者 C#,同時 STM32 要學的精通了,可以先在 STM32 上學習 UCOS 實時操作系統(tǒng),大三的時候要多參加大的項目,多參加比賽,我們實驗室就會常參加電賽,還有挑戰(zhàn)杯,藍橋杯,拿著自己做的東西去參加。
大三如果還有時間的話,就開始做畢業(yè)設計,一般兩個月應該就能做好了,我們是選擇暑假留在學校做畢業(yè)設計,實驗室的老師給的題目。
做完了就用 ARM 學習 LINUX,當然 LINUX 在學校階段熟悉就行。如果這些知識都掌握了,那學的一定不錯了,以后就去實習吧,盡早去社會磨練磨練。
看了看怎么這么多東西要學,選一個方向學不就行了嗎? 其實大學所學的知識都是基本的知識,所學的知識都是為你以后學習更加深的知識打基礎的,當你選擇一個新的方向,在大學里面如果還接觸過,那么學習起來就沒那么難了,如果壓根沒見過,那么學習起來一定會花費大量的時間,工作的時候可不會給你這么多時間學,所以多學點肯定是有用的。
最有效的學習方法就是做項目
當把一個知識,單片機的基礎知識看完之后,一定要做項目,做項目才能讓你學的更快。簡單談一下我從做項目中獲取的經(jīng)驗吧。 讀大學期間就對無線控制很感興趣,覺得無線控制很有意思,響應設備與控制設備之間的數(shù)據(jù)交互看不見摸不著,但卻能精準高速的相互通信。經(jīng)過一段時間的學習,我選擇紅外線這一無線通信工具。 完成的項目是 “ 基于物聯(lián)網(wǎng)教室空調控制系統(tǒng) ”,主要實現(xiàn)的功能,學習、發(fā)射紅外碼,加入 WIFI 通信功能、定時功能、溫濕度檢測等。 首先接到這個項目,先了解基本功能,設計一下方案,思考方案可不可行,各個模塊如何相互配合工作?具體需要什么模塊等等吧,然后選擇適合的 MCU,不需要多大夠用就行,然后選擇要使用的模塊硬件。
準備工作做好之后,就可以從 PCB 構圖做起了。當然如果沒有條件,可以選擇一個帶有你需要模塊的現(xiàn)有單片機。硬件準備好之后,就可以嵌入式最擅長的軟件編程了。
編程過程中要多注意細節(jié),以及個人編程習慣都會導致一些很難排查的 bug,過程當中無可避免的會出現(xiàn)各種各樣的 bug,多與人交流經(jīng)驗,另外關鍵代碼加注釋,方便溫故而知新。
審核編輯:黃飛
-
單片機
+關注
關注
6044文章
44624瀏覽量
638955 -
嵌入式
+關注
關注
5095文章
19189瀏覽量
307974 -
C語言
+關注
關注
180文章
7615瀏覽量
137827
原文標題:嵌入式開發(fā)如何入門?
文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發(fā)】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
什么是單片機嵌入式?
什么是嵌入式單片機?嵌入式單片機詳情匯總
單片機如何過渡到嵌入式?
如何從單片機過渡到嵌入式?
![如何從<b class='flag-5'>單片機</b>過渡到<b class='flag-5'>嵌入式</b>?](https://file.elecfans.com/web1/M00/95/08/pIYBAFzvifyATQufAAOyILhls10069.png)
單片機與嵌入式的轉化
怎么學習嵌入式和單片機
如何入門嵌入式
單片機與嵌入式區(qū)別
![<b class='flag-5'>單片機</b>與<b class='flag-5'>嵌入式</b>區(qū)別](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
單片機or嵌入式linux
![<b class='flag-5'>單片機</b>or<b class='flag-5'>嵌入式</b>linux](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
單片機和嵌入式的區(qū)別
![<b class='flag-5'>單片機</b>和<b class='flag-5'>嵌入式</b>的區(qū)別](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論