2012年8月17日星期五

寫給要接觸單片機和剛接觸單片機的人


我寫這篇文章,是因為我在google上看到很多想接觸單片機或者已經接觸單片機的人,不知道怎麼 入門,或者不知道第一步怎麼走。我也是把我的經驗寫出來,這次的 只不過針對的是想接觸單片機的,剛接觸單片機的,一開始都會存在幾個疑問。1.學習單片機的需要什麼基礎。2.開始怎麼入手3.需不需要買開發板。主要就 存在這幾個疑問,我也在這裡為大家說說,大家只不過在交流,小弟在這裡獻醜啦,如有什麼說的不周到的,或者不全面的,也請高手多多指教。我寫這個目的是希 望給更多的想學習單片機,熱愛電子設計的人提供一些幫助。閒話少說,進入正題。

學習單片機一開始首要認為是通讀一遍書,這個很重要瞭解它是什麼原理,還有能實現那 些功能,例如外部中斷,計時器等等吧~!這些都是理論的東西。當 你瞭解差不多就開始真刀真*的比試~!首先要學會的是KEILC51這個軟體,這個是一個程式設計軟體,編寫C程式的軟體。對於初學者這個很關鍵如果連這個軟 件都弄不會,不知道怎麼建立工程檔,怎麼生成.HEX檔的話。等於白學單片機一樣。還有一個是STC系列單片機怎麼燒錄程式,這個可以在官方網站上面 下載一個燒錄軟體。(我主要針對的是STC系列單片機)。這個是需要邁進單片機這個第一步。有些初學者,或者我自己也犯過這樣錯誤,看這本書上做這個挺好 玩也想比試,看到那本書上做這個也挺好,最後什麼都沒有做成。人做事情就應該踏踏實實的。還有就是培養自己有一種成就感,這樣慢慢的就會堅持下來,也是建 立信心的最好辦法。也是從最簡單的入手,這樣給自己一點點信心。下面我就介紹我自己的一種方法。

學習單片機的編寫程式就好像搭積木一樣,不是一下就可能寫出來很大,很複雜的程式的。都是從最簡單的程式開始,慢慢的往上面加功能,優化的。我給大家介紹一種方法吧~!這個也是我這些天總結出來的,根據我自己的走過來的路想出來的,希望對大家以後學習單片機有幫助吧~

第一步就是編寫一個是LED點亮的程式,燒錄到單片機裡面看看效果,這個目的:1. 熟悉單片機怎麼編寫程式2.怎麼燒錄程式3.感性認識一下單片機 是控制什麼東西的。也是讓自己有感興趣的關鍵第一步,因為教材上都是告訴你單片機什麼地址,什麼的根本沒有實際的東西,也是大家認為難的,我遇到好幾個人 都說單片機難,是因為老師講的不太明白,學的都是彙編,就知道什麼位址相加減,或者從這個位址傳送到這個位址裡面,這樣很枯燥,很沒有意思。誰都會感覺沒 有興趣。當你編寫一個這樣簡單的程式你會知道單片機還有這樣的功能,這麼好玩。也是瞭解LED燈這麼亮的。

第二步就是編寫一個讓8LED燈輪流亮,或者每隔兩個燈輪流亮,這個程式目的是增加一個延時程式,讓大家知道不精確延時這麼編寫。當你會這個程式以後,你就可以發揮你自己想想編寫出來不同的花樣的流水燈程式,就是練習熟悉開發環境還有就是延時程式和自己的想像力。

第三步就是編寫一個帶有外部中斷的流水燈程式,就是當有外部中斷時候會變換不同的花 樣,程式編寫跟第二步差不多但是只不過加一個外部中斷,因為我自 己感覺對於外部中斷對於初學者來說真的很難理解,我那個時候學時候用下午時間也沒有想明白,最後還是用開發板做實驗,先感性認識怎麼回事,慢慢經過幾次應 用才能理解些啦~!所以一開始如果不理解也可以照著常式把程式燒錄進去以後先感性認識一下,在理性的學習一下。慢慢就好了~

第四步就是編寫一個精准延時的流水燈程式,這個就需要加上計時器程式,這個目的和方法跟第三步類是。在這裡就不多說了。

第五步就是編寫一個與電腦通信,利用電腦控制燈的程式,這個方法跟第三步類是,就是把電腦通信的程式加入裡面。

第六步是編寫個按鍵程式,把按鍵程式加入,知道按鍵程式怎麼進行編寫,可以理解按鍵,如果有能力也可以加入矩陣鍵盤程式這樣更好啊~!這個看你自己能力啊~

當你把這六步全部走完,每一個程式都是自己編寫的,在加上自己的想像創新出來很多花 樣,會感覺自己很有成就感,對於以後的學習單片機很有幫助,別看 一個流水燈程式有很多花樣玩法啊,如果都能弄明白的話,說明對單片機你是有一個初步的瞭解,也瞭解這個最小系統啦~!對於以後的程式設計也有很大的幫助。技術 不要什麼最新就用什麼,最後走一圈回來,還就是會流水燈程式啊~!所以如果認准學習C51,就不要過兩天別人說AVR好,就又學AVR啦,最後那一個都沒 有學好,會的還是最簡單的程式。其實每種單片機只不過程式設計有些不同,還有功能有些差異,但是原理都是差不多的。



See on: http://forum.edc-cn.com/FORUM_POST_72_120579_0.HTM?from=FLP_news

没有评论:

发表评论