《單片機(jī)使用速成》結(jié)合當(dāng)前流行的多種系列的單片機(jī),從應(yīng)用的角度講解其原理和使用方法。作者根據(jù)自己多年使用單片機(jī)的體會(huì),對(duì)與應(yīng)用有關(guān)的單片機(jī)內(nèi)部硬件及其操作進(jìn)行了詳細(xì)解釋,為了追求舉一反三的效果,對(duì)同樣的功能單元通過多家公司的單片機(jī)對(duì)照來講解。對(duì)從未涉及單片機(jī)使用但具有一定電子技術(shù)基礎(chǔ)的人員來說,通過《單片機(jī)使用速成》的學(xué)習(xí)可以很快將單片機(jī)自如地作為自己的設(shè)計(jì)元件,打破在單片機(jī)、DSP、ARM等智能芯片面前望而卻步的局面;對(duì)于會(huì)初步使用一兩種單片機(jī)的人員來說,通過《單片機(jī)使用速成》的學(xué)習(xí)可以進(jìn)一步理解單片機(jī)的組成規(guī)律,掌握快速消化各種單片機(jī)使用說明書的能力,根據(jù)不同的應(yīng)用目的選擇不同的單片機(jī)以提高所設(shè)計(jì)產(chǎn)品的性價(jià)比。
《單片機(jī)使用速成》可作為高等院校相關(guān)專業(yè)單片機(jī)課程的教材,也可作為工程技術(shù)人員的參考書。
用單片機(jī)完成課題的一般步驟: 全面了解課題所要解決的問題,選擇合適的單片機(jī)及外圍電路方案。 根據(jù)計(jì)劃選用單片機(jī)內(nèi)部資源,仔細(xì)消化單片機(jī)廠家提供的產(chǎn)品手冊(cè)。 設(shè)計(jì)詳細(xì)的硬件原理圖、機(jī)械及其他部分的圖紙、軟件流程圖。 對(duì)系統(tǒng)的關(guān)鍵部分做局部試驗(yàn),進(jìn)一步確定詳細(xì)方案。 生成電路PCB圖,制作線路板,完成所需機(jī)械加工、軟件設(shè)計(jì)并采購元器件 組裝調(diào)試,修改并完善設(shè)計(jì),總結(jié)技術(shù),整理資料。 以全新的方式從應(yīng)用角度講解單片機(jī) 以程序員的目光理解單片機(jī)電路 讓零編程基礎(chǔ)的學(xué)習(xí)者學(xué)會(huì)使用單片機(jī) 讓淺基礎(chǔ)學(xué)習(xí)者掌握應(yīng)用單片機(jī)的本領(lǐng) 配套典型單片機(jī)的實(shí)驗(yàn)評(píng)估板,邊學(xué)習(xí)邊實(shí)驗(yàn)
要是在10年前,寫一本名副其實(shí)的《單片機(jī)使用速成》簡(jiǎn)直是不可能的,因?yàn)閱纹瑱C(jī)本身及其配套開發(fā)還不夠健全。所謂速成,就是讓沒有接觸過單片機(jī)但有一定電子技術(shù)基礎(chǔ)的學(xué)習(xí)者在短時(shí)間內(nèi)學(xué)會(huì)使用單片機(jī),我們很早就萌生了這個(gè)想法,也一直在努力做這方面的工作,現(xiàn)在終于信心十足地推出了本書及其配套實(shí)驗(yàn)評(píng)估板。
對(duì)于單片機(jī)的初學(xué)者,可以歸納為以下4種類型:第1類,對(duì)電子技術(shù)較為精通卻苦于不愿意學(xué)習(xí)編程而在單片機(jī)面前徘徊不前;第2類,對(duì)編程較為熟悉卻苦于不太懂電路也不愿意深入了解單片機(jī);第3類,已經(jīng)能吃力地使用一種較簡(jiǎn)單的單片機(jī)卻不愿意再花費(fèi)精力涉足其他更優(yōu)秀的單片機(jī);第4類,有一定電路和編程基礎(chǔ)卻覺得單片機(jī)太難學(xué)而一直未下決心深入學(xué)習(xí)。
無論是哪一類人員,我們都可以通過以下措施來讓他們達(dá)到“速成”的目的:
提供很薄而實(shí)用的一本書,從感官上讓學(xué)習(xí)者產(chǎn)生信心和興趣;
復(fù)雜問題簡(jiǎn)單化,只用小篇幅的一章內(nèi)容就讓從未學(xué)習(xí)過軟件及編程者能夠用單片機(jī)開發(fā)平臺(tái)入門編寫和調(diào)試程序;
對(duì)于一個(gè)現(xiàn)代電子工程師來說,不懂硬件什么也不能干,不懂軟件什么也干不成;
硬件是基礎(chǔ),軟件更重要。本書從程序員編程的角度,把一般單片機(jī)的電路組成原理呈現(xiàn)在學(xué)習(xí)者面前,同時(shí)又把幾種典型的單片機(jī)電路特點(diǎn)盡可能地展現(xiàn)出來。
堅(jiān)持舉一反三的原則,在介紹單片機(jī)組成規(guī)律的基礎(chǔ)上,把典型的單片機(jī)基本操作盡可能闡述清楚,并且用配套的實(shí)驗(yàn)評(píng)估板當(dāng)場(chǎng)編程、當(dāng)場(chǎng)演示,使學(xué)習(xí)者產(chǎn)生成就感和更深的興趣。訓(xùn)練學(xué)習(xí)者從廠家的使用說明書中找答案,而不是把教科書作為座右銘,由此而快速理解單片機(jī)廠家資料,根據(jù)不同的應(yīng)用目的選擇不同的單片機(jī)以提高所設(shè)計(jì)產(chǎn)品的性價(jià)比。由于時(shí)間倉促,再加水平有限,書中難免有錯(cuò)誤和不妥之處,歡迎各位讀者不吝賜教。
第1章 導(dǎo)論
l.1 單片機(jī)的定義
1.2 現(xiàn)代電子技術(shù)中軟件的重要性
1.3 單片機(jī)使用的一般步驟
1.4 初識(shí)單片機(jī)
第2章 單片機(jī)程序設(shè)計(jì)入門
2.1 單片機(jī)程序設(shè)計(jì)模型
2.2 程序設(shè)計(jì)的內(nèi)容
2.3 單片機(jī)c語言程序設(shè)計(jì)初步
2.3.1 程序的實(shí)質(zhì)
2.3.2 程序碼的產(chǎn)生
2.3.3 C程序的一般結(jié)構(gòu)
2.3.4 C程序的編寫
2.4.Keil開發(fā)環(huán)境的使用
2.4.1 Keil工程的建立
2.4.2 Keil程序的編寫和調(diào)試
2.5 IAR開發(fā)環(huán)境的使用
2.5.1 IAR工程的建立
2.5.2 IAR程序的編寫和調(diào)試
第3章 單片機(jī)的上電、復(fù)位、時(shí)鐘及中斷
3.1 電源的接人
3.2 復(fù)位
3.2.1 復(fù)位的概念
3.2.2 復(fù)位電路
3.3 初始化
3.4 系統(tǒng)時(shí)鐘
3.4.1 單時(shí)鐘方案系統(tǒng)
3.4.2 C8051F02x單片機(jī)多時(shí)鐘方案
3.4.3 MSP430xlxx單片機(jī)多時(shí)鐘方案
3.4.4 ATmegal6單片機(jī)多時(shí)鐘方案
3.5 中斷的概念
第4章 單片機(jī)的端口操作
4.1 單片機(jī)端口設(shè)計(jì)原理
4.1.1 CMOS數(shù)字端口
4.1.2 CMOS單片機(jī)端口的基本原理
4.2 端口設(shè)計(jì)舉例
4.2.1 AT89C205l單片機(jī)端口設(shè)計(jì)舉例
4.2.2 C805lF02x單片機(jī)端口設(shè)計(jì)舉例
4.2.3 MSP430xlxx單片機(jī)端口設(shè)計(jì)舉例
4.2.4 ATmegal6單片機(jī)端口設(shè)計(jì)舉例
第5章 單片機(jī)的定時(shí)器操作
5.1 定時(shí)器的組成原理
5.2 基本51系列單片機(jī)定時(shí)器操作舉例
5.2.1 定時(shí)器0/1的工作方式0:13位計(jì)數(shù)器/定時(shí)器
5.2.2 定時(shí)器0/l的工作方式l:16位計(jì)數(shù)器/定時(shí)器
5.2.3 定時(shí)器0/l的工作方式2:8位自動(dòng)重裝載的計(jì)數(shù)器/定時(shí)器
5.2.4 定時(shí)器0的工作方式3:兩個(gè)8位計(jì)數(shù)器/定時(shí)器
5.3 C805lF02x單片機(jī)定時(shí)器使用舉例
5.3.1 C805lF020單片機(jī)中的基本51定時(shí)器操作
5.3.2 C805lF02x單片機(jī)的定時(shí)器3的操作
5.4 MSP430xlxx單片機(jī)定時(shí)器使用舉例
5.4.1 MSP430xlxx單片機(jī)定時(shí)器A原理
5.4.2 MSP430xlxx單片機(jī)定時(shí)器A使用舉例
5.5 ATmegal6單片機(jī)定時(shí)器使用舉例
5.5.1 ATmegal6單片機(jī)定時(shí)器T/C0的組成原理
5.5.2 ATmegal6單片機(jī)定時(shí)器F/C0使用舉例
第6章 單片機(jī)的通信口操作I
6.1 UART的使用
6.1.1 UART設(shè)計(jì)原理
6.1.2 基本51單片機(jī)UART通信_(tái)
6.1.3 C805lF02x單片機(jī)UART通信
6.1.4 MSP430xlxx單片機(jī)UART通信
6.1.5 ATmegal6單片機(jī)UART通信
6.2 I2c接口的使用
6.2.1 I2C接口設(shè)計(jì)原理
6.2.2 C8051F02x系列單片機(jī)I2C通信
6.2.3 MSP430xlxx單片機(jī)I2C通信
6.2.4 ATmegal6單片機(jī)I2C通信
6.3 SPI端口的使用
6.3.1 SPI設(shè)計(jì)原理
6.3.2 SPI端口操作舉例
第7章 單片機(jī)其他資源的操作及基于單片機(jī)的系統(tǒng)舉例
7.1 單片機(jī)A/D的操作
7.1.1 A/D轉(zhuǎn)換器概述
7.1.2 ATmegal6單片機(jī)的A/D操作
7.2 單片機(jī)脈寬調(diào)制器的操作
7.3 看門狗定時(shí)器的操作
7.3.1 看門狗定時(shí)器的原理
7.3.2 C8051F02x單片機(jī)看門狗操作
7.3.3 MSP430x1xx單片機(jī)看門狗使用
7.3.4 ATmegal6單片機(jī)看門狗使用
7.4 單片機(jī)Flash的修改操作
7.4.1 修改Flash的意義
7.4.2 C8051F02x單片機(jī):Flash修改操作
7.5 基于單片機(jī)的系統(tǒng)舉例
7.5.1 3種評(píng)估實(shí)驗(yàn)板的介紹
7.5.2 基于MXP430xlxx單片機(jī)評(píng)估實(shí)驗(yàn)板的自動(dòng)打鐘器
7.5.3 基于MSP430x1xx單片機(jī)評(píng)估實(shí)驗(yàn)板的自動(dòng)溫度調(diào)節(jié)器
實(shí)例速查表
參考文獻(xiàn)
1.1單片機(jī)的定義
如今說到計(jì)算機(jī)(俗稱電腦),大家都不陌生。不知不覺中,計(jì)算機(jī)已經(jīng)深入到人類社會(huì)的方方面面,航空航天、工業(yè)控制、交通運(yùn)輸、辦公自動(dòng)化、醫(yī)學(xué)檢查、數(shù)字通信、家用電器、兒童玩具等行業(yè)無處沒有計(jì)算機(jī)的存在?梢哉f,沒有電子就沒有電子時(shí)代,沒有計(jì)算機(jī)就沒有數(shù)字時(shí)代。
那么,什么是計(jì)算機(jī)?簡(jiǎn)單地說,計(jì)算機(jī)是具有嚴(yán)格執(zhí)行人們預(yù)先設(shè)定好的程序來完成指定任務(wù)的核心控制器的一種機(jī)器。這些指定的任務(wù)幾乎可以包含我們所能想象的一切,如識(shí)別按鍵的命令、與遠(yuǎn)程設(shè)備通信、測(cè)量某種流體的壓力、識(shí)別人的指紋信息、記錄飛行器的運(yùn)行參數(shù)、顯示l幅圖像、打印1份文件、打開或關(guān)閉1個(gè)閥門、控制1個(gè)電機(jī)轉(zhuǎn)動(dòng)等等。完成這些任務(wù)所進(jìn)行的操作都是通過輸入設(shè)備或輸出設(shè)備來實(shí)現(xiàn)的,對(duì)計(jì)算機(jī)操作者來說所涉及到的就是一個(gè)個(gè)的輸入輸出設(shè)備,對(duì)輸入輸出設(shè)備來說所涉及到的是一條條的電路線端,稱為輸人端口電路或輸出端口電路,參見圖1-1所示的計(jì)算機(jī)結(jié)構(gòu)示意圖。這些端口一般表現(xiàn)為高電平或低電平的數(shù)字狀態(tài),雖然有時(shí)也表現(xiàn)為模擬狀態(tài),但這種模擬狀態(tài)也是由數(shù)字狀態(tài)來操縱的。換句話說,計(jì)算機(jī)的基本部分的外觀就是一個(gè)個(gè)的端口,這些端口線路既可以識(shí)別高/低電平也可以輸出高/低電平。從這些端口看進(jìn)去,其內(nèi)部主要由核心運(yùn)算及控制器(CPU-central Processing unit)、存儲(chǔ)器以及特殊功能電路群組成,CPU按照一定的節(jié)拍,不斷地從程序存儲(chǔ)器讀取指令,完成一個(gè)個(gè)的邏輯運(yùn)算或模擬運(yùn)算,最終以端口的形式和外界聯(lián)系。
圖l一1所示的虛線范圍就是計(jì)算機(jī)基本部分,這部分對(duì)大中型計(jì)算機(jī)來說可能由很多設(shè)備組成,對(duì)小型計(jì)算機(jī)來說可能由幾塊電路板組成,對(duì)微型計(jì)算機(jī)來說可能僅由幾個(gè)芯片組成。如果此部分由單個(gè)芯片來完成,就可以稱之為單片機(jī)了。盡管早期的單片機(jī)還要配合一些芯片才能組成基本系統(tǒng),如今這樣定義單片機(jī)還是很合適的。