從零開(kāi)始學(xué)好單片機(jī),你應(yīng)該這樣做
需要開(kāi)發(fā)板
單片機(jī)屬于硬件,不推薦大家使用單片機(jī)仿真軟件來(lái)學(xué)習(xí)單片機(jī),只有親自操作它,才會(huì)有深刻的體會(huì)。單片機(jī)這門(mén)課是一門(mén)非常重視動(dòng)手實(shí)踐的科目,不能總是看書(shū),但是也不能完全不看書(shū),我們需要從書(shū)中大概了解一下單片機(jī)的各個(gè)功能寄存器,如果看的多了反而容易搞亂,尤其是現(xiàn)在市場(chǎng)上大多數(shù)講單片機(jī)的書(shū)一開(kāi)始就講解較復(fù)雜的內(nèi)存、地址、存儲(chǔ)器什么的,更讓初學(xué)者感到不知所云、難以入門(mén)。簡(jiǎn)單的說(shuō),當(dāng)我們使用單片機(jī)時(shí),實(shí)際上就是用我們自己編寫(xiě)的軟件去控制單片機(jī)的各個(gè)功能寄存器,再簡(jiǎn)單些,就是控制單片機(jī)哪些引腳的電平什么時(shí)候輸出高,什么時(shí)候輸出低,由這些高低變化的電平來(lái)控制外圍電路,實(shí)現(xiàn)我們需要的各個(gè)功能。關(guān)于看書(shū)
關(guān)于看書(shū),大家只需大概了解單片機(jī)各引腳的功能,了解下寄存器。我們要把更多的時(shí)間放到實(shí)踐中去,這才是最關(guān)鍵的,在實(shí)踐的過(guò)程有不懂之處再查書(shū),這樣記憶才深刻。關(guān)于實(shí)踐
關(guān)于實(shí)踐有兩種方法你可以選擇,方法一自己花錢(qián)買(mǎi)一塊單片機(jī)的學(xué)習(xí)板,不要求那種價(jià)格上千塊功能太全的,對(duì)于初學(xué)者來(lái)說(shuō)你買(mǎi)功能太全的板子,上面有很多東西平常都用不著,我們建議有流水燈、數(shù)碼管、獨(dú)立鍵盤(pán)、矩陣鍵盤(pán)、AD 和 DA、液晶、蜂鳴器、IIC 總線、有 USB 擴(kuò)展也最好,這些就差不多了。如果上面提到的這些功能你能熟練應(yīng)用,那可以說(shuō)對(duì)于單片機(jī)本身的操作你已經(jīng)入門(mén)了,剩下的就是自己練習(xí)設(shè)計(jì)外圍電路,不斷的積累經(jīng)驗(yàn)。只要過(guò)了第一關(guān),后面的路就好走多了,萬(wàn)事開(kāi)頭難。方法二你身邊如果有單片機(jī)方面的高手,向他求助,讓他幫你搭個(gè)簡(jiǎn)單的最小系統(tǒng)板。對(duì)于高手來(lái)說(shuō),做個(gè)單片機(jī)的最小系統(tǒng)板可能只需要幾分鐘的時(shí)間,而對(duì)于初學(xué)者可就難多了,因?yàn)橹挥袑?duì)硬件徹底了解了,你才能熟練的駕馭它。而如果你身邊沒(méi)有這樣的高手,又找不到可以幫助你的人,那我勸你還是選擇方法一,畢竟自己有一塊學(xué)習(xí)板要方便的多,以后做單片機(jī)類的小實(shí)驗(yàn)時(shí)經(jīng)常都能用得上,省時(shí)又省事。需要練習(xí)
有了單片機(jī)學(xué)習(xí)板之后你就要多練習(xí),把學(xué)習(xí)板和電腦連好,打開(kāi)調(diào)試軟件坐在電腦前,先學(xué)會(huì)怎么用調(diào)試軟件,然后從最簡(jiǎn)單的流水燈實(shí)驗(yàn)做起,等你能讓那八個(gè)流水燈按照你的意愿隨意流動(dòng)時(shí)你已經(jīng)入門(mén)了,你會(huì)發(fā)現(xiàn)單片機(jī)的魅力所在。當(dāng)你編寫(xiě)的程序按你的意愿實(shí)現(xiàn)時(shí),你比做任何事都開(kāi)心,然后讓數(shù)碼管亮起來(lái),這兩項(xiàng)會(huì)了后,你已經(jīng)不能自拔了,但是在寫(xiě)程序的時(shí)候你肯定會(huì)遇到很多問(wèn)題,而這時(shí)你再去翻書(shū)找,或是問(wèn)別人,或是上網(wǎng)搜索,當(dāng)?shù)玫浇獯鸷竽銜?huì)記住一輩子的,知識(shí)必須應(yīng)用于現(xiàn)實(shí)生活中,解決實(shí)際問(wèn)題,這樣才能發(fā)揮它的作用。另外再談?wù)勱P(guān)于用匯編語(yǔ)言還是 C 語(yǔ)言編程的問(wèn)題,很多同學(xué)大一就開(kāi)設(shè)了C語(yǔ)言的課,建議用C語(yǔ)言比較好,如果原來(lái)有 C 語(yǔ)言的基礎(chǔ)那學(xué)起來(lái)會(huì)更好,如果沒(méi)有,也可以邊學(xué)單片機(jī)邊學(xué) C 語(yǔ)言,C 語(yǔ)言很簡(jiǎn)單,只是一門(mén)工具而已,將來(lái)肯定用得著,要不然以后也得學(xué),你一點(diǎn)匯編都不會(huì)根本無(wú)所謂,但你一點(diǎn) C 語(yǔ)言都不會(huì)那你將來(lái)會(huì)吃苦頭。書(shū)籍推薦
給大家推薦一本書(shū),作者譚浩強(qiáng),書(shū)名《C程序設(shè)計(jì)》,清華大學(xué)出版社,大家在學(xué)習(xí)本書(shū)的同時(shí)再參考上面提到的這本書(shū)更有利于 C 語(yǔ)言學(xué)習(xí)。也根本沒(méi)必要再?gòu)念^把《C程序設(shè)計(jì)》學(xué)一遍,就算再學(xué)一遍也許結(jié)果還是和你現(xiàn)在一樣,最好的辦法就是用到哪里學(xué)哪里。編程語(yǔ)言
匯編寫(xiě)程序代碼效率高,但相對(duì)難度較大,而且很繁瑣,尤其是遇到算法方面的問(wèn)題時(shí),根本是麻煩的不得了,現(xiàn)在單片機(jī)的主頻在不斷的提高,我們完全不需要那么高效率的代碼,因?yàn)橛懈哳l率的時(shí)鐘,單片機(jī)的 ROM 也在不斷的提高,足夠裝得下你用 C 語(yǔ)言寫(xiě)的任何代碼,C 語(yǔ)言的資料又多又好找,將來(lái)可移植性非常好,所以我建議大家用C語(yǔ)言。總結(jié)
總結(jié)上面,只要你有信心,做事能堅(jiān)持到底,有不成功絕不放棄的強(qiáng)烈意志,那學(xué)個(gè)單片機(jī)對(duì)你來(lái)說(shuō)就是件非常容易的事。建議步驟:- 看書(shū)大概了解一下單片機(jī)結(jié)構(gòu),大概了解就行。不用都看懂,又不讓你出書(shū)。
- 用學(xué)習(xí)板練習(xí)編寫(xiě)程序,學(xué)單片機(jī)主要就是練編程序,遇到不會(huì)的再問(wèn)人或查書(shū)。
- 自己網(wǎng)上找些小電路類的資料練習(xí)設(shè)計(jì)外圍電路。焊好后自己調(diào)試,熟悉過(guò)程。
- 自己完全設(shè)計(jì)具有個(gè)人風(fēng)格的電路、產(chǎn)品的能力時(shí)你已經(jīng)是高手了。
END
來(lái)源:技術(shù)讓夢(mèng)想更偉大作者:李肖遙版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除。
▍