出版時(shí)間:2011-1 出版社:機(jī)械工業(yè)出版社 作者:張?jiān)迹踅ㄜ姟〉染幹?nbsp; 頁數(shù):282
Tag標(biāo)簽:無
前言
單片機(jī)愛好者、單片機(jī)應(yīng)用開發(fā)技術(shù)人員、智能儀表開發(fā)技術(shù)人員、高等院校高年級本科生及研究生,迫切希望結(jié)合具體工程實(shí)例來學(xué)習(xí)并掌握單片機(jī)原理及應(yīng)用開發(fā)技術(shù),熟悉單片機(jī)開發(fā)流程,掌握開發(fā)軟件的運(yùn)用,因此非常需要一本從單片機(jī)理論過渡到單片機(jī)實(shí)踐的實(shí)例教程。目前,單片機(jī)學(xué)習(xí)類的書籍一般分為基礎(chǔ)知識類和應(yīng)用類兩種。但是讀者普遍認(rèn)為,如果只是一味地介紹單片機(jī)基礎(chǔ)知識,會(huì)感覺枯燥、乏味,容易產(chǎn)生厭煩情緒;而如果只介紹應(yīng)用,那些對單片機(jī)基礎(chǔ)知識并不是很了解的讀者又會(huì)感到吃力,難以快速而深刻地掌握相關(guān)知識。鑒于此,本書從最簡單的實(shí)例入手,結(jié)合單片機(jī)基礎(chǔ)知識,簡單明了地講解單片機(jī)。書中既有基礎(chǔ)知識,又有各種實(shí)用且精巧的實(shí)例,從基本到復(fù)雜,適合各種層次的讀者。剛開始接觸單片機(jī)的讀者可以從本書中學(xué)習(xí)到單片機(jī)最基本的應(yīng)用和知識,并對單片機(jī)產(chǎn)生興趣,進(jìn)而去系統(tǒng)地學(xué)習(xí)。而需要用單片機(jī)來做項(xiàng)目的讀者,也可以從本書一些較復(fù)雜的實(shí)例中找到相關(guān)的資料,達(dá)到事半功倍的效果。特別是剛學(xué)完單片機(jī)原理課程的讀者,迫切需要了解如何把理論知識應(yīng)用到實(shí)踐,如何設(shè)計(jì)單片機(jī)最小系統(tǒng)、如何畫電路圖、如何設(shè)計(jì)一個(gè)完整的應(yīng)用程序、如何調(diào)試程序。為此,本書從最簡單的實(shí)例開始,手把手地教讀者運(yùn)用Protel 99SE電路圖設(shè)計(jì)軟件設(shè)計(jì)電路原理圖;運(yùn)用常用的wave和Keil單片機(jī)系統(tǒng)開發(fā)工具,引導(dǎo)讀者逐步學(xué)會(huì)編制單片機(jī)應(yīng)用程序;讀者可以邊學(xué)習(xí),邊實(shí)踐,盡快具備工程開發(fā)的能力。讀者如果要做實(shí)驗(yàn),本書還介紹了如何用IsP下載軟件把設(shè)計(jì)好的程序下載到單片機(jī)中,而不必購買編程器。對于那些暫時(shí)沒有能力購買仿真設(shè)備和電子元器件的讀者,可以用Proteus單片機(jī)仿真軟件對設(shè)計(jì)好的程序和電路原理圖進(jìn)行綜合仿真調(diào)試。為了使讀者能夠輕松、形象而深刻地學(xué)習(xí)單片機(jī)的原理及應(yīng)用開發(fā)技術(shù),本書以實(shí)例為載體,實(shí)例與原理結(jié)合,硬件和軟件結(jié)合,循序漸進(jìn),闡述了單片機(jī)應(yīng)用開發(fā)技術(shù)。本書分2l章:第1章簡單介紹單片機(jī)及其應(yīng)用系統(tǒng)組成原理和開發(fā)流程,使讀者有一個(gè)整體認(rèn)識;第2—7章從最簡單的實(shí)例寫起,例如,如何驅(qū)動(dòng)一個(gè)LED實(shí)現(xiàn)閃爍,進(jìn)而用幾個(gè)側(cè)重點(diǎn)不同的簡單實(shí)例,將單片機(jī)自身各類資源的結(jié)構(gòu)、工作原理和使用方法做詳細(xì)闡述,使讀者對單片機(jī)原理有更深刻的認(rèn)識,同時(shí)學(xué)會(huì)使用Wave、Keil、Proteus及Protel 99SE等開發(fā)軟件;第8~21章用一系列較復(fù)雜的不同工程實(shí)例,描述單片機(jī)外圍電路和接口的設(shè)計(jì)方法、擴(kuò)展方法、單片機(jī)應(yīng)用開發(fā)中的各類知識、實(shí)際問題的分析解決方法,從而使讀者融會(huì)貫通,逐漸將單片機(jī)應(yīng)用開發(fā)知識系統(tǒng)化,具備系統(tǒng)工程的概念,樹立單片機(jī)應(yīng)用系統(tǒng)開發(fā)整體概念。
內(nèi)容概要
本書首先介紹了單片機(jī)的組成原理及開發(fā)流程,其次通過若干側(cè)重點(diǎn)不同的實(shí)例,全面系統(tǒng)地闡述了單片機(jī)的原理、資源和設(shè)計(jì)使用方法,講解單片機(jī)開發(fā)工具、編程環(huán)境的使用方法以及基本的調(diào)試方法和技巧,達(dá)到學(xué)習(xí)單片機(jī)并掌握其基本開發(fā)方法和流程的目的。之后借助一系列不同的工程實(shí)例,論述了單片機(jī)應(yīng)用開發(fā)中常用外圍接口電路的擴(kuò)展設(shè)計(jì)方法、各類元器件的選擇應(yīng)用、傳感器應(yīng)用開發(fā)、輸入和輸出接口設(shè)計(jì)、通信接口設(shè)計(jì)、嵌入式軟件開發(fā)技術(shù)、仿真調(diào)試技術(shù)等。本書還附有包含全部源程序的光盤,便于讀者學(xué)習(xí)使用。 本書可作為單片機(jī)愛好者、單片機(jī)應(yīng)用開發(fā)技術(shù)人員、智能儀表開發(fā)技術(shù)人員、高等院校高年級本科生及研究生的自學(xué)用書和設(shè)計(jì)參考用書。
書籍目錄
前言第1章 MCS-51系列單片機(jī)及其應(yīng)用系統(tǒng)組成 1.1 單片機(jī)概述 1.2 MCS-51系列單片機(jī)組成結(jié)構(gòu) 1.2.1 MCS-51系列單片機(jī)的引腳 1.2.2 MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu) 1.3 MCS-51系列單片機(jī)存儲(chǔ)器配置 1.3.1 程序存儲(chǔ)器 1.3.2 數(shù)據(jù)存儲(chǔ)器 1.4 CPU時(shí)序及時(shí)鐘電路 1.4.1 時(shí)鐘信號的產(chǎn)生 1.4.2 時(shí)序的定時(shí)單位 1.4.3 典型時(shí)序分析 1.5 復(fù)位及復(fù)位電路 1.5.1 復(fù)位的概念 1.5.2 復(fù)位信號及復(fù)位電路 1.6 節(jié)電工作方式 1.7 單片機(jī)應(yīng)用系統(tǒng)的組成原理 1.7.1 單片機(jī)應(yīng)用系統(tǒng)的硬件組成 1.7.2 單片機(jī)應(yīng)用系統(tǒng)的軟件組成 1.8 單片機(jī)應(yīng)用系統(tǒng)研制開發(fā)流程 1.8.1 制定總體方案 1.8.2 工程設(shè)計(jì)與實(shí)現(xiàn) 1.8.3 系統(tǒng)的調(diào)試第2章 實(shí)例1:閃亮LED 2.1 閃亮LED硬件設(shè)計(jì) 2.1.1 MCS-51系列單片機(jī)I/O端口結(jié)構(gòu) 2.1.2 硬件接口設(shè)計(jì) 2.2 Protel 99SE軟件 2.2.1 Protel 99SE軟件的安裝 2.2.2 Protel 99SE軟件的使用 2.3 閃亮LED軟件設(shè)計(jì) 2.3.1 閃亮LED的匯編語言程序 2.3.2 閃亮LED的C語言程序 2.4 Wave開發(fā)工具 2.4.1 Wave開發(fā)環(huán)境的安裝 2.4.2 Wave開發(fā)環(huán)境的使用 2.5 Keil開發(fā)工具簡介 2.6 ISP技術(shù)簡介 2.7 Proteus單片機(jī)仿真軟件簡介第3章 實(shí)例2:鍵控LED 3.1 MCS-51系列單片機(jī)中斷系統(tǒng)結(jié)構(gòu) 3.1.1 I/0口輸入輸出方式 3.1.2 中斷結(jié)構(gòu)及控制 3.1.3 中斷處理過程 3.2 鍵控LED硬件設(shè)計(jì) 3.3 鍵控LED軟件設(shè)計(jì)第4章 實(shí)例3:定時(shí)/計(jì)數(shù)器與LED 4.1 定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)及工作原理 4.1.1 定時(shí)/計(jì)數(shù)器的主要特性 4.1.2 定時(shí)/計(jì)數(shù)器的內(nèi)部結(jié)構(gòu) 4.2 定時(shí)/計(jì)數(shù)器的控制寄存器 4.2.1 定時(shí)/計(jì)數(shù)器的方式寄存器TMOD 4.2.2 定時(shí)/計(jì)數(shù)器的控制寄存器TCON 4.3 定時(shí)/計(jì)數(shù)器的工作方式 4.4 程序設(shè)計(jì) 4.4.1 定時(shí)/計(jì)數(shù)器的編程思路 4.4.2 采用中斷處理方式的程序 4.4.3 采用查詢處理方式的程序第5章 實(shí)例4:數(shù)碼管循環(huán)顯示 5.1 數(shù)碼管工作原理及常用驅(qū)動(dòng)方式 5.1.1 數(shù)碼管工作原理 5.1.2 常用驅(qū)動(dòng)方式 5.2 數(shù)碼管循環(huán)顯示硬件設(shè)計(jì) 5.3 數(shù)碼管循環(huán)顯示軟件設(shè)計(jì)第6章 實(shí)例5:多位數(shù)碼管顯示 6.1 串行通信基本知識 6.2 MCS-51系列單片機(jī)的串行口介紹 6.2.1 串行口的功能與結(jié)構(gòu) 6.2.2 串行口的控制寄存器 6.2.3 串行口的工作方式 6.3 波特率的選擇 6.4 多位數(shù)碼管顯示(串行口方式)設(shè)計(jì) 6.4.1 硬件設(shè)計(jì) 6.4.2 軟件設(shè)計(jì) 6.5 多位數(shù)碼管顯示(普通I/O模擬串行方式)設(shè)計(jì) 6.5.1 硬件設(shè)計(jì) 6.5.2 軟件設(shè)計(jì)第7章 實(shí)例6:PC控制多位數(shù)碼管顯示 7.1 硬件設(shè)計(jì) 7.1.1 RS-232通信簡介 7.1.2 總體電路設(shè)計(jì) 7.2 單片機(jī)軟件設(shè)計(jì) 7.3 利用MSComm控件實(shí)現(xiàn)PC串行通信 7.3.1 MSComm控件介紹 7.3.2 VB軟件實(shí)現(xiàn)第8章 實(shí)例7:數(shù)字溫度計(jì) 8.1 設(shè)計(jì)要求 8.2 硬件設(shè)計(jì) 8.2.1 DS18820溫度芯片 8.2.2 一線式總線的概念 8.2.3 總體電路 8.3 軟件設(shè)計(jì) 8.3.1 主函數(shù)軟件流程圖 8.3.2 C語言程序代碼第9章 實(shí)例8:數(shù)字電子鐘 9.1 設(shè)計(jì)要求 9.2 硬件設(shè)計(jì) 9.2.1 時(shí)鐘芯片簡介 9.2.2 DS1302實(shí)時(shí)時(shí)鐘芯片的性能特點(diǎn) 9.2.3 DS1302的結(jié)構(gòu)及工作原理 9.2.4 DS1302與單片機(jī)的連接 9.2.5 總體電路 9.3 軟件設(shè)計(jì) 9.3.1 主函數(shù)軟件流程圖 9.3.2 C語言程序代碼第10章 實(shí)例9:仰臥起坐計(jì)數(shù)器 10.1 設(shè)計(jì)要求 10.2 硬件設(shè)計(jì) 10.2.1 紅外傳感器的應(yīng)用 10.2.2 蜂鳴器的應(yīng)用 10.2.3 總體電路設(shè)計(jì) 10.3 軟件設(shè)計(jì) 10.3.1 程序流程圖 10.3.2 C語言程序代碼第11章 實(shí)例10:流水線零件計(jì)數(shù)器 11.1 設(shè)計(jì)要求 11.2 硬件設(shè)計(jì) 11.2.1 RS-485通信簡介 11.2.2 光電傳感器的應(yīng)用 11.2.3 總體電路設(shè)計(jì) 11.3 軟件設(shè)計(jì) 11.3.1 程序流程圖 11.3.2 C語言程序代碼 11.3.3 上位機(jī)VB程序的實(shí)現(xiàn)第12章 實(shí)例11:可調(diào)基準(zhǔn)信號源 12.1 硬件設(shè)計(jì) 12.1.1 D/A轉(zhuǎn)換器 12.1.2 TLC5615D/A轉(zhuǎn)換器接口設(shè)計(jì) 12.1.3 LM358運(yùn)算放大器 12.1.4 LCDl602液晶顯示器 12.1.5 硬件電路原理圖 12.2 軟件設(shè)計(jì) 12.2.1 軟件總體設(shè)計(jì)方案 12.2.2 單片機(jī)驅(qū)動(dòng)TLC5615程序設(shè)計(jì) 12.2.3 LCDl602驅(qū)動(dòng)程序設(shè)計(jì) 12.2.4 完整系統(tǒng)程序代碼第13章 實(shí)例12:函數(shù)發(fā)生器 13.1 硬件設(shè)計(jì) 13.1.1 硬件總體方案設(shè)計(jì) 13.1.2 4×4矩陣鍵盤中斷方式下與單片機(jī)接口電路設(shè)計(jì) 13.1.3 MAX517與單片機(jī)的I2C總線數(shù)據(jù)通信接口設(shè)計(jì) 13.1.4 JCMl2864M液晶顯示模塊與單片機(jī)硬件接口設(shè)計(jì) 13.1.5 單片機(jī)電路 13.2 軟件設(shè)計(jì) 13.2.1 軟件總體方案設(shè)計(jì) 13.2.2 4×4矩陣鍵盤中斷方式下的軟件設(shè)計(jì) 13.2.3 MAX517與單片機(jī)的I2C總線數(shù)據(jù)通信軟件設(shè)計(jì) 13.2.4 JCMl2864M與單片機(jī)串行通信軟件設(shè)計(jì) 13.2.5 總體軟件控制模塊 13.2.6 完整系統(tǒng)程序代碼第14章 實(shí)例13:電子背力計(jì) 14.1 設(shè)計(jì)目標(biāo) 14.2 硬件設(shè)計(jì) 14.2.1 拉力傳感器介紹 14.2.2 AD623高精度儀表放大器 14.2.3 TLC2543 12位A/D轉(zhuǎn)換器接口設(shè)計(jì) 14.2.4 Protel電路原理圖設(shè)計(jì) 14.3 軟件設(shè)計(jì) 14.3.1 單片機(jī)驅(qū)動(dòng)TLC2543程序設(shè)計(jì) 14.3.2 系統(tǒng)程序代碼第15章 實(shí)例14:射頻無線溫度遙控器 15.1 設(shè)計(jì)目標(biāo) 15.2 硬件設(shè)計(jì) 15.2.1 射頻無線通信簡介 15.2.2 PT2262/2272編/解碼芯片 15.2.3 無線收發(fā)模塊、EEPROM與顯示器 15.2.4 電路原理圖 15.3 軟件設(shè)計(jì) 15.3.1 軟件流程圖 15.3.2 發(fā)送程序代碼 15.3.3 接收程序代碼第16章 實(shí)例15:小型直流電動(dòng)機(jī)驅(qū)動(dòng) 16.1 硬件設(shè)計(jì) 16.1.1 L298N雙H橋電動(dòng)機(jī)驅(qū)動(dòng)芯片 16.1.2 L298N與單片機(jī)接口設(shè)計(jì) 16.1.3 電路原理圖設(shè)計(jì) 16.2 軟件設(shè)計(jì) 16.2.1 單片機(jī)產(chǎn)生脈寬調(diào)制信號 16.2.2 完整系統(tǒng)程序代碼第17章 實(shí)例16:步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng) 17.1 硬件設(shè)計(jì) 17.1.1 步進(jìn)電動(dòng)機(jī) 17.1.2 TA8435步進(jìn)電動(dòng)機(jī)專用驅(qū)動(dòng)芯片 17.1.3 TA8435細(xì)分驅(qū)動(dòng)原理 17.1.4 電路原理圖設(shè)計(jì) 17.2 軟件設(shè)計(jì) 17.2.1 程序流程圖 17.2.2 完整系統(tǒng)程序代碼第18章 實(shí)例17:紅外遙控風(fēng)扇 18.1 設(shè)計(jì)要求 18.2 硬件設(shè)計(jì) 18.2.1 紅外通信簡介 18.2.2 TC9012紅外發(fā)射芯片 18.2.3 HS0038紅外接收頭 18.2.4 電路原理圖 18.3 軟件設(shè)計(jì) 18.3.1 軟件流程圖 18.3.2 源程序代碼第19章 實(shí)例18:電動(dòng)機(jī)轉(zhuǎn)速測量 19.1 設(shè)計(jì)要求 19.2 硬件設(shè)計(jì) 19.2.1 光電編碼器的原理及選型 19.2.2 光耦合器的原理及選型 19.2.3 字符型LCD選型 19.2.4 設(shè)計(jì)思想 19.2.5 電路原理圖 19.3 軟件設(shè)計(jì) 19.3.1 軟件流程圖 19.3.2 程序代碼第20章 實(shí)例19:電動(dòng)機(jī)電流電壓檢測 20.1 硬件設(shè)計(jì) 20.1.1 總體方案 20.1.2 電流互感器的原理與使用方法 20.1.3 邑壓互感器的原理與使用方法 20.1.4 電路原理圖 20.2 軟件設(shè)計(jì) 20.2.1 軟件流程圖 20.2.2 源程序代碼第21章 實(shí)例20:電動(dòng)機(jī)參數(shù)打印記錄儀 21.1 硬件設(shè)計(jì) 21.1.1 總體方案 21.1.2 X5045存儲(chǔ)器介紹 21.1.3 微型打印機(jī)的工作原理 21.1.4 電路原理圖 21.2 軟件設(shè)計(jì) 21.2.1 軟件流程圖 21.2.2 源程序代碼附錄 附錄A MCS-51單片機(jī)匯編指令表 附錄B ASCII碼字符表(常規(guī)字符集) 參考文獻(xiàn)
章節(jié)摘錄
插圖:2)總線的選擇。包括內(nèi)部總線、外部總線和系統(tǒng)級總線等。良好的總線方式可以簡化硬件設(shè)計(jì)、提高可擴(kuò)展性和可更新性。3)輸入/輸出通道。包括模擬量輸入通道、開關(guān)量(數(shù)字量)輸入通道、模擬量輸出通道、開關(guān)量(數(shù)字量)輸出通道等。輸入/輸出通道是單片機(jī)和外部元器件的接口通道,也是產(chǎn)品和外界的接口通道。其選用和設(shè)計(jì)方法必須考慮各種性能指標(biāo)和因素,如分辨率、采樣速率、量程、可靠性、輸入/輸出通道數(shù)、串行操作還是并行操作等,使其滿足實(shí)際需要。4)由于單片機(jī)是通過各種接口與鍵盤、顯示器、打印機(jī)等部件相連接的,并通過輸入/輸出通道,經(jīng)測量元件和執(zhí)行器直接連至被測和被控對象,因此人機(jī)交互接口電路和輸入/輸出通道的設(shè)計(jì)是研制的重要環(huán)節(jié),力求可靠實(shí)用。5)變送器和執(zhí)行機(jī)構(gòu)。變送器用來實(shí)現(xiàn)對被測量的數(shù)據(jù)采集(如壓力、溫度、流量、液位等),其輸出接口有電壓型、電流型、數(shù)字型、總線型等方式。執(zhí)行機(jī)構(gòu)用于接收單片機(jī)的控制信息,控制動(dòng)作執(zhí)行,如電磁閥、加熱器、電動(dòng)機(jī)等。要根據(jù)實(shí)際情況和被控制對象的特性選取合適的器件。(2)軟件工程設(shè)計(jì)與實(shí)現(xiàn)通常,應(yīng)用系統(tǒng)軟件需要自行開發(fā)。開發(fā)過程中,應(yīng)該先繪制程序總體流程圖和各個(gè)功能模塊的流程圖,選擇合適的編程語言,編寫各個(gè)模塊的軟件程序,然后將各個(gè)功能模塊組合成一個(gè)整體,完成預(yù)期功能。1)數(shù)據(jù)接口和數(shù)據(jù)結(jié)構(gòu)。因?yàn)楦鱾€(gè)功能模塊之間有一定的聯(lián)系,相互之間要進(jìn)行參數(shù)信息傳遞,為了避免接口混亂,程序調(diào)用錯(cuò)誤,必須明確各個(gè)功能模塊之間的數(shù)據(jù)接口以及數(shù)據(jù)結(jié)構(gòu)。2)資源分配。軟件程序都要占用一定的硬件資源,如程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、定時(shí)器、通信接口、I/O接口、中斷源等,必須做好詳細(xì)的分配,避免資源浪費(fèi)和資源緊張的現(xiàn)象出現(xiàn)。3)控制軟件設(shè)計(jì)。這部分內(nèi)容包括數(shù)據(jù)采集和數(shù)據(jù)處理程序、控制算法程序、控制輸出程序、實(shí)時(shí)時(shí)鐘程序、中斷處理程序、數(shù)據(jù)管理程序、數(shù)據(jù)通信程序等諸多內(nèi)容,直接影響著系統(tǒng)軟件代碼的質(zhì)量和最終軟件的性能。4)編程語言的選擇。編寫程序可用機(jī)器語言、匯編語言或各種高級語言。究竟采用何種語言則由程序長度、系統(tǒng)的實(shí)時(shí)性要求及所具備的研制工具而定。對于規(guī)模不大的應(yīng)用軟件,大多采用匯編語言來編寫,可減少存儲(chǔ)容量,降低器件成本,節(jié)省機(jī)器時(shí)間。研制較復(fù)雜的軟件且運(yùn)算任務(wù)較重時(shí),可考慮使用高級語言來編程。采用C語言編寫源程序,編程方便,軟件可讀性強(qiáng),易于修改和擴(kuò)充。該軟件功能強(qiáng),編譯效率高,有助于開發(fā)規(guī)模大、性能更完善的應(yīng)用軟件。編完程序,經(jīng)匯編或編譯生成目標(biāo)碼。
編輯推薦
《單片機(jī)開發(fā)技術(shù)實(shí)例教程》由機(jī)械工業(yè)出版社出版。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
單片機(jī)開發(fā)技術(shù)實(shí)例教程 PDF格式下載