導航:首頁 > 編程語言 > 單片機編程與應用入門

單片機編程與應用入門

發布時間:2022-09-07 09:14:30

『壹』 如何能夠快速入門單片機,我是初學者,請各位高手們指點!

單片機定義
單片機是指一個集成在一塊晶元上的完整計算機系統。盡管他的大部分功能集成在一塊小晶元上,但是它具有一個完整計算機所需要的大部分部件:CPU、內存、內部和外部匯流排系統,目前大部分還會具有外存。同時集成諸如通訊介面、定時器,實時時鍾等外圍設備。而現在最強大的單片機系統甚至可以將聲音、圖像、網路、復雜的輸入輸出系統集成在一塊晶元上。

單片機也被稱為微控制器(Microcontroler),是因為它最早被用在工業控制領域。單片機由晶元內僅有CPU的專用處理器發展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個晶元中,使計算機系統更小,更容易集成進復雜的而對提及要求嚴格的控制設備當中。INTEL的Z80是最早按照這種思想設計出的處理器,從此以後,單片機和專用處理器的發展便分道揚鑣。

早期的單片機都是8位或4位的。其中最成功的是INTEL的8031,因為簡單可靠而性能不錯獲得了很大的好評。此後在8031上發展出了MCS51系列單片機系統。基於這一系統的單片機系統直到現在還在廣泛使用。隨著工業控制領域要求的提高,開始出現了16位單片機,但因為性價比不理想並未得到很廣泛的應用。90年代後隨著消費電子產品大發展,單片機技術得到了巨大的提高。隨著INTEL i960系列特別是後來的ARM系列的廣泛應用,32位單片機迅速取代16位單片機的高端地位,並且進入主流市場。而傳統的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數百倍。目前,高端的32位單片機主頻已經超過300MHz,性能直追90年代中期的專用處理器,而普通的型號出廠價格跌落至1美元,最高端的型號也只有10美元。當代單片機系統已經不再只在裸機環境下開發和使用,大量專用的嵌入式操作系統被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單片機甚至可以直接使用專用的Windows和Linux操作系統。

單片機比專用處理器最適合應用於嵌入式系統,因此它得到了最多的應用。事實上單片機是世界上數量最多的計算機。現代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及滑鼠等電腦配件中都配有1-2部單片機。而個人電腦中也會有為數不少的單片機在工作。汽車上一般配備40多部單片機,復雜的工業控制系統上甚至可能有數百台單片機在同時工作!單片機的數量不僅遠超過PC機和其他計算的綜合,甚至比人類的數量還要多。

單片機介紹

單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。
單片機內部也用和電腦功能類似的模塊,比如CPU,內存,並行匯流排,還有和硬碟作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復雜的工作足矣了。我們現在用的全自動滾筒洗衣機、排煙罩、VCD等等的家電裡面都可以看到它的身影!......它主要是作為控制部分的核心部件。
它是一種在線式實時控制計算機,在線式就是現場控制,需要的是有較強的抗干擾能力,較低的成本,這也是和離線式計算機的(比如家用PC)的主要區別。

單片機是靠程序的,並且可以修改。通過不同的程序實現不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。一個不是很復雜的功能要是用美國50年代開發的74系列,或者60年代的CD4000系列這些純硬體來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有天壤之別!只因為單片機的通過你編寫的程序可以實現高智能,高效率,以及高可靠性!

由於單片機對成本是敏感的,所以目前占統治地位的軟體還是最低級匯編語言,它是除了二進制機器碼以上最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。 單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC的也是承受不了的。

可以說,二十世紀跨越了三個「電」的時代,即電氣時代、電子時代和現已進入的電腦時代。不過,這種電腦,通常是指個人計算機,簡稱PC機。它由主機、鍵盤、顯示器等組成。還有一類計算機,大多數人卻不怎麼熟悉。這種計算機就是把智能賦予各種機械的單片機(亦稱微控制器)。顧名思義,這種計算機的最小系統只用了一片集成電路,即可進行簡單運算和控制。因為它體積小,通常都藏在被控機械的「肚子」里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。現在,這種單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。各種產品一旦用上了單片機,就能起到使產品升級換代的功效,常在產品名稱前冠以形容詞——「智能型」,如智能型洗衣機等。現在有些工廠的技術人員或其它業余電子開發者搞出來的某些產品,不是電路太復雜,就是功能太簡單且極易被仿製。究其原因,可能就卡在產品未使用單片機或其它可編程邏輯器件上。

單片機的應用領域

目前單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網路通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄象機、攝象機、全自動洗衣機的控制,以及程式控制玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表、醫療器械了。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。

單片機廣泛應用於儀器儀表、家用電器、醫用設備、航空航天、專用設備的智能化管理及過程式控制制等領域,大致可分如下幾個范疇:

1.在智能儀器儀表上的應用
單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優點,廣泛應用於儀器儀表中,結合不同類型的感測器,可實現諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。採用單片機控制使得儀器儀表數字化、智能化、微型化,且功能比起採用電子或數字電路更加強大。例如精密的測量設備(功率計,示波器,各種分析儀)。

2.在工業控制中的應用
用單片機可以構成形式多樣的控制系統、數據採集系統。例如工廠流水線的智能化管理,電梯智能化控制、各種報警系統,與計算機聯網構成二級控制系統等。

3.在家用電器中的應用
可以這樣說,現在的家用電器基本上都採用了單片機控制,從電飯褒、洗衣機、電冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備,五花八門,無所不在。

4.在計算機網路和通信領域中的應用
現代的單片機普遍具備通信介面,可以很方便地與計算機進行數據通信,為在計算機網路和通信設備間的應用提供了極好的物質條件,現在的通信設備基本上都實現了單片機智能控制,從手機,電話機、小型程式控制交換機、樓宇自動通信呼叫系統、列車無線通信、再到日常工作中隨處可見的行動電話,集群移動通信,無線電對講機等。

5.單片機在醫用設備領域中的應用
單片機在醫用設備中的用途亦相當廣泛,例如醫用呼吸機,各種分析儀,監護儀,超聲診斷設備及病床呼叫系統等等。

此外,單片機在工商,金融,科研、教育,國防航空航天等領域都有著十分廣泛的用途。

單片機學習:

目前,很多人對匯編語言並不認可。可以說,掌握用C語言單片機編程很重要,可以大大提高開發的效率。不過初學者可以不了解單片機的匯編語言,但一定要了解單片機具體性能和特點,不然在單片機領域是比較致命的。如果不考慮單片機硬體資源,在KEIL中用C胡亂編程,結果只能是出了問題無法解決!可以肯定的說,最好的C語言單片機工程師都是從匯編走出來的編程者因為單片機的C語言雖然是高級語言,但是它不同於台式機個人電腦上的VC++什麼的單片機的硬體資源不是非常強大,不同於我們用VC、VB等高級語言在台式PC上寫程序畢竟台式電腦的硬體非常強大,所以才可以不考慮硬體資源的問題。

『貳』 我是一個單片機初學者,我想問一下我需要學哪些知識

我覺得首先要看懂111條指令,懂意思就行,根本就不需要每一條都記住,因為常用的都只有四五十條罷了。那麼多的指令意在可以用多種語句實現同一種功能。
還有就是一定要實際的編程,這一點是非常重要的,只有在實際編程中才能熟悉指令的應用,當然你或許會問自己什麼都不懂怎麼編程啊,這時候你不要著急,你可以你買一本書,有實際的例子的書,我也見過有這種書但是名字我忘記了,它每個例子是講得十分詳細,有匯編的代碼,也有C語言的代碼,而且每一行都有注釋(名字我忘記了只記得那封皮是黑色的)你可以仿照它的代碼寫寫看,再模擬一下,或者在實際的板子上試試看能不能實現功能,別人的程序修改了能用在自己的板子上那麼就是自己的程序了。
至於模擬軟體我建議用protues,專用的單片機模擬軟體。
如果是自學,那麼不懂的地方可以上網收索或者上論壇詢問,這里有個單片機的QQ群,是官方建的你可以加上一起學習討論群號是:7344883
還有在了解指令的同時你要了解你的板子的結構亦即電路連接才能寫好你的程序。
當你學到一定程度的時候你可以學習一下單片機的外圍電路設計比如液晶顯示啊,A/D轉換啊什麼的....
總之,實際編程練習是學好單片機的唯一途徑,至於它和匯編的關系,樓上的哥們兒已解釋得十分清楚了的,就不多說了,免得啰嗦。
最後,祝你成功!!!

『叄』 單片機對於初學者怎樣學容易入門

1、熟悉單片機的原理,結構;
2、學好數電,模電,為設計電路打好基礎;
3、熟練使用C語言,多學習別人的程序;
4、對操作系統原理有一定的了解;
5、Protel至少要有點基礎;
6、要實際動手調試電路的能力。

學習單片機的步驟

當前的單片機種類很多,但是 51 是最基礎的,因此單片機的學習最好也是從 51 開始,不僅容易上手,而且相當實用。然而 51 單片機畢竟過於基礎,後來的很多單片機在功能上都有很大的擴展,因此按照我們實驗室多數人的路線接下來大多數人會學習 AVR 單片機, AVR 單片機在功能上較 51 有很大提升,集成了 A/D 、快速 PWM 等很多實用的功能,而且和很多大型的單片機在功能上有很多類似之處,因此如果以後還想掌握其他單片機 AVR 無疑是一個很好的跳板。

學習的過程

學習單片機最終要的是當然是練,我所說的學習跟課堂上的單片機學習不同,我以前也看過一些單片機教材,有些教材講的是單片機的工作原理和內部結構,這些東西對於我們暫時並不需要,等以後開課的時候在學習好了。現在要學習的是暫時拋開內部結構原理不談,如何能用單片機寫一些簡單的小程序,是從實用性的角度出發,網上有一種說法稱之為先實踐後理論的學習方法。

因此我的觀點如下,單片機的硬體結構首先要有一個基本的了解,最起碼要知道各引腳的功能、區別,能自己動手搭一個單片機的最小系統,然後就可以直接從程序入手,程序最好還是用 C 語言編程,從簡單的跑馬燈做起,逐漸深入,陸續可以做一些數碼管、液晶、 DS1302 、 DS18B20 等電子元器件的應用,在深入就可以結合一些具體實例擴展一些中斷、串口通訊等功能。還有一點要聲明的是單片機里用到的 C 語言其實很有限,課堂上學習 C++ 的很大一部分內容在初期單片機編程中都用不到,因此沒必要因為覺的自己的 C 語言基礎不是很好而對單片機望而止步!

學習的工具

軟體方面方面, 51 單片機用的是 KEIL 軟體,這個軟體在學校圖書館軟體下載和其他網站上都有,具體用法自己查找相關資料, AVR 的軟體就比較多了,我用的是 CVAVR ,另外還有 ICCAVR 等多款編譯軟體,這要看個人喜好了,建議有了一定的 51 基礎再學。另外就是燒寫軟體,燒寫軟體的作用就是將編譯器生成的 HEX 文件燒寫至單片機里,這要配合下載線實用,如果有並口的話最好用並口下載線,軟體最好用廣州雙龍的 SLISP 軟體,如果是筆記本沒有並口的話則要自己買一個下載器了,名稱為 USBASP ,網上電子市場有賣 20 塊錢左右,軟體會隨光碟自帶。

硬體方面,首先是要有單片機,對於單片機有一點要注意, 51 單片機最好買 89S51 、 89S52 這兩種型號,上面我所說的燒寫程序是 ISP 方式,這兩種單片機支持 ISP 下載,所以如果買其他型號的燒寫程序可能會不太方便, AVR 單片機常用的就是 ATmega16L 其它型號的區別也不是很大,甚至有些兼容。至於單片機開發板,目前的價格都很貴,從一百到幾百不等,不過像上次學校里廣告的那個六十多塊錢的最好還是免了,沒什麼作用。能買一塊當然好,沒有的話也不要緊,自己動手買個電路板搭一下也很方便,引出 ISP 介面,燒寫程序十分容易,然後將 I/O 口引出擴展也很方便。

學習單片機的其它幾個注意點:

1 .理論與實踐並重
對一個初學單片機的人來說,如果按教科書式的學法,上來就是一大堆指令、名詞,學了半天還搞不清這些指令起什麼作用,也許用不了幾天就會覺得枯燥乏味以致半途而廢。所以學習與實踐結合是一個好方法,邊學習、邊演練,循序漸進,這樣用不了幾次就能將所用到的指令理解、吃透、紮根於腦海,甚至 「 根深蒂固 」 。也就是說,當你學習完幾條指令後 ( 一次數量不求多,只求懂 ) ,接下去就該做實驗了,通過實驗,使你感受到剛才的指令產生的控制效果,眼睛看得見 ( 燈光 ) 、耳朵聽得到 ( 聲音 ) ,更能深刻理解指令是怎樣轉化成信號去實現控制的,通過實驗看到自己所學的成果不僅有一種成就感也能提升你對單片機的興趣。說句實在話,單片機與其說是學出來的,還不如說是做實驗練出來的,何況做實驗本身也是一種學習過程。因此邊學邊練的學習方法,效果特別好。
2 .合理安排時間持之以恆
學習單片機不能 「 三天打魚、兩天曬網 」 ,要有持之以恆的毅力與決 4 心。學習完幾條指令後,就應及時做實驗,融匯貫通,而不要等幾天或幾個星期之後再做實驗,這樣效果不好甚至前學後忘。另外要有打 「 持久戰 」 的心理准備,不要興趣來時學上幾天,無興趣時涼上幾星期。學習單片機很重要的一點就是持之以恆。

3 .遇到問題耐心檢查

單片機有軟硬體兩方面的內容,有時一個程序怎麼調都不出效果,然而從理論分析卻又是對的,這是就要仔細找原因了,學習單片機經常碰到很多問題,有時一兩天都不能解決,這是就要有耐心,從底層找起,相信每找出一個錯誤都會有一個新的收獲。切不可輕言放棄!!!
4 .對只短暫學過一遍的知識,充其量只比浮光掠影稍好。因此,較好的方法是過一段時間後 (1-2 個月 ) 再重新學一遍,學過的知識要經常運用,這樣反復循環幾次就能徹底弄懂消化,永不忘卻。
5 .要進行適當投資購買實驗器材及書籍資料
單片機技術含金量高,一旦學會後,給你帶來的效益當然也高,無論是應聘求職還是自起爐灶開廠辦公司,其前景都光明無限。因此在學習時要捨得適當投資購買必要的學習、實驗器材。另外還要經常去科技圖書店看看,購買一些適合自己學習、提高的書籍。一本好的書籍真的很重要,可以隨時翻閱,隨時補充不懂或遺忘的知識。

『肆』 單片機初學者該看什麼書

《51單片機工程師是怎樣煉成的:基於C語言+Proteus模擬》老楊 電子工業出版社
《單片機C語言程序設計實訓100例——基於8051+Proteus模擬》彭偉 電子工業出版社
《新概念51單片機C語言教程——入門、提高、開發、拓展》 郭天祥 電子工業出版社
《實例解讀51單片機完全學習與應用》 電子工業出版社
《手把手教你學單片機》 北航
《單片機基礎》李廣弟 北航
《單片機原理及介面技術》李朝青 北航
《51單片機應用從零開始》匯編 楊欣 清華出版社
《愛上單片機》 杜洋 人民郵電出版社
《例說51單片機(C語言版)》 張義和 人民郵電出版社
《單片機原理與技術》
《51單片機開發與應用技術詳解》
《單片機技術與原理教材》
《匠人手記》
《手把手教你學單片機》
《8051單片機》
《單片機原理及應用》 張毅剛
《51單片機原理與實踐》
《單片機應用技術》 哈爾濱工業大學出版社
《8051單片機教程》 平凡
《單片機輕松入門》平凡

『伍』 單片機學習如何入門

想學好單片機其實並不困難,單片機是一門實踐性非常強的的學科,學習時要理論與實踐並重量,現在網上學習單片機的資料比較多,你可到有關單片機的論壇上找找,再次就是有準備必要的學習單片機的一些基本的裝備,電腦你肯定有,哪就准備一些實踐用的工具器件,如:單片機、相關的電子元件,有備件時購一台單片機學習板,這樣的學習板附帶的常式非常多,你可以邊看常式邊實踐,這樣的學習方法入門比較快,等有了一定的基礎後,可以自己動手焊的些簡單的板子,檢驗一下自己的學習效果。學習過程中要學習一定的專業知識,比如數電和模電。單片機語言就學語言C,也可用匯編,根據自己情況而定;不管您要學什麼型號的單片機51也好,AVR也好,可以先找一個小的項目例子,比如流水燈一類的做,以提高興趣。總之學習單片機要持之以恆,不斷實踐,新手學習時注意以下幾點:

1、學習理論知識,書的話新手建議看看__王雲51單片機教程,結合書帶的視頻一起看好理解;
2、最好有一個開發板,在開發板上從最簡單的功能開始實現,比如做一個流水燈、蜂鳴器音樂盒等;
3、實現簡單的功能後,開始嘗試更復雜的程序,例如LCD顯示、數字時鍾、串口通信、中斷控制等;
4、在上述功能均可以實現之後,可以組合實現,做一個多功能的單片機系統了;
5、如果對硬體熟悉,可以自己嘗試做一個單片機開發板!

『陸』 單片機哪本書比較好,有推薦嗎

推薦號稱十天學會單片機(結果一個視頻三小時)的郭天祥的《新概念51單片機C語言教程》。但我個人比較推薦《時間觸發嵌入式系統設計模式 (豆瓣)》——Michael J.Pont 。這本書不僅僅讓你學會單片機,而且教你一些單片機編程思想(看書名字就知道)。其實說白了單片機這東西看書還不如買塊開發板自己親自看看歷程跑跑程序學得好,特別是剛入門用的51。

『柒』 學習單片機怎麼入門

循序漸近,一點點吃透學習,方法如下:
1、選擇一本好教材,建議《51單片機輕松入門
基於STC15W4K系列》這本,內容新,講解透徹,有配套視頻可輔助參考,不管是初學入門還是已經懂得單片機皮毛,滿足所有需求。
2、有了書就要理解意思,所以要吃透教材,看不懂也不要緊,多看,多問,在問題中尋找學習方向。
3、選擇配套產品,不要在乎板子的資源多少,推薦吳鑒鷹的單片機,開發板性價比高;軟體建議用Keilc51,硬體要有pc機和開發板,開發板要求有流水燈、數碼管、獨立按鍵、矩陣鍵盤、ad轉換、液晶屏、蜂鳴器,這就差不多了。其它不明白的就網上找視頻找教程,總會有解答的東西。
4、操練起來,從最基本的流水燈開始,試著先控制一個發光管,慢慢的變換花樣,做出自己的個性來。
5、帶著問題解決問題,一開始先不要找人請教,自己試,這樣記憶最深刻,也最有效果,但也不要鑽牛角尖,實在不行就問,要不剛建立起來的那點想法就打擊沒有了。
6、當技術水平,學習方法,心理素質都達到一定的境界了,就算入門了,接下來就要看個人的努力和悟性怎樣了,當然在學習單片機的過程中必須遵循一定的原則,堅守住一定的底線,這樣才能用最少的經歷,在最短的時間內獲得大的進步。
單片機(Microcontrollers)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統,在工業控制領域廣泛應用。

『捌』 單片機的快速入門

先別急著看晶元手冊
試試用麵包板入門單片機:http://www.doyoung.net/video/BREAD_1/index.html
無需焊接,修改方便
簡單入門:http://www.doyoung.net/video/STC/index.html
單片機入門製作專輯:http://www.doyoung.net/articles/0711_MCU_entry_album/MCU_entry_album.rar
單片機編程魔法學校:http://www.doyoung.net/articles/0802_MCU_Magic_School/MCU_Magic_School.rar
推薦本書《愛上單片機》
如何看懂晶元手冊:(完整版的帶圖片的在單片機編程魔法學校最後一篇)
要想徹底了解AT89S52,那就要看它的技術手冊,因為這是單片機生產商提供的資料,是最正確、最權威的數據,
我們在其它文章中看到的對S52單片機的介紹都是從技術手冊里看到,然後添枝加葉寫出來的,實質性的東西萬變
不離技術手冊。我在這里千言萬語也不如你靜下心來認真去看一看它,如果英語不好的朋友也可以先看看51 系列
的中文翻譯版然後再對照英文的看一遍,總之英語的一定要看,記住一些重要詞彙,其它類似的手冊中也會出現。
一般我們要了解一款晶元都要在技術手冊上找以下幾個重點,介面定義、主要技術參數(如電壓范圍、功耗)、時
序、操作方法、封裝形式等。理論總是有點抽象,舉一個實用的例子吧,我們一般不會找電阻和電容的技術手冊,
也是相當少見,一般我們需要的是晶元的手冊,主要的還是和單片機的介面晶元,我們就是來學單片機的嘛。我們
拿一款常用的實時時鍾晶元DS1302 開刀,雖然熟悉的朋友感覺講這個沒有什麼新意,不過用它更容易講明道理。
想一想一個時鍾晶元我們需要它的什麼功能?很簡單,它要提供給單片機一個時間,這是最基本的。我們的目的就
是讓單片機得到這個時間。首先要有一個硬體電路,是電路都得有電源吧,我們要在技術手冊里先找到晶元的工作
電壓什麼范圍,再看一下哪一個介面是連接電源的,備用電池接到哪個介面。其次就是看通信介面是哪幾個,是什
么通信方式的,I2C、ISP、還是其它協議,最後看看它還有什麼別的功能。圖1 所示是DS1302 時鍾晶元技術手冊
上關於介面的定義和說明,雖然是英文的,但是為了想當高手也得學著看呀,不會的查詞典去。在軟體上要了解芯
片的通信時序,不管是什麼晶元無非就是讀和寫兩個操作,圖2所示是技術手冊上關於數據讀、寫的時序。
時序圖這個地方應該說道說道,可能有一些朋友還不太明白、不懂分析。圖2 所示的時序圖是讀和寫兩個時序圖,
上面的是讀時序。所謂時序就是按照時間順序的一個操作過程,在讀時序部分有三條彎延曲折的橫線,左邊有它們
的名字,分別是RST、SCLK、I/O,這是對應著晶元上的三個介面,時間從左邊開始向右走,橫線向上走了就表示
在單片機控制上要拉成高電平(操作數據為1),橫線向下走則控製成低電平(操作數據為0),如果又有上走又有
下走(像I/O 時序線上的)就表示根據實際情況定義電平高低。現在我們用一個尺子豎在圖表上,從左向右滑動來
模擬時序的行走。一開始三條線都是平靜的,突然RST 向上走了,表示RST 介面需要變成高電平。繼續走突然I/O
線又變成高或者低電平了。I/O 是數據線,所以這個高或低可能是讀出來的值或是需要寫入的值,I/O 時序部分下
面有一行字寫著「WRITE COMMAND BYTE(寫入指令位元組)」意思說這個值是需要單片機寫入的,至於寫什麼內容要
看數據指令對照表。假設我們的單片機在這時向I/O 介面寫入0 或1,繼續向下走。突然SCLK 變高電平了,我們
要讓單片機把SCLK 介面變成高電平,之後就這樣一直走下去。這個識圖的過程就好像我們剛學習識別電路圖一樣,
需要一個過程。現在經驗告訴我RST 是一個晶元使能介面,高電平使晶元允許讀寫數據。單片機向SCLK 寫入高低
電平變化的時鍾信號,I/O 按照這個時鍾信號在SCLK從低電平變成高電平的時候將晶元寫入0、1 數據或是讀出數
據。可能有些朋友暫時還看不明白,不過沒有關系,只要多看多思考就會有效果的,要知道能看懂數據手冊就變成
設計者了,這還不夠你顯擺的嗎。在寫程序的時候就可以根據時序表的順序操作,[程序1]是一個簡單的示範,並
不能真正應用,它就是按時序表順序編寫的,時序表和數據指令對照表是晶元驅動程序編寫的本源,不信你找一找
別人寫過的DS1302 驅動程序,看看是不是和這個時序表中所介紹的一樣呢。
技術手冊是一個好東西,每當你見到不熟悉的晶元時首先就要想到找一找它的技術手冊,當你可以獨立欣賞技術手
冊時,你就已經不簡單了。如果還可以根據技術手冊寫出驅動程序來,那你就可以考慮向《無線電》雜志投稿了,
至於能不能發表是另一回事情,因為事實已經證明你從初學者一躍成為設計者兼教育者的高手。

『玖』 求單片機的入門路

我有資料。給我分,留下信箱我傳給你。

單片機,一般我們現在用的比較多的的MCS-51的單片機,它的資料比較多,用的人也很多,市場也很大。就我個人的體會怎麼樣才能更快的學會單片機這門課。單片機這門課是一項非常重視動手實踐的科目,不能總是看書,但是學習它首先必須得看書,因為從書中你需要大概了解一下,單片機的各個功能寄存器,而說明白點,我們使用單片機就是用軟體去控制單片機的各個功能寄存器,再說明白點,就是控制單片機那些管腳的電平什麼時候輸出高,什麼時候輸出低。由這些高低電平的變化來控制你的系統板,實現我們需要的各個功能。至於看書,只需大概了解單片機各管腳都是干什麼的?能實現什麼樣的功能?第一次,第二次你可能看不明白,但這不要緊,因為還缺少實際的感觀認識。所以我總是說,學單片機看書看兩三天的就夠了,看小說你一天能看五六本,看單片機你兩三天看兩三遍就夠了,可以不用仔細的看。推薦一本書,就這一本就足夠,書名是《新編MCS-51單片機應用設計》,是哈爾濱工業大學出版社出的的,作者是張毅剛。大概了解一下書上的內容,然後實踐,這是非常關鍵的,如果說學單片機你不實踐那是不可能學會的,關於實踐有兩種方法你可以選擇,一種方法:你自己花錢買一塊單片機的學習板,不要求功能太全的,對於初學者來說你買功能非常多的那種板子,上面有很多東西你這輩子都用不著,我建議有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、AD或DA(原理一樣)、液晶、蜂鳴器,這就差不多了。如果上面我提到的這些,你能熟練應用,那可以說對於單片機方面的硬體你已經入門了,剩下的就是自己練習設計電路,不斷的積累經驗。只要過了第一關,後面的路就好走多了,萬事開頭難,大家可能都聽過。方法二:你身邊如果有單片機方面的高手,向他求助,讓他幫你搭個簡單的最小系統板。對於高手來說,做個單片機的最小系統板只需要一分鍾的時間,而對於初學者可就難多了,因為只有對硬體了解了,才能熟練運用。而如果你身邊沒有這樣的高手,又找不到可以幫助你的人,那我勸你最好是自己買上一塊,畢竟自己有一塊要方便的多,以後做單片機類的小實驗時都能用得上,還省事。
有了單片機學習板之後你就要多練習,最好是自己有台電腦,一天少看電影,少打游戲,把學習板和電腦連好,打開調試軟體坐在電腦前,先學會怎麼用調試軟體,然後從最簡單的流水燈實驗做起,等你能讓那八個流水燈按照你的意願隨意流動時你已經入門了,你會發現單片機是多麼迷人的東西啊,太好玩了,這不是在學習知識,而是在玩,當你編寫的程序按你的意願實現時你比做什麼事都開心,你會上癮的,真的。做電子類的人真的會上癮。然後讓數碼管亮起來,這兩項會了後,你已經不能自拔了,你已經開始考慮你這輩子要走哪一行了。就是要這樣練習,在寫程序的時候你肯定會遇到很多問題,而這時你再去翻書找,或是問別人,當得到解答後你會記住一輩子的,知識必須用於現實生活中,解決實際問題,這樣才能發揮它的作用,你自己好好想想,上了這么多年大學,天天上課,你在課堂上學到聳裁矗渴遣皇俏�似諛┛際遠�β的兀靠紀甑昧?0分,哈哈哈好高興啊,下學期開學回來忘的一干二凈,是不是?你學到什麼了?但是我告訴你單片機一旦學會,永遠不會忘了。另外我再說說用匯編和C語言編程的問題。很多同學大一二就開設了C語言的課,我也上過,我知道那時天天就是幾乘幾,幾加幾啊,求個階乘啊。學完了有什麼用?讓你用C語言編單片機的程序你是不是就傻了?書上的東西我們必須要會運用。單片機編程用C語言或匯編語言都可以,但是我建議用C語言比較好,如果原來有C語言的基礎那學起來會更好,如果沒有,也可以邊學單片機邊學C語言,C語言也挺簡單,只是一門工具而已,我勸你最好學會,將來肯定用得著,要不你以後也得學,你一點匯編都不會根本無所謂,但你一點C語言都不會那你將來會吃苦頭。匯編寫程序代碼效率高,但相對難度較大,而且很羅嗦,尤其是遇到演算法方面的問題時,根本是麻煩的不得了,現在單片機的主頻在不斷的提高,我們完全不需要那麼高效率的代碼,因為有高頻率的時鍾,單片機的ROM也在不斷的提高,足夠裝得下你用C語言寫的任何代碼,C語言的資料又多又好找,將來可移植性非常好,只需要變一個IO口寫個溫度感測器的程序在哪裡都能用,所以我勸大家用C語言。
總結上面,只要你有信心,做事能堅持到底,有不成功不放棄的強烈意志,那學個單片機來說就是件非常容易的事。

步驟:1.找本書大概了解一下單片機結構,大概了解就行。不用都看懂,又不讓你出書的。(三天)
2.找學習板練習編寫程序,學單片機就是練編程序,遇到不會的再問人或查書。(我當初就買了中國開發板網一個單片機開發板,二十天就搞定了,你可以去試試。網址如下:http://www.kaifaban.com/html/2006111423012559.html)
3.自己網上找些小電路類的資料練習設計外圍電路。焊好後自己調試,熟悉過程。 (十天)
4.自己完全設計具有個人風格的電路,產品,。。。你已經是高手了。 。。。。

看到了嗎?下功夫一個多月你就能成為高手,我就講這么多了,學不學得會,下不下得了功夫就看你的了

『拾』 推薦一本單片機入門的經典教材

新手剛開始的時候確實很迷茫,學習單片機需要點什麼,要怎樣學習,能不能學會,總是一知半解,不知怎樣才能學會。作為過來人推薦你看一個,我當年自學單片機就是用王雲51單片機教材,配合帶的 雲龍51教學視頻學過來的,只要肯努力,肯定是有收獲的。

閱讀全文

與單片機編程與應用入門相關的資料

熱點內容
軍營訓練不聽教官的命令 瀏覽:258
v開頭的音樂播放器是什麼APP 瀏覽:117
單片機是怎麼做出來的 瀏覽:315
博圖怎麼作為opc伺服器 瀏覽:100
編譯做題軟體 瀏覽:293
橋梁檢測pdf 瀏覽:685
化解壓力的一種方法 瀏覽:680
路由器和DSN伺服器有什麼區別 瀏覽:547
android伸縮控制項 瀏覽:851
androidm3u8緩存 瀏覽:234
imphp開源知乎 瀏覽:706
清除網路通配符dos命令 瀏覽:837
鴻蒙系統怎麼快速換回安卓 瀏覽:712
pdf綠色虛擬列印機 瀏覽:213
androidtab框架 瀏覽:147
java轉php的時間戳 瀏覽:640
編譯libstdc依賴 瀏覽:659
清演算法人與原法人的區別 瀏覽:411
家庭裝修下載什麼app軟體 瀏覽:576
美食博主用什麼app拍視頻 瀏覽:817