學(xué)習(xí)單片機(jī)的感悟,以51為例。
首先總體上談一談看法:
1、我從不說(shuō)51是基礎(chǔ),如果我這么說(shuō),也請(qǐng)把這句話理解為微機(jī)原理是基礎(chǔ)。
2、對(duì)51單片機(jī)的操作本質(zhì)上就是對(duì)寄存器的操作,對(duì)其他單片機(jī)也是如此,庫(kù)只是一個(gè)接口,方便使用者使用而已。
3、匯編語(yǔ)言在工作中很少用到,了解就好。
4、51的P0口很特別。
5、C語(yǔ)言就是C語(yǔ)言,51單片機(jī)就是51單片機(jī),算法就是算法,外圍電路就是外圍電路,傳感器就是傳感器,通信器件就是通信器件,電路圖就是電路圖,PCB圖就是PCB圖,仿真就是仿真。
當(dāng)你以后再也不使用51了,C語(yǔ)言的知識(shí)還在,算法的知識(shí)還在,搭建單片機(jī)的最小系統(tǒng)的技能還在,傳感器和通信器件的使用方法還在,還會(huì)畫電路圖和PCB圖,當(dāng)然也會(huì)仿真。
6、當(dāng)程序調(diào)試不如人意的時(shí)候,靜下心來(lái)好好查資料,51單片機(jī)最大的好處就是網(wǎng)上資料非常多,你遇到的問(wèn)題別人肯定也遇到過(guò),作為學(xué)習(xí)者,問(wèn)人可能更方便點(diǎn),但一直這樣是培養(yǎng)不出解決問(wèn)題的能力的!
接下來(lái)上點(diǎn)干貨:
首先要放清51的定位,跟我一起再念一遍:51只是個(gè)工具51只是個(gè)工具51只是個(gè)工具。
當(dāng)然51還有一個(gè)地位就是大學(xué)生單片機(jī)啟蒙教程,換句話說(shuō):?jiǎn)纹瑱C(jī)只是個(gè)工具單片機(jī)只是個(gè)工具單片機(jī)只是個(gè)工具。
然后什么是基礎(chǔ),模電數(shù)電微機(jī)原理,然后熟練翻閱數(shù)據(jù)手冊(cè),可以試著做一些模塊或者最小系統(tǒng)練練手,C語(yǔ)言其實(shí)也可以算工具吧,就單片機(jī)來(lái)說(shuō),作為必要條件也算作為基礎(chǔ)吧。
再然后是要盡早搞明白自己的專業(yè)方向或者自己準(zhǔn)備發(fā)展的方向,然后不同方向又有不同的專業(yè)基礎(chǔ)。
你學(xué)測(cè)控,就需要各種傳感器、控制原理、理論、算法;你學(xué)信號(hào)處理,就需要信號(hào)與系統(tǒng)、數(shù)字信號(hào)處理基礎(chǔ),然后慢慢接觸DSP、FPGA;
你想做嵌入式開發(fā),就慢慢研究ARM的架構(gòu),跑一些實(shí)時(shí)系統(tǒng)甚至高端ARM跑Linux開發(fā)驅(qū)動(dòng)或應(yīng)用等等。
總之51單片機(jī)可以實(shí)現(xiàn)很多事情,但這不是一定說(shuō)51重要,而是你如何利用51。
哦,對(duì)了,當(dāng)你使用更高級(jí)的芯片的時(shí)候,很多底層的東西慢慢可以忽略了,甚至很多芯片廠商都會(huì)提供庫(kù)給你,你可以安心的專注于自己的算法而不是如何去控制單片機(jī)。
當(dāng)然你最好還是要有一個(gè)芯片怎么通過(guò)寄存器及各種邏輯電路工作的概念。
還有說(shuō)一下你大學(xué)課余生活的選擇,首先那種機(jī)器人實(shí)驗(yàn)室或?qū)W生領(lǐng)導(dǎo)的實(shí)驗(yàn)室,適合打比賽刷獎(jiǎng)狀,長(zhǎng)期下來(lái)你的模數(shù)電技能能有很大的鍛煉,甚至你可以收獲一些專利。
另外一種就是找個(gè)導(dǎo)師跟著學(xué)習(xí)、幫忙、做項(xiàng)目,盡管最開始可能感覺(jué)導(dǎo)師分配給你的任務(wù)怎么都和單片機(jī)無(wú)關(guān)啊好無(wú)聊,但是你能在某個(gè)領(lǐng)域收獲不一樣的技術(shù)。
當(dāng)然前提是你要喜歡導(dǎo)師的研究方向了,一般院網(wǎng)站都有或者去知網(wǎng)看這個(gè)老師發(fā)表的論文。
談?wù)勎业慕?jīng)歷吧:
1、一個(gè)沒(méi)有C基礎(chǔ)的的我,從師兄老師那打聽到學(xué)51從郭天祥的視頻開始,所以我就下載了全套來(lái)看。
剛開始看真是頭都暈了,點(diǎn)亮一個(gè)LED燈還可以,到了第二課的延時(shí)函數(shù)就吃不消了,可以說(shuō)我沒(méi)有堅(jiān)持,不是真正想學(xué)東西的人,當(dāng)時(shí)的我沒(méi)有把它放心上,只是看了4課而已,其實(shí)對(duì)里面的程序不太理解的,于是就停下來(lái)不學(xué)了。
到了大二下學(xué)期,我發(fā)現(xiàn)要學(xué)點(diǎn)技術(shù),所以重抄舊業(yè),學(xué)習(xí)單片機(jī),然后再?gòu)牡谝还?jié)課開始看起,結(jié)果發(fā)現(xiàn)以前不明白的東西現(xiàn)在豁然開朗。
我寫這經(jīng)歷是想說(shuō),如果當(dāng)時(shí)我堅(jiān)持下去,不懂的地方多看幾遍,就不會(huì)浪費(fèi)大半年的時(shí)間了。
有些知識(shí)理論靠時(shí)間的積累,第一遍看不懂,第二遍看不懂,第三遍可能就懂一點(diǎn)了,剛開始上手一件事是會(huì)遇到類似的情況的。
2、當(dāng)我學(xué)了1個(gè)月后,學(xué)校里有個(gè)比賽,團(tuán)隊(duì)需要一個(gè)人搞硬件,于是我自己提出搞硬件,為什么?
因?yàn)樵趯W(xué)單片機(jī)的過(guò)程中發(fā)現(xiàn),自己只會(huì)跑程序,連原理圖都不怎么會(huì)看,單片機(jī)的接線我都是看開發(fā)板提供的資料來(lái)接的,很狗血吧。
于是我就開始接觸Altium Designer了,這是我這學(xué)期學(xué)的第二個(gè)軟件,是看視頻入門的,剛開始看的是郭天祥的視頻,結(jié)果發(fā)現(xiàn)看不下去啊,太長(zhǎng)太累了,看完一集好痛苦啊。
于是我搜搜,結(jié)果發(fā)現(xiàn)一個(gè)很好的教學(xué)視頻,用的也是比較新的版本,跟著視頻學(xué)習(xí)1個(gè)月,會(huì)畫51最小系統(tǒng),基本布線。
3、在學(xué)Altium Designer的過(guò)程中涉及到電路分析,于是愛(ài)折騰的我開始搗鼓起Multisim 12.0,這是一款電路模擬仿真的軟件。
跟著老師學(xué)挺慢的,但是教材又高深了一點(diǎn),比如說(shuō)分析放大電路,穩(wěn)壓電源,教材上的東西大多列出公式,對(duì)于零基礎(chǔ)學(xué)習(xí)的朋友是挺苦逼的,而且老師也是趕鴨子式,講考試內(nèi)容。
后來(lái)我在圖書館偶然發(fā)現(xiàn)一本書的,這本書剛開始他不會(huì)介紹一大堆公式,而是以一個(gè)例子開始教學(xué),一步一步教你認(rèn)識(shí)元器件,然后從電路圖開始分析,接著分析系統(tǒng),書本結(jié)合Multisim 仿真,教會(huì)了我使用里面的控件。
寫到這里自己總結(jié)下:
1.先認(rèn)識(shí)單片機(jī),了解單片機(jī)的主要組成和各個(gè)管腳的定義及功能;
2.了解一些單片機(jī)匯編知識(shí),方便后續(xù)調(diào)試;
3.掌握單片機(jī)中斷機(jī)制;
4.掌握單片機(jī)定時(shí)和計(jì)數(shù)器;
5.掌握單片機(jī)的串口通信。
以上是想從事單片機(jī)學(xué)習(xí)的人必須掌握的基本內(nèi)容。
猜你喜歡
最 后
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!