我原來是電器廠里的一個(gè)維修工人,接觸電子電器已經(jīng)有多年了.很早就聽說單片機(jī)這個(gè)東西了.想學(xué)但一直苦于找不到方法,找不到門路....學(xué)了放,放了學(xué),都一直不得要領(lǐng).終于有一天,工夫不負(fù)有心人,我竟然也把單片機(jī)的大門踢開!!1
那學(xué)單片機(jī)究竟從何入手?這個(gè)是很多初學(xué)者的疑惑,出此類書籍的人也大有人在,這個(gè)是精品,那個(gè)也是精品.網(wǎng)上的教材也讓人眼花繚亂.初學(xué)者不宜從匯編語言入手學(xué)習(xí)單片機(jī),為什么?大家可以看看大學(xué)里的教材一般都是把單片機(jī)的內(nèi)部硬件結(jié)構(gòu)一一介紹完,再說單片機(jī)的尋址方式.然后才教大家怎么用匯編語言編寫程序.這里問題就來了,一個(gè)沒有接觸過計(jì)算機(jī)硬件知識(shí)的人,他能理解寄存器是個(gè)什么東西嗎?而且單片機(jī)里介紹的寄存器真不少呢.一百多條匯編指令加上N個(gè)尋址方式,你能消化嗎?事實(shí)證明大部分人是搞不清楚的,前提都搞不清楚更不必說后面的編寫程序了!
學(xué)單片機(jī)從C語言入手,是個(gè)正確的選擇.C語言對(duì)初學(xué)者最大的好處就是它把單片機(jī)內(nèi)部的硬件基本撇開了.不你去理解寄存器,沒有那么多指令來記了,尋址方式不用去管了.等你將來入了門,再來理解這些東西可能 就覺得,啊原來也不是那么的難嘛!學(xué)單片機(jī)就要準(zhǔn)備幾樣硬件,第一,電腦一臺(tái),建議初學(xué)的朋友用帶串口和并口的電腦,這個(gè)和下面說到的編程器有關(guān)系.第二,燒錄器一個(gè),燒錄器怎么弄得到?網(wǎng)上有的買,不過我用的是自己做出來的.說到燒錄器的制作,問題也不少,USB口做數(shù)據(jù)傳輸?shù)臒龑懫鹘ㄗh初學(xué)者不要做,USB口的燒寫器一般都需要監(jiān)控模塊,而監(jiān)控模塊也是一個(gè)單片機(jī),是單片機(jī)就要燒程序,請(qǐng)問你一個(gè)初學(xué)者,那里來的燒錄器給監(jiān)控模塊燒程序啊?這一下子就走了一個(gè)死胡同.要做燒寫器就要做用串口或者并口傳輸數(shù)據(jù)的,這種燒錄器簡單容易DIY.它用到元件只是一些電阻電容,三極管之類的東西.這就是我為什么建議用有串口和并口的電腦的原因.(代續(xù))
一個(gè)維修工如何學(xué)單片機(jī)(講述自己學(xué)單片機(jī)的經(jīng)歷)
全部回復(fù)(8)
正序查看
倒序查看
上回說到了學(xué)單片機(jī)必備的硬件:電腦,燒錄器.現(xiàn)在該說說,單片機(jī)的軟件了.第一,編程軟件(注意,本文所說的單片機(jī)是指AT89S52)當(dāng)然是KEIL C51軟件了.有二版,三版的.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251801351.jpg');}" onmousewheel="return imgzoom(this);">.此軟件為別人破解的,如圖
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251801483.jpg');}" onmousewheel="return imgzoom(this);">.按著里面的步驟去做,使用期限在10年8年沒有問題.最后一個(gè)軟件是燒寫軟件,我用的是廣州雙龍公司的SLISP燒寫軟件.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251801639.jpg');}" onmousewheel="return imgzoom(this);">.
軟件基本就怎么多,有人會(huì)提出,還有個(gè)仿真軟件.不,不需要.那是理想化的東西,很多現(xiàn)象它是仿不出來的.所以說初學(xué)的朋友用的編程器應(yīng)該是有在系統(tǒng)調(diào)試功能的.下面是我用編程系統(tǒng)



軟件基本就怎么多,有人會(huì)提出,還有個(gè)仿真軟件.不,不需要.那是理想化的東西,很多現(xiàn)象它是仿不出來的.所以說初學(xué)的朋友用的編程器應(yīng)該是有在系統(tǒng)調(diào)試功能的.下面是我用編程系統(tǒng)
0
回復(fù)
@yaojiajia
上回說到了學(xué)單片機(jī)必備的硬件:電腦,燒錄器.現(xiàn)在該說說,單片機(jī)的軟件了.第一,編程軟件(注意,本文所說的單片機(jī)是指AT89S52)當(dāng)然是KEILC51軟件了.有二版,三版的.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251801351.jpg');}"onmousewheel="returnimgzoom(this);">.此軟件為別人破解的,如圖[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251801483.jpg');}"onmousewheel="returnimgzoom(this);">.按著里面的步驟去做,使用期限在10年8年沒有問題.最后一個(gè)軟件是燒寫軟件,我用的是廣州雙龍公司的SLISP燒寫軟件.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251801639.jpg');}"onmousewheel="returnimgzoom(this);">.軟件基本就怎么多,有人會(huì)提出,還有個(gè)仿真軟件.不,不需要.那是理想化的東西,很多現(xiàn)象它是仿不出來的.所以說初學(xué)的朋友用的編程器應(yīng)該是有在系統(tǒng)調(diào)試功能的.下面是我用編程系統(tǒng)
我用的編程器,當(dāng)然現(xiàn)在我已經(jīng)把它做成一個(gè)產(chǎn)品了.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251802800.jpg');}" onmousewheel="return imgzoom(this);">
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251802868.jpg');}" onmousewheel="return imgzoom(this);">
這個(gè)燒錄器的特點(diǎn)是,所有功能都是外擴(kuò)的.與一般市場上的學(xué)習(xí)板截然不同.市場上買的學(xué)習(xí)板功能很齊全,什么按鍵,數(shù)碼管.....什么都為你準(zhǔn)備好了.這樣對(duì)于一個(gè)初學(xué)者也是一個(gè)不利的東西.學(xué)習(xí)板按照別人的思路去做,那始終是別人的東西,建議初學(xué)的朋友一定要多動(dòng)手,多做些外圍功能電路.有的人學(xué)完了單片機(jī)結(jié)果連個(gè)數(shù)碼管驅(qū)動(dòng)電路都不會(huì)做,甚至LED燈的限流電阻是多大都不知道,那這樣學(xué)單片機(jī)估計(jì)算是失敗的.
再上兩個(gè)圖
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251803364.jpg');}" onmousewheel="return imgzoom(this);">
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/81/3540261251803382.jpg');}" onmousewheel="return imgzoom(this);">
這些東西看起來,引用老外的一句話:....dirty but working!看起來不雅,但是可以按照自己的意思工作.那學(xué)單片機(jī)的目的就達(dá)到了.


這個(gè)燒錄器的特點(diǎn)是,所有功能都是外擴(kuò)的.與一般市場上的學(xué)習(xí)板截然不同.市場上買的學(xué)習(xí)板功能很齊全,什么按鍵,數(shù)碼管.....什么都為你準(zhǔn)備好了.這樣對(duì)于一個(gè)初學(xué)者也是一個(gè)不利的東西.學(xué)習(xí)板按照別人的思路去做,那始終是別人的東西,建議初學(xué)的朋友一定要多動(dòng)手,多做些外圍功能電路.有的人學(xué)完了單片機(jī)結(jié)果連個(gè)數(shù)碼管驅(qū)動(dòng)電路都不會(huì)做,甚至LED燈的限流電阻是多大都不知道,那這樣學(xué)單片機(jī)估計(jì)算是失敗的.
再上兩個(gè)圖


這些東西看起來,引用老外的一句話:....dirty but working!看起來不雅,但是可以按照自己的意思工作.那學(xué)單片機(jī)的目的就達(dá)到了.
0
回復(fù)
@yaojiajia
我用的編程器,當(dāng)然現(xiàn)在我已經(jīng)把它做成一個(gè)產(chǎn)品了.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251802800.jpg');}"onmousewheel="returnimgzoom(this);">[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251802868.jpg');}"onmousewheel="returnimgzoom(this);">這個(gè)燒錄器的特點(diǎn)是,所有功能都是外擴(kuò)的.與一般市場上的學(xué)習(xí)板截然不同.市場上買的學(xué)習(xí)板功能很齊全,什么按鍵,數(shù)碼管.....什么都為你準(zhǔn)備好了.這樣對(duì)于一個(gè)初學(xué)者也是一個(gè)不利的東西.學(xué)習(xí)板按照別人的思路去做,那始終是別人的東西,建議初學(xué)的朋友一定要多動(dòng)手,多做些外圍功能電路.有的人學(xué)完了單片機(jī)結(jié)果連個(gè)數(shù)碼管驅(qū)動(dòng)電路都不會(huì)做,甚至LED燈的限流電阻是多大都不知道,那這樣學(xué)單片機(jī)估計(jì)算是失敗的.再上兩個(gè)圖[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251803364.jpg');}"onmousewheel="returnimgzoom(this);">[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點(diǎn)擊可放大。\n按住CTRL,滾動(dòng)鼠標(biāo)滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251803382.jpg');}"onmousewheel="returnimgzoom(this);">這些東西看起來,引用老外的一句話:....dirtybutworking!看起來不雅,但是可以按照自己的意思工作.那學(xué)單片機(jī)的目的就達(dá)到了.
請(qǐng)問高手,下載器也是要自己制作的嗎?我有單片機(jī)程序,就是不知道怎么下載到單片機(jī)里.不知道是RXD,TXD那一個(gè)才是下載端口
0
回復(fù)
@hst09
大師你好我是剛買回來廣州雙龍公司51學(xué)習(xí)板的,可是串口線裝上,顯示沒有串口線,請(qǐng)問題在什么地方?
雙龍軟件對(duì)ISP系統(tǒng)支持的還是很好的,出現(xiàn)串口沒有連接,1-你的學(xué)習(xí)板某個(gè)地方是不是要要設(shè)置一下,比如,加個(gè)跳線帽或者去掉個(gè)跳線帽.2-雙龍軟件的端口設(shè)置是否正確了,就是說和你當(dāng)前使用的串口是否一致,是COM1,COM2,還是其他口,如果這些設(shè)置設(shè)置沒有問題,一般都沒有問題.當(dāng)然不排除雙龍公司的學(xué)習(xí)板本身有問題.(但是這個(gè)可能性很小)
0
回復(fù)
樓主您真是厲害!居然直接從C開始用單片機(jī)……
我可是從匯編一點(diǎn)點(diǎn)開始學(xué)的,學(xué)匯編確實(shí)是要和片內(nèi)資源相結(jié)合,片內(nèi)資源搞不清楚,則匯編必然學(xué)成“不會(huì)編”
還好我終于熬過來了,盡管前段時(shí)間學(xué)的很痛苦,由于天天熬夜,眼窩也陷下去了.不過學(xué)習(xí)成功的喜悅只有經(jīng)歷過的人才能體會(huì)的到;一個(gè)字:值!
再過一兩天就要輪到學(xué)C了……唉
還是樓主鬼精,居然直接C開始搞單片機(jī)……早知道這樣玩也行,我那時(shí)也應(yīng)該這樣干
我可是從匯編一點(diǎn)點(diǎn)開始學(xué)的,學(xué)匯編確實(shí)是要和片內(nèi)資源相結(jié)合,片內(nèi)資源搞不清楚,則匯編必然學(xué)成“不會(huì)編”
還好我終于熬過來了,盡管前段時(shí)間學(xué)的很痛苦,由于天天熬夜,眼窩也陷下去了.不過學(xué)習(xí)成功的喜悅只有經(jīng)歷過的人才能體會(huì)的到;一個(gè)字:值!
再過一兩天就要輪到學(xué)C了……唉
還是樓主鬼精,居然直接C開始搞單片機(jī)……早知道這樣玩也行,我那時(shí)也應(yīng)該這樣干
0
回復(fù)
@隱山居士
樓主您真是厲害!居然直接從C開始用單片機(jī)……我可是從匯編一點(diǎn)點(diǎn)開始學(xué)的,學(xué)匯編確實(shí)是要和片內(nèi)資源相結(jié)合,片內(nèi)資源搞不清楚,則匯編必然學(xué)成“不會(huì)編”還好我終于熬過來了,盡管前段時(shí)間學(xué)的很痛苦,由于天天熬夜,眼窩也陷下去了.不過學(xué)習(xí)成功的喜悅只有經(jīng)歷過的人才能體會(huì)的到;一個(gè)字:值!再過一兩天就要輪到學(xué)C了……唉還是樓主鬼精,居然直接C開始搞單片機(jī)……早知道這樣玩也行,我那時(shí)也應(yīng)該這樣干
頂起!!!!!!!!
0
回復(fù)