一、單片機入門篇
1、學好電子技術基礎知識,如電路基礎、模擬電路、數(shù)字電路和微機原理。這幾門課程都是弱電類專業(yè)的必修課程,學會這些后能保證你看懂單片機電路、知道電路的設計思路和工作原理;
2、學習計算機硬件知識,如計算機的簡單組成原理,要知道CPU、總線等的一些基本概念;
3、學習C語言的編程知識,了解結構化語言的程序設計方法,懂一些常用的算法,比如冒泡排序、中值算法等;
以上是基礎,有了這些基礎,學習單片機就只要花幾周的時間就能上手。但學習單片機時,主要從單片機的寄存器開始,其中特殊功能寄存器是重點,學會之后,就可以學習單片機的基礎部分了,主要是四個部分:
單片機I/O口的使用、中斷的使用、定時器的使用、片上資源的使用。這些部分都可以用軟件仿真(可以用proteus軟件),注意軟件仿真跟實際電路存在區(qū)別,軟件仿真僅僅用來驗證一下功能是否實現(xiàn),并不能取代實際電路。
二、單片機加強篇
1、可以買一塊單片機開發(fā)板,結合提供的原理圖和例程學習單片機的外設電路和片上資源的編程,每學習一個功能塊,就要把這個功能塊搞懂,切忌三天打魚兩天曬網(wǎng),用學習板的弊端就是全靠自覺無人監(jiān)督很容易讓板子壓箱底;
2、修改例程,以學習板為載體,自己新建編程工程,用自己的編程思想讓外設電路實現(xiàn)想要的功能,程序是靈活的,每個人都有不同的編程思想,多試幾種方法,提高程序的執(zhí)行效率,鍛煉自己的編程能力;
三、單片機進階篇
1、學習硬件是一件非常燒錢的事情,這不同于純軟件編程和網(wǎng)頁設計只需要一臺電腦和一個編程環(huán)境就能實現(xiàn),硬件學習需要設計做電路板、買元件、買調試工具,所以學習硬件就要做好燒錢的心理準備。為了進階,你要自己設計電路、做板子、寫程序;
2、加入實驗室的項目,學習是一個寬范圍的事情,以學懂為目標,但是你不知道到底該學多深;做項目是一個深鉆入的事情,以實現(xiàn)功能為目標,為了實現(xiàn)目標、為了節(jié)省成本你可能要拋棄很多現(xiàn)有的方案,而深入研究下去,這能使你在該領域快速積累經(jīng)驗;
3、深鉆研,硬件的范圍非常廣,你可能是USB通訊協(xié)議領域的專家,但你不一定了解CAN總線;你能在短時間內做好ZigBee,但你不一定能很快搞定Wifi;所以,一定要把一個項目深入下去,與別人在溝通交流的時候要心誠。
學習單片機其實并沒有那些人說的那么難,只是他們聽說就覺得這很難的樣子,學單片機可不能被這給嚇到。學習單片機是一件很有趣的事情,之所以覺得難,就是因為不知道怎么入手,怎么開始學習。
學習單片機總結一下就是兩方面:一是電路,二是編程語言。首先,電路的話,需要學的就是模電,數(shù)電,電路,這是學習電路必經(jīng)之路。其實如果你學會了這些,你也是可以找一個薪資還可以的工作,當然能找到這些工作也就是去一些大公司,分工明確的公司才可以,而一些小公司,他們只會要求你要全能,也就是說一個項目你要從芯片的選型,到外圍電路的搭建,最后I/O口的定義,程序的編譯調試,最后PCB板的制作,焊接,調試等等,你都要掌握。這樣,你的工資也是很可觀的,所以學習電路是必須的,你學單片機就先從電路入手展開學習。
單片機最基礎的就是C語言編程了,你要理解C語言怎么編程,要有自己的思路,邏輯。多加練習,學到什么程度呢?就看到一道題,你自己腦子里就要有思路,想法,然后再去下手寫,當然在學C語言的時候,最難的也就是指針了,你需要去攻克他,多做一些題,多練一練。有些人,學習單片機,全靠死記硬背,這是萬萬不可的,還是想要你多練習。
該如何選擇你學習的單片機型號呢?開始學的時候,建議你使用51單片機,你所確定的型號是STC89C52,這款單片機雖然比較老了,但是依然具有學習價值,DIP40封裝的STC89C52單片機如下圖所示:
確定好單片機,那就要看看使用什么編程環(huán)境了,像51單片機我們可以使用keil來編程,這樣是可以提高學習效率的。如果你已經(jīng)理解或者學到這里了,那么你就已經(jīng)入門了,但說入門還早了點,你還得需要學習單片機里面:
1. GPIO:就是學習單片機引腳的控制方法,將引腳配置輸入或者輸出,比如說:點亮發(fā)光二極管、控制蜂鳴器發(fā)聲、控制繼電器吸合、控制按鍵輸入、點亮數(shù)碼管等;
2.定時器:定時器,要學會如何配置比如說:發(fā)光二極管定時閃爍、數(shù)碼管顯示的數(shù)值定時自加等;
3.UART:學習單片機的UART功能,學習RS232通訊,比如說:單片機發(fā)送字符用串口調試助手在電腦上顯示;
4.IIC:學習IIC通訊,比如說用AT24Cxx系列實現(xiàn)數(shù)值的掉電保存功能;
5.AD采樣:學習模數(shù)轉換知識,比如說:調節(jié)滑動變阻器,改變所采集的電壓,實時顯示此時的電壓;
初次之外可能還有:SPI,液晶屏、點陣、外部中斷、D/A等,等你學到這里,你就可以根據(jù)自己的具體想法來實現(xiàn)想要的功能了,那這樣,單片機就會被你輕松收入囊中了。想要知道更多單片機的學習,可以咨詢華清遠見,能得到更多你想知道的。
1.單片機是什么?
單片機其實就是一個微控制器,通過控制引腳輸出高低電平來控制不同的外圍電路,實現(xiàn)不同的產(chǎn)品功能。
2.學習單片機需要準備什么
一塊51單片機開發(fā)板(60塊錢左右)、一臺電腦、相應的軟件,比如說keil。單片機開發(fā)板的話,小黑推薦51單片機的開發(fā)板,真的很適合小白,而且基本上新手前期需要學習的外設,它都有,非常的nice,商家給的例程讓我們度過新手期也是綽綽有余的。 非常的nice。電腦的話,基本上普通的辦公電腦都可以支持。軟件方面,想要什么軟件就去微信公眾號上搜就好了,非常的方便,還配安裝教程哦!(不會有人還不知道微信公眾號這個寶藏吧)。
3.單片機該怎么學?
現(xiàn)在網(wǎng)上關于51單片機的視頻和書籍,一抓一大把,很多同學就迷茫了,我是先看書呢,還是先看視頻呢?非常的糾結。那單片機應該怎么學呢?小黑推薦先看視頻再看書的方式。為什么要這樣?因為我個人覺得,很多技術書都是很厚的一本,自己看下來要花費很多時間精力,而且很多知識點在工作中很少會用到,可以暫時先略過的。視頻一般會比較短,一般是幾天就能看完,而且老師一般只挑重點的講。我們時間都很寶貴,我建議先把老師講的知識完全掌握了以后,再利用書籍進一步擴展其它知識。不只是51,其他的STM32、Linux等等,都可以這樣學,非常的輕松,但是,不管是看書還是看視頻,一定要寫代碼。
最后還有一個非常重要的事情,C語言!C語言!C語言!(重要的事情說三遍),C語言真的很重要,你可以先學C語言再學51,也可以一邊學C語言一邊學習51(51對C語言要求不是很高),但是你可千萬不能不學C語言,小黑之前就是吃了C語言的虧
對于C語言的學習,小黑覺得可以看看《C程序設計語言》,這本書雖然寫于80年代,但現(xiàn)在看來依然不過時。主要是這本書比較薄,容易看完,比較有成就感??赐辍禖程序設計語言》之后,最好再看《C和指》 ,《C專家編程》,《C陷阱與缺陷》。學完它們你的C語言水平絕對是非常之高了。做我們這行,C語言是基礎語言,一定要把C語言完全拿下。





