標(biāo)題: 想問下新手怎么開始學(xué)單片機 [打印本頁]

作者: 蒼月    時間: 2017-6-7 12:50
標(biāo)題: 想問下新手怎么開始學(xué)單片機
大二開始要學(xué)單片機了,想先提前學(xué)習(xí)下,怎么入手學(xué)習(xí)單片機更好點呢?

作者: HC6800-ES-V2.0    時間: 2017-6-8 08:52
http://www.torrancerestoration.com/bbs/dpj-86998-1.html
http://www.torrancerestoration.com/bbs/dpj-86868-1.html
最近,怎樣學(xué)習(xí)的貼子很火,正好你可以看到!
作者: JoeForMZ    時間: 2017-6-8 10:23
建議看一下郭天祥51單片機系列

作者: 東dong    時間: 2017-6-8 10:43
可以入手一個單片機,一般單片機里面都有詳細(xì)的入門講解,可以跟著一步一步系統(tǒng)的學(xué)習(xí)下
作者: zuobo    時間: 2017-6-8 11:42
看郭天祥的視頻學(xué)吧...不過可以先學(xué)匯編來熟悉硬件結(jié)構(gòu)
作者: zl2168    時間: 2017-6-8 11:53
真誠地給你推薦2本書,《80C51單片機實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學(xué)習(xí)51單片機原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學(xué)。《80C51單片機仿真設(shè)計實例教程——基于Keil C和Proteus》清華大學(xué)出版社ISBN 978-7-302-41682-1,內(nèi)有常用的單片機應(yīng)用100案例,用于仿真實驗操作,電路與程序真實可靠可信可行。與其他書比較一下,有比較才能有鑒別!絕不忽悠你!
作者: a'sh    時間: 2017-6-8 11:57
從網(wǎng)上下個視頻買塊開發(fā)版就都會了
作者: cam226390674    時間: 2017-6-8 13:15
從基礎(chǔ)的來始
作者: 2298846974    時間: 2017-6-8 18:27
第一步看資料,視屏學(xué)習(xí);第二步,獨立做程序
作者: slimchao    時間: 2017-6-8 19:04
單片機學(xué)習(xí)經(jīng)驗總結(jié)

單片機的學(xué)習(xí)是嵌入式中的裸機開發(fā),也就是不基于操作系統(tǒng)的開發(fā)過程,你只要把自己學(xué)的程序下載到單片機內(nèi)執(zhí)行即可(這個過程有個專業(yè)術(shù)語:燒寫), 在這個過程中,你所寫的程序,主要是控制作用。

然而基于操作系統(tǒng)的開發(fā)過程,對于我們計算機專業(yè)的學(xué)生來說,主要是開發(fā)進(jìn)行嵌入式應(yīng)用程序和驅(qū)動這兩個方面,這時候我想才是真正的嵌入式開發(fā)過程,說到這你可能會發(fā)出這樣的問題:那為什么我們還要學(xué)單片機?

直接學(xué)arm這類真正的嵌入式開發(fā)不就行了嗎?這就牽扯到學(xué)單片機的意義,其實從嵌入式開發(fā)的歷史來看,剛開始就是簡單地裸機開發(fā)過程,不涉及到基于嵌入式操作系統(tǒng)的開發(fā)過程,所以從單片機入手學(xué)習(xí)嵌入式,第一,你可以從這個行業(yè)的起點開始,真正使自己的知識系統(tǒng)化。第二,在學(xué)完單片機之后,可以加快你學(xué)習(xí)arm的速度。接下來我將從三個方面講怎樣學(xué)習(xí)單片機。

準(zhǔn)備篇:

剛開始,你可以不用急著寫程序,你可以把什么是單片機這個概念搞懂,你可能已經(jīng)看到過一塊單片機開發(fā)板,記。何疫@里強調(diào)的是單片機開發(fā)板,而不是單片機。單片機是由微處理器、存儲器和I/O接口電路構(gòu)成,同時它也有自己的內(nèi)部資源:定時/計數(shù)器、中斷源、優(yōu)先級查詢電路以及內(nèi)部總線(C51是單總線結(jié)構(gòu)),。單片機微處理器一般是8位的,存儲器分為ROM和RAM,在C51中,有4K的ROM和128字節(jié)的RAM,它們各自的容量要根據(jù)不同的單片機型號而定,我認(rèn)為現(xiàn)在的單片機的存儲器相比以前已經(jīng)拓展的很大了,例如STC12C5A 系列,他們的ROM已經(jīng)是64K,RAM是1028B,相比傳統(tǒng)的C51,你說這容量是不是很震撼。

我想也是的。當(dāng)然了,如果你足夠牛,你也許會碰到這樣一個情況:為什么我寫個一個全板測試測序為什么在C51上下載不進(jìn)去呢?因為你的程序大小已經(jīng)超過了4K了,呵呵。。。。在剛剛介紹單片機的內(nèi)部資源時,你也許已經(jīng)發(fā)現(xiàn)了,為什么我沒有把內(nèi)部資源寫的那么具體,因為不同單片機的內(nèi)部資源是有所不同的,但是都是大同小異,所以當(dāng)你拿到一個開發(fā)板時,首先就要看他的數(shù)據(jù)手冊,看看它的內(nèi)部資源是哪些,心中要有個數(shù)。。。。由單片機再加上外圍設(shè)備(簡稱外設(shè))就可以叫:單板機了,也就是人們常說的單片機開發(fā)板。

外設(shè)是很活的東西,因為外設(shè)的添加不是那么固定,這要根據(jù)開發(fā)單片機板子的工程師怎樣設(shè)計了。。。但是現(xiàn)在基于C51內(nèi)核的單片機開發(fā)板,其添加的外設(shè)都是差不多的,例如用于時鐘的DS1302,溫度傳感器18b20,數(shù)碼管,顯示器1602和12864以及TFT彩屏,還有大多數(shù)基于IIC總線的PCF8591、EEPROM,鍵盤(獨立和矩陣)等等。。


這時候,你可以不用著急忙于學(xué)外設(shè),你主要的任務(wù)是掌握單片機的運作過程,當(dāng)實現(xiàn)一個小功能的程序時,你可以想想這個程序涉及到哪些硬件資源,這個資源怎樣工作的?

即使不太懂也不用著急,畢竟這個時期主要是掌握單片機內(nèi)部原理,具體的思路你可以結(jié)合“模擬電路”,“數(shù)字電路”“計算機組成原理”“匯編語言”的知識獲得,學(xué)習(xí)單片機我認(rèn)為是一件很幸福的事,為什么這樣說,它本身就可以看做是一個早期的“電腦”,你可以知道各個指令的運行實質(zhì)(結(jié)合計算機組成原理中的“指令執(zhí)行過程”),這樣當(dāng)你在寫代碼的時候,心里不會感覺那么“虛”。。。。。

說的有點遠(yuǎn)了。說說匯編吧,我認(rèn)為學(xué)習(xí)匯編目的也就是為了更好地了解單片機里面的內(nèi)部資源:寄存器。因為C語言里面涉及到寄存器編程的很少,但是匯編就不同了,它對寄存器和物理地址都要掌握才能夠編程,這點對于單片機的學(xué)習(xí)還是很有好處的,因為你可以對“控制”這個概念有個很好的感性認(rèn)識。。。

說到現(xiàn)在,就是要告訴你,掌握單片機原理。但是難點還是有的,例如中斷響應(yīng)部分,各個I/O口結(jié)構(gòu)的特點,這方面在編程時會涉及到,有時候你忽視它,可能會造成不是自己想要的結(jié)果。當(dāng)然了,在這個階段,你不光要掌握單片機原理,還要把數(shù)字電路和C語言回顧一下。。。。。。

入門篇:

這個階段你可以用C語言寫代碼往里面燒寫程序了,記住這個階段有很重要的一點:不要放過任何一個程序,在這個時候你編寫的程序,有時候會碰到各種錯誤,但是正是這種錯誤才能鍛煉你的能力,所以盡量寫代碼。

你可以先從內(nèi)部資源的編程著手,例如學(xué)會熟悉各個引腳的控制,熟悉中斷的編程,用各種方法實現(xiàn)流水燈(方法一:利用循環(huán)左移(分為調(diào)用函數(shù)方式和P0=~(0x01<<j);j++方式);方式二:利用數(shù)組;方式三:用擴展I/O中的38譯碼器74HC138)。這些是我自己想的,你也可以用自己想到的方法去實現(xiàn)。相信自己。

當(dāng)自己熟悉了編譯環(huán)境后,最好找個源程序,把調(diào)試部分熟悉一下,畢竟編譯環(huán)境的熟悉在調(diào)試中還是有點必要的。。。當(dāng)你不會因一些小問題或軟件的故障而糾結(jié)時,你就可以開始對外設(shè)的編程控制了,這時候你就要掌握看開發(fā)板的原理圖,在碰到這個模塊時,首先要知道它是干什么的?然后記住它的各個接口怎么和單片機I/O相連的, 再了解他的各個電氣特性,記住是了解而不必深究,因為關(guān)于各個模塊的設(shè)計和電器特性,對于我們來說不是why 而是remember! 當(dāng)然了,當(dāng)你涉及到通信:UART、IIC時你應(yīng)該參照時序圖,把底層代碼看懂,看著看著你就會了,畢竟他們的底層代碼也不多。。。

記住時序圖一定要會看。這時候,不要把各個源代碼下載進(jìn)去僅看看現(xiàn)象,然后跟看電影的一樣,我想這樣你還不如真的去看電影,因為你的主要任務(wù)就是寫代碼,你這種方式放棄了你的主要學(xué)習(xí)部分!所一定要學(xué)會寫程序。。。。當(dāng)你把各個模塊都編程了一遍后,我想你還差很大的火候,因為你沒真正的去做:“想--寫---調(diào)試---想----調(diào)試-----實現(xiàn)”這樣的項目實現(xiàn),如果你能達(dá)到這個地步,我想說:你入門了。。

提高篇:

這個階段,我想你應(yīng)該開始找小的項目做了,例如在TFT上做個溫度變化趨勢圖,做個模擬鬧鐘什么的。。。要實現(xiàn)這里的每一個小項目,我感覺還是值得你去花一兩天認(rèn)真的去鉆研的。。。。畢竟這時候是你“自己想到,自己做到”的過程,(想想是不是很好玩?當(dāng)你做出這些項目的時候,你的快樂是別人所不知道的,呵呵),這個時候你可以盡量把板子上的資源綜合起來編程,盡量做個全板測試程序。。。

學(xué)到這里,我想你不是菜鳥了,但是還不是高手,因為單片機的學(xué)習(xí),對于我們計算機專業(yè)的來說,我們還是僅僅專研的是軟件部分,硬件僅僅涉及到模塊的接口,時序部分。。。。所以能走到這里,恭喜你:你不是菜鳥了。。。。。。。后來的路其實我在這里不用說了,因為你學(xué)到這里,自己自然之道自己怎么走了,


如果你想以后從事嵌入式行業(yè),你可以用基于操作系統(tǒng)的開發(fā)板學(xué)習(xí)了, 我認(rèn)為,在幾個流行的嵌入式系統(tǒng)中:WIN CE,Linux 以及VXWORK中,我認(rèn)為你可以選擇WINCE 或者LINUX,在開發(fā)板上,有ARM,PPC以及MIPS,我認(rèn)為可以毫不猶豫的選擇ARM ,所以買個開發(fā)板吧,向終極菜鳥進(jìn)軍。。。。。

最后,就說說單片機比賽,按照安徽省單片機比賽的趨勢來看,我想板子里面的源代碼他會給你的,所以你不必糾結(jié)于一些不必要的底層實現(xiàn)上,例如TFT彩屏的GUI,你有必要寫嗎?

我想是沒必要的,即便在你工作時,你從事的不是寫GUI,而是基于GUI寫應(yīng)用程序。但是在把底層代碼輸進(jìn)去的時候,一定要保證它是對的,不然比賽時,你哭都沒辦法,真的!

還有你比賽時的速度取決于你平時能把板子上資源掌握的有多熟悉,因為比賽的賽題,不可能是單個模塊的編程。。。。

還有隊友間的合作很重要,一定要把任務(wù)分工明確,不然會有一個干的是無用功。。。。

在比賽的準(zhǔn)備階段,不要忘記收集好的歷程和思想,因為比賽有時真的可以用到。。。。。

作者: 文龍    時間: 2017-6-8 20:09
郭天祥的書籍很好,很入門,很新手!很推薦,,,我也正在學(xué),一起加油吧!

作者: fzzzzzh    時間: 2017-6-8 21:28
先把單片機上的硬件都搞清楚,再跟著網(wǎng)上的教學(xué)視頻慢慢來就行,然后嘗試做一些簡單的小程序。
作者: a4270    時間: 2017-6-8 22:08
網(wǎng)上買個板子 自己慢慢學(xué),資料都很齊全的

作者: cgncgn1023    時間: 2017-6-8 22:46
可以網(wǎng)上買個開發(fā)板  淘寶店家給的資料也會很全
作者: 羅塔尼尼的黑犬    時間: 2017-6-8 23:16
買個開發(fā)版看書吧
作者: lulu82417    時間: 2017-6-9 09:22
先可以買普中科技單片機開發(fā)板學(xué)習(xí),然后再自己設(shè)計電路自己焊再編程實現(xiàn)功能,最主要就是學(xué)習(xí)好c語言
作者: 幸福如你    時間: 2017-6-9 09:58
買個開發(fā)板,普中之類的,看看視頻,剛開學(xué)學(xué)看點視頻比較好
作者: 阿薩啊    時間: 2017-6-9 13:34
去買  啊哈c   這本書   0基礎(chǔ)學(xué)
作者: weiyang    時間: 2017-6-9 14:05
自己動手設(shè)計一些簡單的電路
作者: echo休    時間: 2017-6-9 14:37
多看看視頻  然后自己找一些感興趣的小東西動手做一做,做出來會偶成就感 就有興趣往下學(xué)了的,主要是要多寫代碼
作者: echo休    時間: 2017-6-9 14:46
多看看視頻,然后自己找一些感興趣的東西做一做,做出來了會有成就感就會有興趣和信心往下學(xué),主要是要多動手寫代碼。
作者: nhjn567    時間: 2017-6-9 14:53
一定要好好學(xué)習(xí)C語言

作者: qxb261089    時間: 2017-6-9 15:21
自己設(shè)計個單片機學(xué)習(xí)板發(fā)到廠里做,回來后買元器件然后焊接,一邊看視頻教程一邊跟著做就行了。嫌麻煩直接在網(wǎng)上買個開發(fā)板也行。
作者: upupup    時間: 2017-6-9 15:37
先看書,基本知識得會,然后如果不想買板子的話可以先用proteus仿真,proteus真的很好用的
作者: 籪線    時間: 2017-6-10 17:34
多看看51開發(fā)板的例程,是個好東西,只要這些搞懂,一定會有幫助的
作者: 欣然相惜    時間: 2017-6-10 21:08
建議買普中科技單片機開發(fā)板學(xué)習(xí)  里面有附帶U盤有學(xué)習(xí)的視頻 比較詳細(xì) 還沒買到開發(fā)板 就先看看郭天祥的視頻把 雖然視頻不是很清晰
作者: hi,嫖啊嫖    時間: 2017-6-10 22:11
看郭天祥的視頻
作者: 164698429    時間: 2017-6-10 22:47
吳鑒鷹單片機項目實戰(zhàn)精講 可以一看
作者: 924    時間: 2017-6-11 10:38
看視頻買塊開發(fā)版就都會了
作者: papapap    時間: 2017-6-11 14:24
看視頻學(xué)習(xí)挺快的
作者: wangamin    時間: 2017-6-12 16:10
從最開始做一個流水燈開始
作者: 12233343253    時間: 2017-6-12 16:14
找些視頻看 然后買個板子多練
作者: 是啊啊啊    時間: 2017-6-12 17:19
多看看網(wǎng)上的例子 從認(rèn)識單片機開始 逐漸慢慢來讓自己完成一個系統(tǒng)
作者: 何鵬飛    時間: 2017-6-12 17:45
先搞明白記住一些基礎(chǔ)指令含義,自己試著編寫一些小程序,跑馬燈,數(shù)字顯示等,多練習(xí)。這門課基本就差不多了。
作者: peterfky    時間: 2017-6-12 20:02
找學(xué)長學(xué)姐教你入門,學(xué)校一般都有實驗室的
作者: aaaa88    時間: 2017-6-13 15:28
先去找?guī)熜謳熃憬钑聪,或者自己上網(wǎng)找視頻看
作者: 123456789    時間: 2017-6-13 16:08
HC6800-ES-V2.0 發(fā)表于 2017-6-8 08:52
http://www.torrancerestoration.com/bbs/dpj-86998-1.html
http://www.torrancerestoration.com/bbs/dpj-86868-1.html
最近,怎樣學(xué)習(xí) ...

書上不是有光盤么?你看視頻就行啊
作者: 123456789    時間: 2017-6-13 16:08
HC6800-ES-V2.0 發(fā)表于 2017-6-8 08:52
http://www.torrancerestoration.com/bbs/dpj-86998-1.html
http://www.torrancerestoration.com/bbs/dpj-86868-1.html
最近,怎樣學(xué)習(xí) ...

郭天祥版用的比較多
作者: yellow11111    時間: 2017-6-13 18:41
先學(xué)基礎(chǔ)知識,再看教程。其實只有多練才能真正學(xué)會用單片機做出點東西。
作者: 我要心態(tài)好好噠    時間: 2017-6-13 19:24
圖書館借書
作者: ccq001    時間: 2017-6-13 21:48
可以看著郭天祥的視頻來學(xué)習(xí),入手可以先入手51單片機
作者: 13852833337    時間: 2017-6-14 06:00
先學(xué)基礎(chǔ)知識,同時看教程。多分析別人的源碼,多練才能真正學(xué)會,實戰(zhàn),用單片機做出點東西,應(yīng)該最主要了
作者: 13705132095    時間: 2017-6-14 11:55
自己按照書上的步驟做設(shè)計
作者: liuskzheng    時間: 2017-6-14 13:58
多看資料多動手,多交高手朋友
作者: q34567    時間: 2017-6-14 14:48
主要在于實踐 先照著代碼模仿著寫 再慢慢理解就行
作者: q34567    時間: 2017-6-14 14:49
最好用單片機運行代碼 從實踐開始 從模仿寫代碼開始慢慢來
作者: 黃文俊113    時間: 2017-6-14 14:55

建議看一下郭天祥51單片機系列
作者: 雞蛋戰(zhàn)士    時間: 2017-6-14 15:38
網(wǎng)上查資料  圖書館借書 找個老師 或者這方面厲害的學(xué)長學(xué)姐
作者: 舊城以西的故事    時間: 2017-6-14 15:50
買一個開發(fā)板,從學(xué)會點亮LED燈開始學(xué)起
作者: boommm    時間: 2017-6-14 16:27

 建議看一下郭天祥51單片機系列
作者: LenKerr    時間: 2017-6-14 16:28
要是學(xué)習(xí)51單片機的話,先找本51單片機的書先了解51的內(nèi)部構(gòu)成及工作原理,還有各個引腳的功能等,大概了解一下就行了,然后學(xué)51的匯編語言,嘗試著寫一些簡單的代碼,可以買個51開發(fā)版或者用仿真軟件,加深一下對51的各個引腳功能的學(xué)習(xí),結(jié)合前面51的結(jié)構(gòu)和引腳等知識試著做一個小項目
作者: tu1905    時間: 2017-6-14 17:28
先看一些視頻,再做幾個小項目練手;蛘吒鶕(jù)郭天祥視頻指導(dǎo)做
作者: hhy961228    時間: 2017-6-14 20:41
郭天祥的視頻不錯,而且我當(dāng)時學(xué)的時候,自己老師講的也挺好,課后解答也詳細(xì),總的來說還是我覺得多問問專業(yè)課老師吧





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1