A. 單片機原理及應用張毅剛第三版
B. 新編mcs-51單片機應用設計第3版 張毅剛怎樣
張老師的書都不錯,最經典的是《單片機原理與應用》這本書,對於初學者來說非常適合。國內的書都差不多, 隨便找一本看就行, 重要的是多動手。
C. 什麼叫單片機
單片機的名詞解析我就不多說了,我說說它的結構吧
目前市面上單片機分幾種51系列(8位,最早被開發的系列)、AVR、PIC、ARM系列
51系列的典型實例就是80C51了,不過由於它不具備在線編程能力,已經淘汰,取而代之的是89S51,它內部集成了運算器、存儲器、輸入輸出單元,具有典型的馮諾依曼結構,簡單的說,它就是一台微型計算機,我們常稱之為微處理器(MCU)。
AVR單片機是ATmega公司推出的,具有哈佛結構的單片機,它具有預取值的功能,教傳統單片機來說,各個性能上都有所提升。
ARM則是新時代的產物,由於人們生活對處理器要求越來越高,對速度以及存儲容量還有片上外設要求越來越高,51等8位單片機已經遠不能滿足了,ARM公司推出的處理器核心,ARM系列處理器,被眾多的晶元製造商認可,並在ARM核心的基礎上加上了諸如AD轉換器,DMA控制器,串口,USB,網口,SD卡讀取介面,攝像頭介面等外設,設計並製造了許多優秀的ARM處理晶元,被廣泛應用與軍事航天等領域。我們生活中用的手機,裡面的主控CPU就是單片機,U盤裡面有單片機,數碼相機等,幾乎無處不在。
硬體設計工程師通過編寫單片機程序,對單片機的各種外設和寄存器進行操作,實現對單片機的控制,一般說來,單片機是可以燒寫程序的,也存在一次性燒寫的單片機。
差不多了吧,我想你應該了解了
D. 單片機原理及介面技術的人民郵電最新出版
書名單片機原理及介面技術(C51編程)
叢 書 名21世紀高等學校計算機規劃教材——名家系列
標准書號ISBN 978-7-115-25665-2
編目分類TP368.1
作者張毅剛 主編
出版社 人民郵電出版社
責任編輯武恩玉
開本16 開
印張18
字數474 千字
頁數280 頁
裝幀平裝
版次第1版第1次
初版時間2011年8月
本 印 次2011年8月
定價34.00 元 《單片機原理及介面技術(C51編程)》詳細介紹了美國ATMEL公司的AT89S51單片機的硬體結構和片內外圍部件的工作原理,Keil C51編程基礎知識,並從應用設計的角度介紹AT89S51單片機的各種常用的硬體介面設計,以及相應的Keil C51介面驅動程序設計。本書最後介紹了AT89S51單片機應用系統設計以及一些典型應用舉例。
《單片機原理及介面技術(C51編程)》可作為各類工科院校、職業技術學院電子技術、計算機、工業自動化、自動控制、智能儀器儀表、電氣工程、機電一體化等專業單片機課程教材,也可供從事單片機應用設計的工程技術人員參考。 第1章單片機概述1
1.1什麼是單片機1
1.2單片機的發展歷史2
1.3單片機的特點2
1.4單片機的應用3
1.5單片機的發展趨勢4
1.6MCS-51系列與AT89S5x系列單片機5
1.6.1MCS-51系列單片機5
1.6.2AT89系列單片機6
1.6.3AT89系列單片機的型號說明7
1.7各種衍生品種的51單片機8
1.7.1STC系列單片機9
1.7.2C8051F×××單片機10
1.7.3ADμC812單片機10
1.7.4華邦W77系列、W78系列單片機10
1.8PIC系列單片機與AVR系列單片機10
1.8.1PIC系列單片機11
1.8.2AVR系列單片機12
1.9其他的嵌入式處理器簡介12
1.9.1嵌入式DSP處理器13
1.9.2嵌入式微處理器13
思考題及習題14
第2章AT89S51單片機硬體結構15
2.1AT89S51單片機的硬體組成15
2.2AT89S51的引腳功能17
2.2.1電源及時鍾引腳17
2.2.2控制引腳18
2.2.3並行I/O口引腳18
2.3AT89S51的CPU19
2.3.1運算器19
2.3.2控制器21
2.4AT89S51單片機存儲器的結構21
2.4.1程序存儲器空間22
2.4.2數據存儲器空間23
2.4.3特殊功能寄存器23
2.4.4位地址空間26
2.5AT89S51單片機的並行I/O埠27
2.6時鍾電路與時序29
2.6.1時鍾電路設計29
2.6.2機器周期、指令周期與指令時序30
2.7復位操作和復位電路31
2.7.1復位操作31
2.7.2復位電路設計31
2.8低功耗節電模式33
2.8.1空閑模式33
2.8.2掉電運行模式34
2.8.3掉電和空閑模式下的WDT34
思考題及習題35
第3章C51語言編程基礎37
3.1編程語言Keil C51簡介37
3.1.1Keil C51簡介37
3.1.2C51與標准C的比較38
3.2Keil C51的開發工具39
3.2.1集成開發環境Keil μVision3簡介39
3.2.2Keil μVision3軟體的安裝、啟動和運行40
3.3C51語言程序設計基礎40
3.3.1C51語言中的數據類型與存儲類型41
3.3.2C51語言的特殊功能寄存器及位變數定義45
3.3.3C51語言的絕對地址訪問47
3.3.4C51的基本運算48
3.3.5C51的分支與循環程序結構50
3.3.6C51的數組57
3.3.7C51的指針58
3.4C51語言的函數60
3.4.1函數的分類60
3.4.2函數的參數與返回值61
3.4.3函數的調用62
3.4.4中斷服務函數63
3.4.5變數及存儲方式63
3.4.6宏定義與文件包含64
3.4.7庫函數65
3.5軟體模擬開發工具Proteus與Keil μVision3的聯調65
3.5.1軟體模擬開發工具Proteus簡介65
3.5.2Proteus與Keil μVision3的聯調66
思考題及習題67
第4章AT89S51片內並行埠的原理及編程68
4.1AT89S51的並行I/O埠的結構及工作原理68
4.1.1P0口68
4.1.2P1口70
4.1.3P2口70
4.1.4P3口71
4.1.5P1~P3口驅動LED發光二極體的問題72
4.2並行I/O埠的C51編程舉例73
4.2.1從左到右的流水燈的製作73
4.2.2左右來回循環的流水燈的製作73
4.2.3開關量檢測指示器176
4.2.4開關量檢測指示器276
思考題及習題77
第5章AT89S51單片機的中斷系統79
5.1AT89S51中斷技術概述79
5.2AT89S51中斷系統結構79
5.2.1中斷請求源80
5.2.2中斷請求標志寄存器80
5.3中斷允許與中斷優先順序的控制81
5.3.1中斷允許寄存器IE82
5.3.2中斷優先順序寄存器IP82
5.4響應中斷請求的條件84
5.5外部中斷的響應時間85
5.6外部中斷的觸發方式選擇86
5.6.1電平觸發方式86
5.6.2跳沿觸發方式86
5.7中斷請求的撤銷86
5.8中斷函數87
5.9C51編程舉例88
5.9.1單一外中斷的應用88
5.9.2兩個外中斷的應用89
5.9.3中斷嵌套91
5.9.4多外部中斷源系統設計92
思考題及習題93
第6章AT89S51單片機的定時器/計數器95
6.1定時器/計數器的結構95
6.1.1工作方式控制寄存器TMOD96
6.1.2定時器/計數器控制寄存器TCON96
6.2定時器/計數器的4種工作方式97
6.2.1方式097
6.2.2方式198
6.2.3方式298
6.2.4方式399
6.3對外部輸入的計數信號的要求100
6.4定時器/計數器的編程和應用101
6.4.1P1口外接的8隻LED每0.5s閃亮一次101
6.4.2計數器的應用102
6.4.3擴展一個外部中斷源103
6.4.4P1.0上產生周期為2ms的方波104
6.4.5P1.1上產生周期為1s的方波104
6.4.6T1控制發出1kHz的音頻信號105
6.4.7測量脈沖寬度——門控位GATEx的應用106
6.4.8實時時鍾的設計107
思考題及習題108
第7章AT89S51單片機的串列口110
7.1串列口的結構110
7.1.1串列口控制寄存器SCON110
7.1.2特殊功能寄存器PCON112
7.2串列口的4種工作方式112
7.2.1方式0112
7.2.2方式1116
7.2.3方式2117
7.2.4方式3118
7.3多機通信119
7.4波特率的制定方法120
7.4.1波特率的定義120
7.4.2定時器T1產生波特率的計算120
7.5串列通信的應用設計122
7.5.1各種串列通信介面標准122
7.5.2方式1的應用124
7.5.3方式2和方式3的應用127
7.5.4主從式多機通信的應用129
7.5.5單片機與PC的串列通信133
7.5.6PC與單片機或與多個單片機的串列通信介面設計135
思考題及習題136
第8章AT89S51單片機外部存儲器的擴展138
8.1系統擴展結構138
8.2地址空間分配和外部地址鎖存器139
8.2.1存儲器地址空間分配139
8.2.2外部地址鎖存器142
8.3程序存儲器EPROM的擴展144
8.3.1常用的EPROM晶元144
8.3.2程序存儲器的操作時序146
8.3.3AT89S51單片機與EPROM的介面電路設計148
8.4靜態數據存儲器RAM的擴展149
8.4.1常用的靜態RAM(SRAM)晶元149
8.4.2外擴數據存儲器的讀寫操作時序150
8.4.3AT89S51單片機與RAM的介面電路設計151
8.5EPROM和RAM的綜合擴展153
8.5.1綜合擴展的硬體介面電路153
8.5.2外擴存儲器電路的編程155
8.6片內Flash存儲器的編程155
8.6.1通用編程器編程157
8.6.2ISP編程157
思考題及習題158
第9章AT89S51單片機的I/O擴展160
9.1I/O介面擴展概述160
9.1.1擴展的I/O介面功能160
9.1.2I/O埠的編址160
9.1.3I/O數據的傳送方式161
9.1.4I/O介面電路161
9.2AT89S51擴展I/O介面晶元82C55的設計162
9.2.182C55晶元簡介162
9.2.2工作方式選擇控制字及埠PC置位/復位控制字163
9.2.382C55的3種工作方式165
9.2.4AT89S51單片機與82C55的介面設計169
9.3利用74LSTTL電路擴展並行I/O口171
9.4用AT89S51單片機的串列口擴展並行口172
9.4.1用74LS165擴展並行輸入口172
9.4.2用74LS164擴展並行輸出口173
9.5用I/O口控制的聲音報警介面174
9.5.1揚聲器報警介面174
9.5.2音樂報警介面176
思考題及習題176
第10章AT89S51單片機與輸入/輸出外設的介面178
10.1LED數碼管顯示器的介面設計178
10.1.1LED數碼管的工作原理178
10.1.2LED數碼管顯示器介面設計舉例179
10.2鍵盤的介面設計183
10.2.1鍵盤介面應解決的問題183
10.2.2鍵盤介面設計舉例184
10.2.3鍵盤掃描方式的選取188
10.3鍵盤/顯示器介面的設計實例188
10.3.1利用並行I/O晶元82C55實現鍵盤/顯示器介面188
10.3.2利用串列口實現的鍵盤/顯示器介面191
10.3.3專用介面晶元HD7279實現的鍵盤/顯示器控制193
10.4AT89S51單片機與液晶顯示器的介面204
10.4.1LCD顯示器的分類204
10.4.2點陣字元型液晶顯示模塊介紹204
10.4.3AT89S51單片機與LCD的介面及軟體編程208
10.5AT89S51單片機與微型列印機TP(P-40A/16A的介面211
10.6AT89S51單片機與BCD碼撥盤的介面設計215
思考題及習題216
第11章AT89S51單片機與D/A、A/D轉換器的介面217
11.1AT89S51單片機與DAC的介面217
11.1.1D/A轉換器簡介217
11.1.2AT89S51單片機與8位D/A轉換器0832的介面設計218
11.2AT89S51單片機與ADC的介面225
11.2.1A/D轉換器簡介225
11.2.2AT89S51與逐次比較型8位A/D轉換器ADC0809的介面226
11.2.3AT89S51與逐次比較型12位A/D轉換器AD1674的介面230
11.3AT89S51單片機與V/F轉換器的介面234
11.3.1用V/F轉換器實現A/D轉換的原理235
11.3.2常用V/F轉換器LMX31簡介235
11.3.3V/F轉換器與MCS-51單片機介面236
11.3.4LM331應用舉例237
思考題及習題238
第12章單片機的串列擴展技術239
12.1單匯流排串列擴展239
12.2SPI匯流排串列擴展240
12.2.1SPI匯流排的擴展結構241
12.2.2擴展帶SPI串口的A/D轉換器TLC2543242
12.3I2C匯流排的串列擴展243
12.3.1I2C串列匯流排系統的基本結構244
12.3.2I2C匯流排的數據傳送規定244
12.3.3AT89S51的I2C匯流排擴展系統247
12.3.4I2C匯流排數據傳送的模擬248
12.3.5I2C匯流排在IC卡中的應用251
思考題及習題255
第13章AT89S51單片機的應用設計與調試256
13.1單片機應用系統的設計步驟256
13.2單片機應用系統設計257
13.2.1硬體設計應考慮的問題257
13.2.2典型的單片機應用系統258
13.2.3系統設計中的地址空間分配與匯流排驅動259
13.2.4應用設計例1——最小應用系統設計261
13.2.5應用設計例2——數字電壓表的設計262
13.2.6應用設計例3——帶有報警功能的溫度測量儀的設計264
13.3單片機應用系統的模擬開發與調試266
13.3.1模擬開發系統的種類與基本功能267
13.3.2模擬開發系統簡介267
13.3.3用戶樣機的模擬調試270
13.4單片機應用系統的抗干擾與可靠性設計272
13.4.1AT89S51片內看門狗定時器的使用273
13.4.2軟體濾波273
13.4.3開關量輸入/輸出軟體抗干擾設計274
13.4.4過程通道干擾的抑制措施——隔離275
13.4.5印刷電路板抗干擾布線的基本原則276
思考題及習題278
參考文獻280
E. 《單片機》課程學習總結
《單片機》課程學習總結
篇一:《單片機》課程學習總結
《單片機》這門課程我已經學了一個學期了,在這一個學期的學習過程中,我一開始不怎麼懂得編程,但慢慢的我現在已經不僅會讀程序還會寫程序了。真為自己一個學期來努力學到的單片機知識只是而感到高興。
怎麼學單片機?也常看到有人說學了好幾個月可就是沒有什麼進展。當然,受限於每個人受到的教育水平不同和個人理解能力的差異,學習起來會有快慢之分,但我感覺最重的就是學習方法。一個好的學習方法,能讓你事半功倍,這里說說我學習單片機的經歷和方法。
我覺得學習單片機首先要懂得C語言,因為單片機大多說都是靠程序來實現的,如果看不懂程序或則不懂的編程是很難學會單片機的。學習單片機首先要明白一個程序是怎麼走的,要完全懂得程序每一個步驟的意思。其次要懂得每一條指令的意思,不能盲目地去靠背指令,這是記得不牢靠的,最主要的還是靠了解。學習單片機最主要的對89C51晶元內部結構有全方面的,只要了解了89C51才能知道單片機實現什麼樣的功能和作用,才能對單片機有更深一步的了解。 通過一個學期《單片機》這門課程的學習,我也從中有了不少心
得和體會想和大家分享一下。
萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,不要說單片機的程序全是英文,自己看不懂。遇到困難要一件件攻克,不懂指令就要勤奮看書,不懂程序就先學它,這方面網上教程很多,隨便找找看一下,做幾次就懂了。然後可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養一下自己的感覺,知道寫程序是怎麼一回事,無論寫大程序還是小程序,要做的工序不會差多少。然後建個程序,加入項目中,再寫代碼、編譯、運行。必須熟悉這一套工序。個人認為,一塊學習板還是必要的,寫好程序在上面運行一下看結果,學習效果會好很多,模擬器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學不會的。
知識點用到才學,不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學了後面的,前面的估計也快忘光了,所以,最好結合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學好就是了,這是把整本書化整為零,一小點一小點的啃。 程序不要光看不寫,一定要自己寫一次。最開始的時候,什麼都不懂,可以抄人家的程序過來,看看每一句是干什麼用的,達到什麼目的,運行後有什麼後果。看明白了之後,就要自己寫一次,你會發現,原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距。當你自己能寫出來的時候,說明你就真的懂了。
必須學會掌握調試程序的方法。不少人寫程序,把代碼寫好了,
然後一運行,不是自己想要的結果,就暈了,然後跑到論壇上發個帖子,把程序一貼,問:為什麼我的程序不能正常運行?然後就等別人來給自己分析。這是一種很不好的行為,應該自己學會發現問題和學會如何解決問題。這就需要學習調試程序的方法,比如KEIL里,可以下斷點啦,查看寄存器內容等等,這些都是調試程序的手段,當你發現你寫的程序運行結果和你想像中不一樣的時候,你可以單步,也可以下斷點,然後跟蹤,查看各相關寄存器內容,看看程序運行過中是不是有什麼偏差,找出影響結果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學到的知識是書上得不到的。
找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復制到自己的程序中,可以說,這不是一種學習的態度,無助於你編程水平的提高。
我幾乎不怎麼看人家的代碼,多數時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以。要從代碼中看出別人處理問題的思路,是相當困難的,特別是大型的程序,看起來是非常的累人。所以現在我也明白了,以前讀書時說的程序流程圖很重要,現在算是知道了。當你知道一個問題怎麼去解決了,那麼剩下的只是你安排代碼去完成,這就已經不是什麼問題了。
開動腦筋,運用多種方法,不斷優化自己的程序。想想用各種不同方法來實現同一功能。這是一個練習和提高的過程,一個問題,你解決了,那麼你再想想,能不能換種寫法,也可以實現同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執行效率更高,這個過程,就是一個進步的過程。很多知識和經驗的獲得,並不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經驗才能得到積累,編程水平才能有所提高。
看別人的程序,學習人家的思路。這個在學習初期是很有用,通過看別人的程序,特別是老師寫出的具有一定水平的程序,可以使自己編程水平得到迅速的提高。同時,也可以結合別人的編程手法,與自己的想法融合在一起,寫出更高水平的程序,從中得到進步。但要注意,切忌將學習變成抄襲,更不是抄襲完了就認為自己學會了,這樣做只會使你退步。
嘗試編寫一下綜合應用的程序。從流水燈學起,到動態掃描,再到中斷,那麼,你可以試試寫一下時鍾這種綜合性應用的程序,不要小看時鍾,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(IO讀取)、動態掃描(IO輸出)、中斷等,如何協調好各功能模塊正常工作,才是編程者需要學習的地方,當你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序什麼也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數碼管既能顯示,又要去處理按鍵讀取,怎麼使這兩部分都正常工作,這就是一個協調過程。當你有了這個處理協調能力,你就算是入門了。
著重於培養解決問題的能力,而不是具體看自己編寫了多少程序或者做過什麼。「學單片機重點在於學習解決問題的思路,而不是局限於具體的晶元類型和語言」這一直是我的座右銘,是我學單片機學習單片機之後感悟出來的。真正的能力不是你曾經編寫過多少個可以實現的程序,而應該是:「遇到沒有解決過的問題,能利用自己已學的知識,迅速找到解決問題的方法。」這個才是能力。
面對一個新程序時,多自己開動腦筋,不要急於找別人的程序。
有不少人面對一個新程序時,第一步想到的就是網上找別人寫過的程序,然後抄一段,自己再寫幾句,湊在一起就完成任務,這雖然可能是省時間,但絕對不利你的學習。當你接到一個程序時,應該先自己構思一下整個程序的架構,想想如何來完成。有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數據、變數有一個初步的安排,然後自己動手去寫,遇到實在沒辦法解決的地方,再去請教老師或同學,或看別人是怎麼處理的,這樣首先起碼你自己動過腦想過,自己有自己的思路。如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創新就更難了,這樣你自己永遠也沒辦法提高,因為你是走在別人的影子里。
學會提問題。一般來說,學習過程中,你遇上的問題,多數人也有遇上的,所以如果有什麼不懂,你可以去問老師。我覺得學習單片機最主要的要多提問,對於一個自己不是太懂的程序,自己一定要多提問幾遍,這樣不但有利於加深自己的印象還能從中學到不少別人的方法。
經過一個學期我對《單片機》這門課程的學習,不僅讓我懂得了很多程序的編寫,還讓我學到了很多對自己有用的學習方法。總結這個學期來的我自己的學習情況,我覺得自己對編程進步了不少,懂得運用正確的學習方法學習單片機程序,不再去死記硬背指令了。所以我覺得學習要不斷總結學習方法,才能讓自己學習不斷進步。
交通信號燈設計報告
實驗目的: P1口的使用方法,延時程序的編寫
實驗要求:在一個十字路口分為東西南北走向,信號等按以下的狀態順序工作:
(1) 初始狀態0,東西、南北紅燈全亮。延時一定時間;
(2) 狀態1,南北綠燈亮通車,東西紅燈,延時一定時間;
(3) 狀態2,南北綠燈閃爍幾次轉黃燈,東西仍然紅燈,延時一定
時間;
(4) 狀態3,南北紅燈,東西綠燈通車,延時一定時間;
(5) 狀態4,南北仍然紅燈,東西綠燈閃爍幾次轉黃燈,延時一定
時間;
(6) 循環至狀態1,繼續
實驗電路和流程框架圖:
(1) 硬體電路
交通燈實訓設備用最小系統板和信號燈組合而成。
2、軟體編程
若各路口燈亮滅的時間間隔為2s鍾,燈光閃爍時間間隔為0.5s。用軟體延時的方法,晶振頻率12MHz時,一個機器周期為1us。
編寫交通信號燈程序:
編寫主程序,由R7做主程序的計數器,確定調用延時時間為0.5s,從而獲得交通燈的亮滅時間。
篇二:《單片機》課程學習總結
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機課程也結束,但通過這次單片機的學習,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養我們的創新精神,從而不斷地戰勝自己,超越自己。創新可以是在原有的基礎上進行改進,使之功能不斷完善,成為真己的東西。
當今社會隨著電子技術的發展,特別是隨著大規模集成電路的產生,給人們的生活帶來了根本性的變化,如果說微型計算機的出現使現代的科學研究得到了質的飛躍,那麼可編程式控制制器的出現則是給現代工業控制測控領域帶來了一次新的革命。在現代社會中,溫度控制不僅應用在工廠生產方面,其作用也體現到了各個方面。本學期我們就學習了單片機這門課程,感覺是有點難呢。也不知道整個學習過程是怎麼過來得,可是時間不等人。
剛開始學習的時候,對單片機沒有什麼認識,不知道什麼是單片機,更不知道它有什麼作用。通過學習才大體知道了單片機的一些知識。單片機是一塊在集成電路晶元上集成了一台有一定規模的微型計算機。簡稱為:單片微型計算機或單片機。單片機的應用到處可見,應用領域廣泛,主要應用在智能儀表、實時控制、通信、家電等方面。由中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、I/O介面、定時器/計數器以及串列通信介面等集成在一塊晶元上,構成了一個單片微型計算機,簡稱為單片機。它的應用范圍很廣,在工業自動化中應用有數據採集、測控技術。
在智能儀器儀表中應用有數字示波器、數字信號源、自動取款機等。在消費類電子產品中應用有空調機、電視機、微波爐、手機、IC卡、汽車電子設備等。在通訊方面應用有手機、小靈通等。在武器裝備方面應用有飛機、坦克、導彈、太空梭、智能武器等。剛開始學習時只能抄寫別人做成功的程序,一遍一遍的寫,從簡單的入手,逐步的積累,一步步的能夠將小的程序結合到一起,拼接成較為復雜一些的程序。但是程序不要只是看別人得,一定要自己寫過才是自己的。只有當你自己能寫出來的時候說明你真懂了。剛接觸KEIL時確實很讓人頭疼,使用 KEIL不會建項目、不會使用實驗板。然後可以參考已經成功的程序,抄過來,寫一個最簡單的,讓它運行起來,先培養一下自己的感覺,先建個項目,再配置一下項目,然後建個程序,加入項目中,再寫代碼、編譯、生成HEX,刷進單片機中、運行。其實當遇到問題一定要自己嘗試著解決,不能遇到問題就去問別人,自己一定要掌握解決問的方法和思路。對一個新項目時,自己一定要多想想,不要急著去看別人是怎麼寫的。應該先想一下程序的構架,想想如何來完成。然後自己動手去寫,理清自己的思路這樣更容易提高自己。
熟悉單片機的人都知道,要學好單片機可不是一件容易的事,倒不是因為單片機很難學,而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教材,都好像是為已經懂單片機的人而寫的,一般先介紹單片機的硬體結構和指令系統,再是系統擴展和外圍器件,順便講一些應用設計(隨便說一下,很多書中的電路設計已經過時,並且有些程序還是錯誤的`)。如果按照此種學習方法,想進行產品開發,就必須先把所有的知識全部掌握了才可以進行實際應用。學習使用單片機只能靠循序漸進的積累,雖然單片機的課程只上了幾節就去上班了,但在學習的過程中有了一定的了解。下面就本人學習單片機的過程和經驗做簡要介紹。
首先,學習單片機要有一定的基礎:電子技術方面要有數字電路和模擬電路等方面的理論基礎,特別是數字電路;編程語言要求匯編語言或C語言。要想成為單片機高手,建議初學者首先學習匯編語言,學的差不多的時候,轉入C語言學習。盡管匯編語言屬於低級語言,編程效率低,但是較C語言具有目標代碼簡短,佔用內存少,執行速度快等優點,更重要的是能使初學者盡快熟悉單片機的內部結構,並能對其進行精確的控制。匯編語言在單片機教材裡面都會涉及,不需要單獨購買教材和學習。C語言是一門學問,有很多專業書籍來講解,並且對我們今後的編程生涯有絕對的好處,因此要深入學習,千萬不要自以為看了某某的視頻教程就以為掌握了C語言,那隻是C語言的一部分。在這里給大家推薦一本單片機C語言程序設計參考書,馬忠梅等著,北京航空航天大學出版社出版的《單片機的C語言應用程序設計》,要求C語言基礎。如果沒學過C語言,建議學習清華大學譚浩強編寫的C語言程序設計,這本書寫的不錯,通俗易懂。
其次,是單片機教材選擇。單片機是一門非常重視實踐的技術,不能總是看書,但要學習它首先應看書,對單片機引腳、內部結構、寄存器和原理有一定地了解和感官認識,它的是怎樣工作的,能幹些什麼?剛開始時,也許你看不明白,但這並不要緊,因為你還缺乏實踐經驗。現在單片機應用廣泛,因此各個廠家分別推出了自己的單片機,我們沒必要每樣都學!因為他們的編程方法和調試過程以及內部指令結構有一定的相似,只要學精通一款就OK了!尤其是用C語言編程,就幾乎不用分什麼派系,但是我們要選擇一款有代表性的知識范圍廣,並且入門容易,書籍多。一般來說,MCS-51系列單片機已經得到廣泛的普及和應用,市場上它的資料也比較多,用的人也很多。給大家推薦一些參考書,學習時只需要一本就足夠拉。書名:《新編MCS-51單片機應用設計》,哈爾濱工業大學出版,作者:張毅剛;書名:《單片機原理及應用》,高等教育出版社,作者:張毅剛等;書名:《單片機高級教程:應用與設計》,北京航空航天大學出版社,作者:何立民。相關教材還有很多,在這不一一列舉。
然後,是開發工具和開發環境的選擇。選擇一塊合適的學習板,對於初學者來說一般無力接受,如果經濟條件允許、本人又對單片機很感興趣、有從事相關工作意向的話,鼓勵大家購買。隨便說一句,學習板功能要求太全,具有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、AD或DA、液晶、蜂鳴器等就差不多啦,畢竟,功能齊全的價格比較高。模擬器對單片機初學者來說既是那麼耳熟,同時又有些陌生,這主要是因為市場上傳統的模擬器價格都在千元以上,對經濟不是非常寬裕的人來說是不小的開支。同時模擬器是用來提高調試程序效率的,也不是非需不可的,如果你沒有模擬器,遇到程序出錯的時候,只好苦思冥想,反復燒寫調試。
隨便推薦一下,學林電子的51tracer模擬器,有興趣的朋友可關注一下。有了單片機教程板以後,先看下指導說明書,熟悉一下學習板,開卷有益。以後就得靠自己多練習了,將學習板與電腦連接好,先學會開發軟體的使用,然後從最簡單的流水燈實驗做起,按照你自己的意願控制流水燈,當你完成時,你會發現這是多麼愜意的事情。太好玩了,你會覺得這不是在學習,而是在玩,當你發現,單片機能夠按照你編寫的程序工作時,你會覺得非常興奮,比做什麼事情都開心,這樣你會慢慢迷上單片機,真的。不少網站上說搞定某個實驗,就恭維的告訴你一聲」恭喜你,學會了」自己學會了單片機,這有點可笑,這只能說明你算過關了,對單片機有了一定了解和會使用它了。但是單片機能完成的功能太多了,尤其是對外圍器件的控制,綜合起來能設計出許多意想不到的產品.因此除了入門外,精通可千萬別輕易說出口。
最後,在熟練掌握和應用後,那可以說對於單片機方面的硬體你已經入門了,剩下的就是自己練習設計開發各種課題,不斷的積累經驗。最終,自己完全設計具有個人風格的課題,產品,這樣你就是單片機高手拉。只要過了第一關,後面的路就好走多了,萬事開頭難,這大家可能都聽過。
有時候單片機的學習很單調,有些知識學起來很抽象,不容易理解,只能慢慢適應,一邊學習理論知識,一邊編寫程序,將程序刷入單片機進行調試,通過這種方式才能更快速的學習單片機。要堅定自己的學習信心,在付出持之以恆的努力,我相信自己能進一步加深對單片機的了解,在單片機的學習道路上走得更遠!
;F. 我想學51單片機不知道從哪學起,請推薦幾本書和簡紹一下方法
1.如果要學C語言基本知識請看
譚浩強寫的《C程序設計》
教師推薦的單片機書籍為以下兩本:
2. 新編MCS-51單片機應用設計
哈爾濱工業大學出版社 張毅剛
上書主要以匯編語言為主,對單片機內部結構介紹較詳細,初學者可選擇本書,在聽講本課程的同時,不但學會了C語言,而且通過查看本書還可了解匯編語言。
3.《8051系列單片機C程序設計完全手冊》
人民郵電出版社
上書主要講了單片機的C語言編程及很多例子,可參考,是一本非常好的書。
有以上三本書基本就夠了。
G. 單片機原理及應用第三版
單片機原理及應用第三戚胡版內容如下:
《單片機原理及應用(第三版)》是2016年高等教育出版社出版的圖書,作者是張毅剛、趙光權、劉旺。
《單片機原理及應用(第3版)》配有光碟,光碟內容包括:全書15章的PPr講稿、各章習題及參考答案、模擬考試試卷及參考答案,單片機ProteusE型教學實驗系統說明及實驗指導,Proteu8V8.x的新特性介紹及調試案例。
內容簡介
《單片機原理及應用(第3版)》為「十二五」普通高等教育本科國家洞仔老級規劃教材,《單片機原理及應用(第3版)》詳細介紹了美國ATMEL公司的增強型AT89S52單片機的硬體結構及片內各外圍部件的工作原理、匯編語言指令系統以及常用程序設計。
並從應用設計的角度介紹AT89S52單片機的各種擴展介面設計、介面驅動程序設計以及應用系統設計,給出較多的實用設計案例,同時還對AT89S52單片機應用系統設計中用到的各種流行器件進行了介紹,此外還納升介紹了單片機應用系統的可靠性與抗干擾設計以及功率介面的設計。
H. 單片機原理與應用的概述
單片機原理及應用:(張毅剛2004年版圖書)
本書詳細地介紹了MCS-51單片機的硬體結構、指令系統,從應用的角度介紹了匯編語言程序設計與各種硬體介面設計、各種常用的數據運算和處理程序、介面驅動程序以及MCS-51單片機應用系統的設計,並對MCS-51單片機應用系統設計中的抗干擾技術以及各種新器件也作了詳細的介紹。本書突出了選取內容的實用性、典型性。書中的應用實例,大多來自科研工作及教學實踐,且經過檢驗,內容豐富、詳實。