出版時(shí)間:2008-10 出版社:人民郵電出版社 作者:(美)馬茲迪,(美)麥金萊,(美)考西 著,李中華 等譯 頁(yè)數(shù):700
Tag標(biāo)簽:無(wú)
前言
微控制器是一種無(wú)處不在的內(nèi)嵌型控制芯片,廣泛用于工業(yè)控制、消費(fèi)類電子產(chǎn)品、汽車、金融、軍事、能源等領(lǐng)域。在強(qiáng)大的市場(chǎng)需求和日新月異的科技進(jìn)步驅(qū)動(dòng)下,微控制器產(chǎn)品不斷推陳出新。PIC系列微控制器是全球領(lǐng)先的微控制器和模擬半導(dǎo)體供應(yīng)商——美國(guó)微芯公司推出的嵌入式微控制器,具有運(yùn)行速度快、工作電壓低、功耗低、驅(qū)動(dòng)能力強(qiáng)、體積小、價(jià)格低廉、指令簡(jiǎn)單易學(xué)易用等優(yōu)點(diǎn)。PICl8系列微控制器就是其中的杰出產(chǎn)品之一?! ”緯w學(xué)習(xí)微控制器所需的基礎(chǔ)知識(shí)、PICl8微控制器的內(nèi)部結(jié)構(gòu)、匯編指令系統(tǒng)、C語(yǔ)言編程、接口技術(shù)及其應(yīng)用實(shí)例,具有以下鮮明特點(diǎn)?! 】诒緯捎糜?jì)算機(jī)基礎(chǔ)知識(shí)——P1C18微控制器內(nèi)部結(jié)構(gòu)——匯編指令——C編 ,程——外圍接口——應(yīng)用實(shí)例的授課思路,知識(shí)體系清晰、內(nèi)容豐富,適應(yīng)當(dāng)今信息社 會(huì)對(duì)寬口徑計(jì)算機(jī)類專業(yè)學(xué)生的培養(yǎng)需求。 口每章的開(kāi)篇都簡(jiǎn)明地給出了本章的學(xué)習(xí)目標(biāo)以及主要內(nèi)容的結(jié)構(gòu)分布,在每章末尾還 給出了小結(jié),有助于讀者進(jìn)一步理解和思考所學(xué)知識(shí),形成完整的知識(shí)體系?! 】诒緯诮榻BPIcl8微控制器原理及應(yīng)用設(shè)計(jì)的同時(shí),還配以豐富的設(shè)計(jì)實(shí)例,讓讀者 能充分體會(huì)到每一個(gè)設(shè)計(jì)細(xì)節(jié),有利于快速培養(yǎng)讀者的細(xì)致分析與設(shè)計(jì)系統(tǒng)的能力?! 】趯?duì)于主要的設(shè)計(jì)實(shí)例,本書分別給出了其匯編語(yǔ)言編程和C語(yǔ)言編程,通過(guò)對(duì)比學(xué)習(xí) 兩類不同的編程思想和風(fēng)格,使得學(xué)生很容易發(fā)現(xiàn)二者的聯(lián)系、區(qū)別和優(yōu)缺點(diǎn),克服了 將匯編語(yǔ)言編程和C語(yǔ)言編程單獨(dú)講述的弊端?! 】谡潞罅?xí)題以及每節(jié)后的復(fù)習(xí)題進(jìn)一步充實(shí)了全書的內(nèi)容,有利于幫助讀者更好地理解 相關(guān)基本理論。本書配有的附錄,內(nèi)容全面詳盡,對(duì)讀者而言是一本非常難得的技術(shù) 手冊(cè)?! 『?jiǎn)而言之,本書結(jié)構(gòu)清晰、內(nèi)容豐富、通俗易懂,是一本不可多得的學(xué)習(xí)寶典?! ”緯衫钪腥A、陳卓怡主譯,李中華負(fù)責(zé)統(tǒng)稿,張雨濃負(fù)責(zé)審校。參加本書翻譯和初校T作的還有楊波、孫宇佳、張董華、伍沛然等。在此,謹(jǐn)對(duì)所有為本書的出版提供了幫助的人們表示誠(chéng)摯的謝意?! ∮捎谧g審者不平所限,加之時(shí)間倉(cāng)促,譯文中難免有不妥乃至錯(cuò)誤之處,敬請(qǐng)廣大讀者批評(píng)指正。
內(nèi)容概要
本書是關(guān)于PIC微控制器的經(jīng)典著作,內(nèi)容緊密圍繞PIC18系列微控制器原理及嵌入式系統(tǒng)應(yīng)用展開(kāi),主要介紹了PIC18系列微控制器的硬件和軟件面的基本知識(shí)和特性,著重描述其硬件結(jié)構(gòu)、軟件編程和接口技術(shù)及其嵌入式應(yīng)用等問(wèn)題。 本書適合作為高等院校相關(guān)專業(yè)課程教材,也可供從事微控制器應(yīng)用設(shè)計(jì)和嵌入式系統(tǒng)開(kāi)發(fā)的工程技術(shù)人員參考。
作者簡(jiǎn)介
Muhammad Ali Mazidi,美國(guó)DeVry大學(xué)資深教授,著名嵌入式系統(tǒng)專家,具有豐富的教學(xué)和實(shí)踐經(jīng)驗(yàn)。他編寫的80x86和8051方面的教材已被全世界眾多高校采用,都是公認(rèn)的經(jīng)典。
書籍目錄
第0章 計(jì)算入門 0.1 數(shù)制和編碼系統(tǒng) 0.1.1 十進(jìn)制和二進(jìn)制數(shù)制系統(tǒng) 0.1.2 十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù) 0.1.3 二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù) 0.1.4 十六進(jìn)制系統(tǒng) 0.1.5 二進(jìn)制和十六進(jìn)制之間的轉(zhuǎn)換 0.1.6 十進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù) 0.1.7 十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù) 0.1.8 十進(jìn)制、二進(jìn)制和十六進(jìn)制計(jì)數(shù) 0.1.9 二進(jìn)制數(shù)和十六進(jìn)制數(shù)加法 0.1.10 補(bǔ)碼 0.1.11 十六進(jìn)制數(shù)的加法和減法 0.1.12 十六進(jìn)制數(shù)的加法 0.1.13 十六進(jìn)制數(shù)的減法 0.1.14 ASCII碼 0.1.15 復(fù)習(xí)題 0.2 數(shù)字入門 0.2.1 二進(jìn)制邏輯 0.2.2 邏輯門 0.2.3 使用邏輯門設(shè)計(jì)電路 0.2.4 譯碼器 0.2.5 觸發(fā)器 0.2.6 復(fù)習(xí)題 0.3 計(jì)算機(jī)內(nèi)部 0.3.1 一些重要術(shù)語(yǔ) 0.3.2 計(jì)算機(jī)的內(nèi)部組成 0.3.3 數(shù)據(jù)總線概述 0.3.4 地址總線概述 0.3.5 CPU及其和RAM、ROM的關(guān)系 0.3.6 CPU內(nèi)部 0.3.7 計(jì)算機(jī)的內(nèi)部工作 0.3.8 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第1章 PIC微控制器的歷史和特性 1.1 微控制器與嵌入式處理器 1.1.1 微控制器和通用微處理器 1.1.2 應(yīng)用于嵌入式系統(tǒng)的微控制器 1.1.3 x86PC嵌入式應(yīng)用 1.1.4 微控制器的選擇 1.1.5 微控制器的選擇標(biāo)準(zhǔn) 1.1.6 機(jī)電學(xué)與微控制器 1.1.7 復(fù)習(xí)題 1.2 PIC18系列概述 1.2.1 PIC微控制器的發(fā)展簡(jiǎn)史 1.2.2 PIC18特性 1.2.3 其他微控制器 1.2.4 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第2章 PIC體系結(jié)構(gòu)與匯編語(yǔ)言編程 2.1 PIC的WREG寄存器 2.1.1 WREG寄存器 2.1.2 MOVLW指令 2.1.3 ADDLW指令 2.1.4 復(fù)習(xí)題 2.2 PIC文件寄存器 2.2.1 PIC文件寄存器(數(shù)據(jù)RAM)空間分配 2.2.2 PIC芯片中的GP RAM和EEPROM比較 2.2.3 PIC18的文件寄存器與訪問(wèn)存儲(chǔ)區(qū) 2.2.4 復(fù)習(xí)題 2.3 默認(rèn)訪問(wèn)存儲(chǔ)區(qū)的指令操作 2.3.1 MOVWF指令 2.3.2 關(guān)于WREG和訪問(wèn)存儲(chǔ)區(qū)的更多指令 2.3.3 COMF指令 2.3.4 DECF指令 2.3.5 MOVE指令 2.3.6 MOVFF指令 2.3.7 復(fù)習(xí)題 2.4 PIC 狀態(tài)寄存器 2.4.1 PIC18狀態(tài)寄存器 2.4.2 ADDLW指令和狀態(tài)寄存器 2.4.3 并非所有指令都會(huì)影響標(biāo)志位 2.4.4 標(biāo)志位和判決 2.4.5 復(fù)習(xí)題 2.5 PIC數(shù)據(jù)格式和偽指令 2.5.1 PIC數(shù)據(jù)類型 2.5.2 數(shù)據(jù)格式描述 2.5.3 匯編偽指令 2.5.4 使用EQU做定值分配 2.5.5 使用EQU做SFR地址分配 2.5.6 使用EQU做RAM地址分配 2.5.7 匯編語(yǔ)言的標(biāo)簽規(guī)則 2.5.8 復(fù)習(xí)題 2.6 PIC匯編語(yǔ)言編程 2.6.1 匯編語(yǔ)言結(jié)構(gòu) 2.6.2 復(fù)習(xí)題 2.7 匯編和連接PIC程序 2.7.1 關(guān)于asm、err和目標(biāo)文件的更多信息 2.7.2 列表文件和映像文件 2.7.3 復(fù)習(xí)題 2.8 PIC的程序計(jì)數(shù)器和程序ROM空間 2.8.1 PIC的程序計(jì)數(shù)器 2.8.2 PIC18系列ROM的內(nèi)存分配 2.8.3 通電時(shí)PIC的啟動(dòng) 2.8.4 在程序ROM里放置代碼 2.8.5 程序的逐字節(jié)執(zhí)行 2.8.6 PIC18 ROM數(shù)據(jù)寬度 2.8.7 PIC的哈佛結(jié)構(gòu) 2.8.8 PIC18的指令大小 2.8.9 MOVLW指令格式 2.8.10 ADDLW指令格式 2.8.11 MOVWF指令格式 2.8.12 MOVFF指令格式 2.8.13 GOTO指令格式 2.8.14 從其他微處理器過(guò)渡到PIC18 2.8.15 復(fù)習(xí)題 2.9 PIC的RISC結(jié)構(gòu) 2.9.1 RISC結(jié)構(gòu) 2.9.2 RISC的特性 2.9.3 復(fù)習(xí)題 2.10 使用MPLAB仿真器查看寄存器和存儲(chǔ)器 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第3章 分支、調(diào)用和時(shí)延循環(huán) 3.1 分支指令和循環(huán) 3.1.1 PIC的循環(huán)語(yǔ)句 3.1.2 循環(huán)嵌套 3.1.3 循環(huán)100 000次 3.1.4 其他的條件轉(zhuǎn)移指令 3.1.5 所有的條件分支指令都是短跳轉(zhuǎn) 3.1.6 短轉(zhuǎn)移地址的計(jì)算 3.1.7 無(wú)條件分支指令 3.1.8 帶有$符號(hào)的GOTO指令 3.1.9 復(fù)習(xí)題 3.2 CALL(調(diào)用)指令和?! ?.2.1 CALL指令 3.2.2 PIC18的棧和棧指針 3.2.3 如何訪問(wèn)PIC18的?! ?.2.4 壓?! ?.2.5 出棧 3.2.6 CALL指令和棧的作用 3.2.7 棧的上限 3.2.8 在主程序里調(diào)用多個(gè)子例程 3.2.9 RCALL指令(相對(duì)調(diào)用指令) 3.2.10 復(fù)習(xí)題 3.3 PIC18的時(shí)延與指令流水線 3.3.1 PIC18的時(shí)延計(jì)算 3.3.2 流水線 3.3.3 PIC的指令周期時(shí)間 3.3.4 分支代價(jià) 3.3.5 PIC18的時(shí)延計(jì)算 3.3.6 時(shí)延的嵌套循環(huán) 3.3.7 PIC多級(jí)執(zhí)行流水線 3.3.8 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第4章 PIC I/O端口編程 4.1 PIC18的I/O端口編程 4.1.1 I/O端口引腳及其功能 4.1.2 TRIS寄存器在數(shù)據(jù)輸出中的作用 4.1.3 TRIS寄存器在數(shù)據(jù)輸入中的作用 4.1.4 端口A 4.1.5 端口A用作輸入端口 4.1.6 端口B 4.1.7 端口B用作輸入端口 4.1.8 端口A和端口B的雙重功能 4.1.9 端口C 4.1.10 端口C用作輸入端口 4.1.11 端口D 4.1.12 端口D作為輸入端口 4.1.13 端口C和端口D的雙重功能 4.1.14 端口E 4.1.15 訪問(wèn)8位數(shù)據(jù)的不同方法 4.1.16 讀取后緊接的寫I/O操作 4.1.17 復(fù)位時(shí)的端口狀態(tài) 4.1.18 復(fù)習(xí)題 4.2 I/O位操作編程 4.2.1 I/O端口與位尋址 4.2.2 BSF(置位fileReg) 4.2.3 BCF(清零fileReg) 4.2.4 BTG(位翻轉(zhuǎn)fileReg) 4.2.5 檢測(cè)輸入引腳 4.2.6 BTFSS(位測(cè)試fileReg,若為1則跳過(guò)) 4.2.7 BTFSC(位測(cè)試fileReg,若為0則跳過(guò)) 4.2.8 監(jiān)測(cè)二進(jìn)制位 4.2.9 讀取二進(jìn)制位 4.2.10 讀輸入引腳與讀LATx端口 4.2.11 讀端口的LATx 4.2.12 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第5章 算術(shù)、邏輯指令和程序示例 5.1 算術(shù)指令 5.1.1 無(wú)符號(hào)數(shù)的加法 5.1.2 ADDWF和單字節(jié)的加法 5.1.3 ADDWFC和16位數(shù)的加法 5.1.4 BCD(二進(jìn)制編碼的十進(jìn)制數(shù))數(shù)字系統(tǒng) 5.1.5 非壓縮BCD數(shù) 5.1.6 壓縮BCD數(shù) 5.1.7 DAW指令 5.1.8 無(wú)符號(hào)數(shù)的減法 5.1.9 PIC減法的C標(biāo)志位 5.1.10 無(wú)符號(hào)數(shù)的乘法 5.1.11 無(wú)符號(hào)數(shù)的除法 5.1.12 除法的應(yīng)用 5.1.13 復(fù)習(xí)題 5.2 有符號(hào)數(shù)的概念及其算術(shù)運(yùn)算 5.2.1 計(jì)算機(jī)中有符號(hào)數(shù)的概念 5.2.2 有符號(hào)的8位操作數(shù) 5.2.3 正數(shù) 5.2.4 負(fù)數(shù) 5.2.5 有符號(hào)數(shù)運(yùn)算中的溢出問(wèn)題 5.2.6 何時(shí)設(shè)置OV標(biāo)志位 5.2.7 二進(jìn)制補(bǔ)碼運(yùn)算指令 5.2.8 復(fù)習(xí)題 5.3 邏輯和比較指令 5.3.1 AND指令 5.3.2 OR指令 5.3.3 EX-OR指令 5.3.4 COMF指令(將fileReg取反) 5.3.5 NEGF指令(將fileReg取補(bǔ)) 5.3.6 比較指令 5.3.7 CPFSGT指令 5.3.8 CPFSEQ指令 5.3.9 CPFSLT指令 5.3.10 復(fù)習(xí)題 5.4 移位指令和數(shù)據(jù)串行化 5.4.1 文件寄存器的左移或右移操作 5.4.2 帶進(jìn)位的移位 5.4.3 串行化數(shù)據(jù) 5.4.4 字節(jié)數(shù)據(jù)的串行化 5.4.5 SWAPF fileReg, d 5.4.6 復(fù)習(xí)題 5.5 BCD和ASCII碼轉(zhuǎn)換 5.5.1 ASCII數(shù) 5.5.2 從壓縮BCD碼到ASCII碼的轉(zhuǎn)換 5.5.3 從ASCII碼到壓縮BCD碼的轉(zhuǎn)換 5.5.4 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第6章 存儲(chǔ)區(qū)轉(zhuǎn)換、表處理、宏和模塊 6.1 立即尋址與直接尋址方式 6.1.1 立即尋址方式 6.1.2 直接尋址方式 6.1.3 指令I(lǐng)NCF fileReg,W與INCF fileReg,F(xiàn)的區(qū)別 6.1.4 DECFSZ指令和DECF指令 6.1.5 SFR及其地址 6.1.6 復(fù)習(xí)題 6.2 寄存器間接尋址方式 6.2.1 寄存器間接尋址方式 6.2.2 寄存器間接尋址方式的優(yōu)點(diǎn) 6.2.3 FSR的自動(dòng)增量 6.2.4 復(fù)習(xí)題 6.3 查詢表與表處理 6.3.1 DB偽指令和程序ROM中的定值數(shù)據(jù) 6.3.2 PIC18的讀表操作 6.3.3 TBLPTR的自動(dòng)增量 6.3.4 查表和RETLW指令 6.3.5 訪問(wèn)RAM中的查詢表 6.3.6 PIC18的寫表操作 6.3.7 復(fù)習(xí)題 6.4 數(shù)據(jù)RAM的位尋址 6.4.1 可位尋址的文件寄存器數(shù)據(jù)RAM 6.4.2 文件寄存器的位尋址 6.4.3 狀態(tài)寄存器的位尋址 6.4.4 復(fù)習(xí)題 6.5 PIC18的存儲(chǔ)區(qū)轉(zhuǎn)換 6.5.1 位A和存儲(chǔ)區(qū)轉(zhuǎn)換 6.5.2 BSR寄存器和存儲(chǔ)區(qū)轉(zhuǎn)換 6.5.3 存儲(chǔ)區(qū)轉(zhuǎn)換和指令I(lǐng)NCF F,D,A 6.5.4 MOVFF指令和存儲(chǔ)區(qū) 6.5.5 用MPLAB仿真器檢查數(shù)據(jù)RAM空間 6.5.6 復(fù)習(xí)題 6.6 校驗(yàn)和與ASCII碼子例程 6.6.1 ROM中的校驗(yàn)和 6.6.2 校驗(yàn)和程序 6.6.3 BCD到ASCII的轉(zhuǎn)換程序 6.6.4 二進(jìn)制(十六進(jìn)制)到ASCII的轉(zhuǎn)換程序 6.6.5 用存儲(chǔ)區(qū)作為?! ?.6.6 復(fù)習(xí)題 6.7 宏和模塊 6.7.1 什么是宏以及怎樣聲明宏 6.7.2 宏的定義 6.7.3 LOCAL偽指令 6.7.4 INCLUDE偽指令 6.7.5 NOEXPAND/EXPAND偽指令 6.7.6 宏與子例程 6.7.7 模塊 6.7.8 編寫模塊 6.7.9 EXTERN偽指令 6.7.10 GLOBAL偽指令 6.7.11 連接模塊 6.7.12 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第7章 PIC C語(yǔ)言編程 7.1 C語(yǔ)言中的數(shù)據(jù)類型和時(shí)延 7.1.1 PIC18的C語(yǔ)言數(shù)據(jù)類型 7.1.2 無(wú)符號(hào)字符 7.1.3 有符號(hào)字符 7.1.4 無(wú)符號(hào)整型 7.1.5 有符號(hào)整型 7.1.6 其他數(shù)據(jù)類型 7.1.7 時(shí)延 7.1.8 復(fù)習(xí)題 7.2 C語(yǔ)言I/O編程 7.2.1 字節(jié)I/O編程 7.2.2 位尋址I/O編程 7.2.3 端口位的結(jié)構(gòu) 7.2.4 復(fù)習(xí)題 7.3 邏輯操作 7.3.1 C語(yǔ)言的位操作符 7.3.2 C語(yǔ)言的按位移位操作 7.3.3 復(fù)習(xí)題 7.4 C語(yǔ)言的數(shù)據(jù)轉(zhuǎn)換程序 7.4.1 ASCII數(shù) 7.4.2 壓縮BCD碼到ASCII碼的轉(zhuǎn)換 7.4.3 ASCII碼到壓縮BCD碼的轉(zhuǎn)換 7.4.4 ROM的校驗(yàn)和 7.4.5 PIC18二進(jìn)制(十六進(jìn)制)到十進(jìn)制和ASCII的轉(zhuǎn)換 7.4.6 復(fù)習(xí)題 7.5 C語(yǔ)言的數(shù)據(jù)串行化 7.6 C18程序存儲(chǔ)區(qū)配置 7.6.1 RAM數(shù)據(jù)空間與代碼數(shù)據(jù)空間 7.6.2 為數(shù)據(jù)分配程序空間 7.6.3 用于程序的NEAR與FAR 7.6.4 Pragma和數(shù)據(jù)與程序的固定地址分配 7.6.5 在指定的ROM地址放置代碼 7.6.6 在指定的ROM地址放置代碼 7.6.7 復(fù)習(xí)題 7.7 C18的數(shù)據(jù)RAM分配 7.7.1 C18 C編譯器中RAM數(shù)據(jù)空間的用法 7.7.2 用于數(shù)據(jù)的near與far 7.7.3 在指定內(nèi)存地址存放數(shù)據(jù) 7.7.4 覆蓋存儲(chǔ)類 7.7.5 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第8章 PIC18F硬件連接與ROM程序載入 8.1 PIC18F452/458的引腳連接 8.1.1 復(fù)位后的程序計(jì)數(shù)器值 8.1.2 端口A、B、C、D和E 8.1.3 復(fù)習(xí)題 8.2 PIC18配置寄存器 8.2.1 CONFIG1H寄存器和振蕩器時(shí)鐘源 8.2.2 CONFIG2L寄存器和復(fù)位電壓 8.2.3 CONFIG2H寄存器和看門狗定時(shí)器 8.2.4 CONFIG4L寄存器和背景調(diào)試程序 8.2.5 LIST偽指令 8.2.6 設(shè)置所有的配置寄存器 8.2.7 在MPLAB C18 C編譯器中設(shè)置CONFIG寄存器 8.2.8 復(fù)習(xí)題 8.3 解釋PIC18的Intel十六進(jìn)制文件 8.3.1 分析Intel十六進(jìn)制(INHX8M)文件 8.3.2 分析Intel十六進(jìn)制文件(INHX32) 8.3.3 Intel十六進(jìn)制分段文件(INHX8S) 8.3.4 復(fù)習(xí)題 8.4 PIC18 Trainer的設(shè)計(jì)和裝載 8.4.1 基于PIC18F452/458的Trainer 8.4.2 PIC18 Trainer的連接 8.4.3 PIC18 Trainer程序下載 8.4.4 匯編語(yǔ)言和C語(yǔ)言編寫的PIC18測(cè)試程序 8.4.5 故障檢修的技巧 8.4.6 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第9章 PIC18定時(shí)器的匯編編程和C編程 9.1 定時(shí)器0和定時(shí)器1編程 9.1.1 定時(shí)器的基本寄存器 9.1.2 定時(shí)器0寄存器和編程 9.1.3 T0CON(定時(shí)器0控制)寄存器 9.1.4 TMR0IF標(biāo)志位 9.1.5 位定時(shí)器編程 9.1.6 在16位模式下定時(shí)器0的編程步驟 9.1.7 計(jì)算定時(shí)器的載入值 9.1.8 使用Windows計(jì)算器尋找TH和TL 9.1.9 預(yù)分頻器和長(zhǎng)時(shí)延的產(chǎn)生 9.1.10 定時(shí)器0的8位模式編程 9.1.11 定時(shí)器0的8位模式編程步驟 9.1.12 編譯器和負(fù)值 9.1.13 定時(shí)器1編程 9.1.14 復(fù)習(xí)題 9.2 計(jì)數(shù)器編程 9.2.1 T0CON寄存器中的T0CS位 9.2.2 使用外部晶振作為定時(shí)器1的時(shí)鐘 9.2.3 復(fù)習(xí)題 9.3 定時(shí)器0和定時(shí)器1的C編程 9.3.1 用C訪問(wèn)定時(shí)器 9.3.2 計(jì)算使用定時(shí)器的時(shí)延 9.3.3 定時(shí)器0和定時(shí)器1用作計(jì)數(shù)器的C編程 9.4 定時(shí)器2和定時(shí)器3的編程 9.4.1 定時(shí)器2的編程 9.4.2 定時(shí)器3的編程 9.4.3 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第10章 PIC18串行端口的匯編編程和C編程 10.1 串行通信基礎(chǔ) 10.1.1 半雙工和全雙工傳輸 10.1.2 異步串行通信和數(shù)據(jù)幀 10.1.3 起始位和結(jié)束位 10.1.4 數(shù)據(jù)傳輸率 10.1.5 RS232標(biāo)準(zhǔn) 10.1.6 RS232引腳 10.1.7 數(shù)據(jù)通信的分類 10.1.8 檢查RS232的握手信號(hào) 10.1.9 IBM PC/兼容 COM 端口 10.1.10 復(fù)習(xí)題 10.2 PIC18連接到RS232 10.2.1 PIC18的RX和TX引腳 10.2.2 MAX232 10.2.3 MAX233 10.2.4 復(fù)習(xí)題 10.3 PIC18串行端口的匯編語(yǔ)言編程 10.3.1 PIC18的SPBRG寄存器和波特率 10.3.2 TXREG寄存器 10.3.3 RCREG寄存器 10.3.4 TXSTA(發(fā)送狀態(tài)和控制寄存器) 10.3.5 RCSTA(接收狀態(tài)和控制寄存器) 10.3.6 PIR1(外部中斷請(qǐng)求寄存器1) 10.3.7 PIC18串行數(shù)據(jù)發(fā)送編程 10.3.8 TXIF標(biāo)志位的重要性 10.3.9 PIC18串行數(shù)據(jù)接收編程 10.3.10 RCIF標(biāo)志位的重要性 10.3.11 PIC18的波特率翻兩番 10.3.12 波特率的誤差計(jì)算 10.3.13 發(fā)送和接收 10.3.14 基于中斷的數(shù)據(jù)傳輸 10.3.15 復(fù)習(xí)題 10.4 PIC18串行端口的C編程 10.4.1 PIC18 C的數(shù)據(jù)發(fā)送和接收 10.4.2 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第11章 用匯編和C語(yǔ)言進(jìn)行中斷編程 11.1 PIC18中斷 11.1.1 中斷和查詢 11.1.2 中斷服務(wù)程序 11.1.3 中斷執(zhí)行的步驟 11.1.4 PIC18的中斷源 11.1.5 中斷的使能和禁用 11.1.6 使能中斷的步驟 11.1.7 復(fù)習(xí)題 11.2 定時(shí)器中斷編程 11.2.1 定時(shí)器復(fù)零標(biāo)志位和中斷 11.2.2 使用C18編譯器的PIC18中斷C編程 11.2.3 復(fù)習(xí)題 11.3 外部硬件中斷編程 11.3.1 外部中斷INT0、INT1和INT2 11.3.2 下降沿觸發(fā)中斷 11.3.3 邊沿觸發(fā)中斷采樣 11.3.4 復(fù)習(xí)題 11.4 串行通信中斷編程 11.4.1 RCIF和TXIF標(biāo)志位與中斷 11.4.2 使用PIC18中的串行COM 11.4.3 復(fù)習(xí)題 11.5 PORTB變化中斷 11.6 PIC18的中斷優(yōu)先級(jí) 11.6.1 設(shè)置中斷優(yōu)先級(jí) 11.6.2 低優(yōu)先級(jí)中斷的C編程 11.6.3 中斷嵌套 11.6.4 在任務(wù)轉(zhuǎn)換時(shí)變量的快速保存 11.6.5 中斷延遲 11.6.6 軟件觸發(fā)中斷 11.6.7 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第12章 LCD和鍵盤接口 12.1 LCD接口 12.1.1 LCD操作 12.1.2 LCD引腳描述 12.1.3 為L(zhǎng)CD發(fā)送帶時(shí)間延遲的命令和數(shù)據(jù) 12.1.4 使用busy標(biāo)志位向LCD發(fā)送命令或數(shù)據(jù) 12.1.5 LCD數(shù)據(jù)表 12.1.6 使用TBLRD指令向LCD發(fā)送信息 12.1.7 復(fù)習(xí)題 12.2 鍵盤接口 12.2.1 鍵盤和PIC18的接口 12.2.2 使用掃描法進(jìn)行按鍵檢測(cè) 12.2.3 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第13章 ADC、DAC和傳感器接口 13.1 ADC特性 13.1.1 ADC設(shè)備 13.1.2 復(fù)習(xí)題 13.2 PIC18的ADC編程 13.2.1 PIC18F452/458的ADC特性編程 13.2.2 ADCON0寄存器 13.2.3 ADCON1寄存器 13.2.4 計(jì)算A/D轉(zhuǎn)換時(shí)間 13.2.5 使用查詢法對(duì)A/D轉(zhuǎn)換器編程 13.2.6 PIC18F458 ADC的匯編語(yǔ)言編程 13.2.7 PIC18F458 A/D的C語(yǔ)言編程 13.2.8 使用中斷法對(duì)A/D轉(zhuǎn)換器編程 13.2.9 復(fù)習(xí)題 13.3 DAC接口 13.3.1 數(shù)模轉(zhuǎn)換器(DAC) 13.3.2 MC1408 DAC(或DAC0808) 13.3.3 把DAC0808的Iout轉(zhuǎn)換成電壓 13.3.4 產(chǎn)生正弦波 13.3.5 DAC的C語(yǔ)言編程 13.3.6 復(fù)習(xí)題 13.4 傳感器接口和信號(hào)調(diào)整 13.4.1 溫度傳感器 13.4.2 LM34和LM35溫度傳感器 13.4.3 信號(hào)調(diào)整和PIC18的LM35接口 13.4.4 溫度的讀取和顯示 13.4.5 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第14章 用閃存與EEPROM存儲(chǔ)數(shù)據(jù) 14.1 半導(dǎo)體存儲(chǔ)器 14.1.1 存儲(chǔ)容量 14.1.2 存儲(chǔ)區(qū)組織 14.1.3 速度 14.1.4 ROM 14.1.5 PROM和OTP 14.1.6 EPROM與UV-EPROM 14.1.7 EEPROM 14.1.8 閃存EPROM 14.1.9 掩模ROM 14.1.10 RAM(隨機(jī)訪問(wèn)存儲(chǔ)器) 14.1.11 SRAM 14.1.12 NV-RAM 14.1.13 DRAM 14.1.14 DRAM的封裝問(wèn)題 14.1.15 DRAM存儲(chǔ)區(qū)組織 14.1.16 復(fù)習(xí)題 14.2 PIC18F只讀閃存的擦寫 14.2.1 使用TBLWR向閃存寫入數(shù)據(jù) 14.2.2 寫閃存的步驟 14.2.3 擦除閃存的步驟 14.2.4 閃存擦寫操作的C語(yǔ)言編程 14.2.5 復(fù)習(xí)題 14.3 PIC18 EEPROM的數(shù)據(jù)讀取和寫入 14.3.1 向EEPROM寫入數(shù)據(jù) 14.3.2 寫EEPROM的步驟 14.3.3 讀EEPROM的步驟 14.3.4 使用C語(yǔ)言訪問(wèn)EEPROM 14.3.5 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第15章 CCP和ECCP編程 15.1 標(biāo)準(zhǔn)型和增強(qiáng)型CCP模塊 15.1.1 CCP和計(jì)時(shí)器 15.1.2 CCP寄存器 15.1.3 CCP引腳 15.1.4 復(fù)習(xí)題 15.2 比較模式編程 15.2.1 比較模式編程的步驟 15.2.2 復(fù)習(xí)題 15.3 捕捉模式編程 15.3.1 捕捉模式編程的步驟 15.3.2 測(cè)量脈沖周期 15.3.3 測(cè)量脈寬 15.3.4 復(fù)習(xí)題 15.4 PWM編程 15.4.1 PWM周期 15.4.2 PWM的占空比 15.4.3 PWM編程的步驟 15.4.4 占空比與Fosc 15.4.5 復(fù)習(xí)題 15.5 ECCP編程 15.5.1 ECCP比較模式的編程步驟 15.5.2 ECCP捕捉模式的編程步驟 15.5.3 ECCP的PWM特征 15.5.4 ECCP的PWM編程步驟 15.5.5 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第16章 SPI協(xié)議和DS1306RTC接口 16.1 SPI總線協(xié)議 16.1.1 SPI總線 16.1.2 SPI讀寫協(xié)議 16.1.3 將數(shù)據(jù)寫入SPI設(shè)備的步驟 16.1.4 從SPI設(shè)備讀數(shù)據(jù)的步驟 16.1.5 復(fù)習(xí)題 16.2 DS1306 RTC接口和編程 16.2.1 控制寄存器中WP位的重要性 16.2.2 DS1306的地址映射 16.2.3 時(shí)間和日期地址的位置和模式 16.2.4 使用MSSP模塊來(lái)連接PIC18和DS1306 16.2.5 使用匯編設(shè)置時(shí)間 16.2.6 使用匯編設(shè)置日期 16.2.7 RTC設(shè)置、讀取和顯示時(shí)間和日期 16.2.8 復(fù)習(xí)題 16.3 DS1306 RTC的C編程 16.3.1 使用C語(yǔ)言設(shè)置時(shí)間和日期 16.3.2 使用C語(yǔ)言讀取和顯示時(shí)間和日期 16.3.3 復(fù)習(xí)題 16.4 DS1306的警報(bào)和中斷特征 小結(jié) 習(xí)題 復(fù)習(xí)題答案 第17章 電機(jī)控制:繼電器、PWM、DC電機(jī)和步進(jìn)電機(jī) 17.1 繼電器和光隔離器 17.1.1 機(jī)電繼電器 17.1.2 繼電器驅(qū)動(dòng) 17.1.3 固態(tài)繼電器 17.1.4 簧片開(kāi)關(guān) 17.1.5 光隔離器 17.1.6 光隔離器的連接 17.1.7 復(fù)習(xí)題 17.2 步進(jìn)電機(jī)的接口 17.2.1 步進(jìn)電機(jī) 17.2.2 步進(jìn)角 17.2.3 每秒的步數(shù)和rpm的關(guān)系 17.2.4 四步順序和電機(jī)轉(zhuǎn)子的齒數(shù) 17.2.5 電機(jī)速度 17.2.6 保持轉(zhuǎn)矩 17.2.7 波驅(qū)動(dòng)四步順序 17.2.8 單極性與雙極性步進(jìn)電機(jī)的接口 17.2.9 使用晶體管作為驅(qū)動(dòng)器 17.2.10 通過(guò)光隔離器來(lái)控制步進(jìn)電機(jī) 17.2.11 用PIC18 C語(yǔ)言來(lái)控制步進(jìn)電機(jī) 17.2.12 復(fù)習(xí)題 17.3 DC電機(jī)的接口和PWM 17.3.1 DC電機(jī) 17.3.2 單方向控制 17.3.3 雙方向控制 17.3.4 脈沖寬度調(diào)制(PWM) 17.3.5 使用光隔離器控制DC電機(jī) 17.3.6 DC電機(jī)的控制和PWM的C編程 17.3.7 復(fù)習(xí)題 17.4 使用CCP來(lái)控制PWM電機(jī) 17.4.1 使用CCP來(lái)控制DC電機(jī) 17.4.2 復(fù)習(xí)題 17.5 使用ECCP來(lái)控制DC電機(jī) 17.5.1 使用ECCP來(lái)雙向控制DC電機(jī) 17.5.2 復(fù)習(xí)題 小結(jié) 習(xí)題 復(fù)習(xí)題答案 附錄A 附錄B 附錄C 附錄D 附錄E 附錄F 附錄G 附錄H 索引
章節(jié)摘錄
第0章 計(jì)算入門 0.1 數(shù)制和編碼系統(tǒng) 人類使用十進(jìn)制算術(shù),但計(jì)算機(jī)使用的是二進(jìn)制系統(tǒng)。本節(jié)將解釋十進(jìn)制系統(tǒng)和二進(jìn)制系統(tǒng)之間的相互轉(zhuǎn)換;還會(huì)介紹二進(jìn)制的一個(gè)簡(jiǎn)便的表示方法,即十六進(jìn)制;最后會(huì)探究字符代碼的二進(jìn)制格式ASCⅡ。
編輯推薦
美國(guó)Mjcrochip公司推出的PIC系列產(chǎn)品已成為目前應(yīng)用最廣泛的微控制器。 《PIC技術(shù)寶典》是著名嵌入式技術(shù)專家Mazldl白勺最新力作,以PlCl8為例系統(tǒng)全面地介紹了PIC微控制器的原理與嵌入式系統(tǒng)應(yīng)用,還提供了許多簡(jiǎn)潔實(shí)用的實(shí)例和例程,內(nèi)容涵蓋PIC的C語(yǔ)言與匯編語(yǔ)言編程和接口的各個(gè)方面,是一本不可多得的參考書、 《PIC技術(shù)寶典》還可作為高等院校教材,每節(jié)的結(jié)尾都配有習(xí)題,有利于學(xué)生鞏固本節(jié)要點(diǎn);同時(shí)在章末附有本章習(xí)題,有利于教師對(duì)學(xué)生進(jìn)行考察?! 禤IC技術(shù)寶典》原版配套網(wǎng)站http://www.microdigitaled.com/pic/pic%20Books.htm提供實(shí)驗(yàn)手冊(cè)、勘誤和程序源代碼等信息Muhammad Ail Mazidi 美國(guó)DeVry大學(xué)資深教授,著名嵌入式系統(tǒng)專家,具有豐富的教學(xué)和實(shí)踐經(jīng)驗(yàn)他編寫的80x86和8051方面的教材已被全世界眾多高校采用.都是公認(rèn)的經(jīng)典李中華博士,現(xiàn)任中山大學(xué)信息科學(xué)與技術(shù)學(xué)院講師、碩士生導(dǎo)師主持和參與國(guó)家、部省、市級(jí)課題若干.發(fā)表學(xué)術(shù)論文40余篇.其中多數(shù)為SCI/EI/lSTP/INSPEC所收錄.出版著作1部計(jì)算機(jī)軟件著作權(quán)2部、申請(qǐng)發(fā)明專利2部主要研究興趣為嵌入式系統(tǒng)及自動(dòng)化、智能系統(tǒng)與先進(jìn)控制張溺濃博士現(xiàn)任中山大學(xué)信息科學(xué)與技術(shù)學(xué)院“百人計(jì)劃”教授、博士生導(dǎo)師,2007年入選教育部新世紀(jì)優(yōu)秀人才支持計(jì)劃 在國(guó)際頂級(jí)雜志和會(huì)議上發(fā)表論文40余篇 其中l(wèi)EEE雜志論文8篇,主持國(guó)家自然科學(xué)基金2項(xiàng)主要研究領(lǐng)域?yàn)槿哂鄼C(jī)器人 遞歸神經(jīng)網(wǎng)絡(luò)、高斯過(guò)程、科學(xué)計(jì)算和軟硬件開(kāi)發(fā)。
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載