我原來是電器廠里的一個維修工人,接觸電子電器已經有多年了.很早就聽說單片機這個東西了.想學但一直苦于找不到方法,找不到門路....學了放,放了學,都一直不得要領.終于有一天,工夫不負有心人,我竟然也把單片機的大門踢開!!1
那學單片機究竟從何入手?這個是很多初學者的疑惑,出此類書籍的人也大有人在,這個是精品,那個也是精品.網上的教材也讓人眼花繚亂.初學者不宜從匯編語言入手學習單片機,為什么?大家可以看看大學里的教材一般都是把單片機的內部硬件結構一一介紹完,再說單片機的尋址方式.然后才教大家怎么用匯編語言編寫程序.這里問題就來了,一個沒有接觸過計算機硬件知識的人,他能理解寄存器是個什么東西嗎?而且單片機里介紹的寄存器真不少呢.一百多條匯編指令加上N個尋址方式,你能消化嗎?事實證明大部分人是搞不清楚的,前提都搞不清楚更不必說后面的編寫程序了!
學單片機從C語言入手,是個正確的選擇.C語言對初學者最大的好處就是它把單片機內部的硬件基本撇開了.不你去理解寄存器,沒有那么多指令來記了,尋址方式不用去管了.等你將來入了門,再來理解這些東西可能 就覺得,啊原來也不是那么的難嘛!學單片機就要準備幾樣硬件,第一,電腦一臺,建議初學的朋友用帶串口和并口的電腦,這個和下面說到的編程器有關系.第二,燒錄器一個,燒錄器怎么弄得到?網上有的買,不過我用的是自己做出來的.說到燒錄器的制作,問題也不少,USB口做數據傳輸的燒寫器建議初學者不要做,USB口的燒寫器一般都需要監控模塊,而監控模塊也是一個單片機,是單片機就要燒程序,請問你一個初學者,那里來的燒錄器給監控模塊燒程序啊?這一下子就走了一個死胡同.要做燒寫器就要做用串口或者并口傳輸數據的,這種燒錄器簡單容易DIY.它用到元件只是一些電阻電容,三極管之類的東西.這就是我為什么建議用有串口和并口的電腦的原因.(代續)
一個維修工如何學單片機(講述自己學單片機的經歷)
全部回復(8)
正序查看
倒序查看
上回說到了學單片機必備的硬件:電腦,燒錄器.現在該說說,單片機的軟件了.第一,編程軟件(注意,本文所說的單片機是指AT89S52)當然是KEIL C51軟件了.有二版,三版的.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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年沒有問題.最后一個軟件是燒寫軟件,我用的是廣州雙龍公司的SLISP燒寫軟件.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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);">.
軟件基本就怎么多,有人會提出,還有個仿真軟件.不,不需要.那是理想化的東西,很多現象它是仿不出來的.所以說初學的朋友用的編程器應該是有在系統調試功能的.下面是我用編程系統



軟件基本就怎么多,有人會提出,還有個仿真軟件.不,不需要.那是理想化的東西,很多現象它是仿不出來的.所以說初學的朋友用的編程器應該是有在系統調試功能的.下面是我用編程系統
0
回復
@yaojiajia
上回說到了學單片機必備的硬件:電腦,燒錄器.現在該說說,單片機的軟件了.第一,編程軟件(注意,本文所說的單片機是指AT89S52)當然是KEILC51軟件了.有二版,三版的.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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年沒有問題.最后一個軟件是燒寫軟件,我用的是廣州雙龍公司的SLISP燒寫軟件.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251801639.jpg');}"onmousewheel="returnimgzoom(this);">.軟件基本就怎么多,有人會提出,還有個仿真軟件.不,不需要.那是理想化的東西,很多現象它是仿不出來的.所以說初學的朋友用的編程器應該是有在系統調試功能的.下面是我用編程系統
我用的編程器,當然現在我已經把它做成一個產品了.
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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);">
這個燒錄器的特點是,所有功能都是外擴的.與一般市場上的學習板截然不同.市場上買的學習板功能很齊全,什么按鍵,數碼管.....什么都為你準備好了.這樣對于一個初學者也是一個不利的東西.學習板按照別人的思路去做,那始終是別人的東西,建議初學的朋友一定要多動手,多做些外圍功能電路.有的人學完了單片機結果連個數碼管驅動電路都不會做,甚至LED燈的限流電阻是多大都不知道,那這樣學單片機估計算是失敗的.
再上兩個圖
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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!看起來不雅,但是可以按照自己的意思工作.那學單片機的目的就達到了.


這個燒錄器的特點是,所有功能都是外擴的.與一般市場上的學習板截然不同.市場上買的學習板功能很齊全,什么按鍵,數碼管.....什么都為你準備好了.這樣對于一個初學者也是一個不利的東西.學習板按照別人的思路去做,那始終是別人的東西,建議初學的朋友一定要多動手,多做些外圍功能電路.有的人學完了單片機結果連個數碼管驅動電路都不會做,甚至LED燈的限流電阻是多大都不知道,那這樣學單片機估計算是失敗的.
再上兩個圖


這些東西看起來,引用老外的一句話:....dirty but working!看起來不雅,但是可以按照自己的意思工作.那學單片機的目的就達到了.
0
回復
@yaojiajia
我用的編程器,當然現在我已經把它做成一個產品了.[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/81/3540261251802868.jpg');}"onmousewheel="returnimgzoom(this);">這個燒錄器的特點是,所有功能都是外擴的.與一般市場上的學習板截然不同.市場上買的學習板功能很齊全,什么按鍵,數碼管.....什么都為你準備好了.這樣對于一個初學者也是一個不利的東西.學習板按照別人的思路去做,那始終是別人的東西,建議初學的朋友一定要多動手,多做些外圍功能電路.有的人學完了單片機結果連個數碼管驅動電路都不會做,甚至LED燈的限流電阻是多大都不知道,那這樣學單片機估計算是失敗的.再上兩個圖[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';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!看起來不雅,但是可以按照自己的意思工作.那學單片機的目的就達到了.
請問高手,下載器也是要自己制作的嗎?我有單片機程序,就是不知道怎么下載到單片機里.不知道是RXD,TXD那一個才是下載端口
0
回復