 |
-- 會員 / 註冊 --
|
|
|
|
PIC單片機實用教程——基礎篇(第2版) ( 簡體 字) |
作者:李學海 | 類別:1. -> 電腦組織與體系結構 -> 單晶片 -> PIC |
譯者: |
出版社:北京航空航天大學出版社 | 3dWoo書號: 6190 詢問書籍請說出此書號!【缺書】 【不接受訂購】 |
出版日:2/1/2007 |
頁數:370 |
光碟數:0 |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
【不接受訂購】 | ISBN:9787810779296 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:本書以介紹PIC16F87X型號單片機為主,并適當兼顧PIC全系列,共分9章,內容包括:基本概念、PIC16F877硬件概況、指令系統、匯編程序設計、集成開發環境、在線調試工具、定時器、中斷邏輯以及應用系統性能優化。突出特點:通俗易懂、可讀性強、系統全面、學練結合、學用并重、實例豐富、習題齊全、教者輕松、學者有趣。 本書是作者在“2000年微芯技術精英年會”上應Microchip(微芯)公司和北京航空航天大學出版社之邀,為該公司在我國開展的“大學計劃”撰寫的教學用書、培訓教材和自學讀本。同時,它也廣泛地適用于初步具備電子技術和計算機基礎知識的電子、電信、計算機、電氣、電力、電器、機電等涉電專業的在校學生、教師、單片機愛好者、電子愛好者、電子產品開發者、電器維修人員、工程技術人員閱讀。 全套教程共分2篇,即基礎篇和提高篇,分2冊出版,以適應不同課時和不同專業的需要,也為讀者增加了一種可選方案。
|
目錄:第1章 基本概念和背景知識 1.1 鳥瞰單片機1 1.1.1 學用單片機的必要性1 1.1.2 單片機為什么令人入迷3 1.1.3 學用單片機的現實意義5 1.2 審視單片機8 1.2.1 單片機究竟是什么8 1.2.2 單片機的用途10 1.2.3 單片機的特點11 1.2.4 8位單片機的突出地位12 1.3 鎖定PIC系列8位單片機13 1.3.1 Microchip公司簡介13 1.3.2 PIC系列單片機的優越之處14 1.3.3 PIC單片機的龐大陣容18 1.3.4 PIC16F87X的主要功能特點22 1.3.5 為什么選PIC16F877作樣板23 1.4 寫作思路和目標25 1.5 常用的專業名詞和技術術語27 1.5.1 硬件方面27 1.5.2 軟件方面30 思考題與練習題32 第2章 PIC16F877硬件系統概況 2.1 PIC16F877內部結構概覽33 2.1.1 PIC16F877的核心區域35 2.1.2 PIC16F877的外圍模塊區域38 2.1.3 PIC16F87X系列型號性能對比39 2.2 PIC16F87X封裝形式和引腳功能40 2.3 程序存儲器和堆棧45 2.4 RAM數據存儲器(文件寄存器)47 2.4.1 通用寄存器52 2.4.2 特殊功能寄存器53 2.5 電源、復位和時鐘電路簡介55 2.5.1 電源外接電路55 2.5.2 復位外接電路55 2.5.3 時鐘外接電路56 2.6 輸入/輸出端口的基本功能56 2.6.1 輸入/輸出端口相關的兩個寄存器57 2.6.2 輸入/輸出端口的基本結構58 2.6.3 基本輸入/輸出端口的工作原理60 思考題與練習題62 第3章 指令系統分類解析 3.1 指令系統概覽64 3.1.1 指令的描述方法64 3.1.2 指令的時空屬性65 3.1.3 指令的執行時序66 3.1.4 指令的編碼格式66 3.2 指令的分類方法67 3.2.1 按實現功能分類67 3.2.2 按編碼格式分類69 3.2.3 按指令周期分類69 3.2.4 按尋址方式分類70 3.2.5 按攜帶操作數分類70 3.2.6 按影響標志分類70 3.2.7 按操作對象分類70 3.2.8 按使用頻度分類71 3.3 尋址方式71 3.3.1 立即尋址72 3.3.2 直接尋址72 3.3.3 間接尋址73 3.3.4 位尋址73 3.3.5 隱含尋址74 3.4 指令系統分類解析74 3.4.1 面向字節數據的操作類指令74 3.4.2 面向位數據的操作類指令77 3.4.3 面向常數操作和控制操作類指令78 3.5 數據傳遞關系79 3.6 指令系統的內在規律80 3.7 “內核—寄存器—外圍模塊”相互關系81 思考題與練習題82 第4章 匯編程序設計基礎和匯編語言工具鏈 4.1 概述84 4.1.1 背景知識84 4.1.2 匯編語言的語句格式86 4.1.3 程序流程和整體結構90 4.1.4 源程序文件的書寫格式90 4.2 常用偽指令93 4.3 四種基本程序結構95 4.3.1 順序程序結構95 【實驗范例4.1】 字節拆分95 4.3.2 分支程序結構96 【實驗范例4.2】 數值比較96 4.3.3 循環程序結構97 【實例范例4.3】 空間填充98 4.3.4 子程序結構99 【實驗范例4.4】 極值挑選100 4.4 兩個PIC編程的特殊問題101 4.4.1 數據存儲器的體選尋址問題101 【實驗范例4.5】 RAM體選尋址104 4.4.2 程序跨頁跳轉和跨頁調用問題104 【實驗范例4.6】 ROM跨頁跳轉106 4.5 四種個性化實用程序的設計方法107 4.5.1 初始化程序段設計107 4.5.2 延時程序設計108 【實驗范例4.7】 軟件延時109 4.5.3 查表程序設計110 【實驗范例4.8】 LED數碼管驅動112 4.5.4 散轉程序設計114 【實驗范例4.9】 散轉程序114 4.6 匯編器MPASM及其應用115 4.6.1 匯編器MPASM簡介116 4.6.2 匯編器MPASM應用118 【實驗范例4.10】 8位二進制計數器119 4.6.3 匯編器“界面—命令行—LIST”選項對應關系123 4.7 匯編語言工具鏈124 4.7.1 工具鏈的構成和啟動順序124 4.7.2 工具鏈的處理流程126 4.8 輸入文件的解讀128 4.8.1 解讀包含文件(P16f877.inc)128 4.8.2 解讀源程序模板文件(f877temp.asm)129 4.9 輸出文件的解讀131 4.9.1 解讀列表文件(.lst)131 4.9.2 解讀最終目標文件(.hex)133 4.9.3 解讀錯誤報告文件(.err)134 思考題與練習題134 第5章 軟件集成開發環境MPLAB和軟件模擬開發技術 5.1 MPLAB的組成137 5.2 如何獲取MPLAB138 5.3 如何安裝與拆除MPLAB140 5.3.1 MPLAB的安裝要求140 5.3.2 MPLAB的安裝方法140 5.3.3 MPLAB的拆除方法142 5.4 如何啟動和退出MPLAB142 5.4.1 MPLAB的快速上手142 5.4.2 MPLAB工作環境簡介143 5.4.3 如何開啟工作窗口145 5.4.4 如何布局工作窗口146 5.4.5 MPLAB的退出148 5.5 如何設置開發模式148 5.6 如何創建、保存和打開源文件149 【實驗范例5.1】 循環遞減實驗程序150 5.6.1 利用記事本創建源文件150 5.6.2 利用MPLAB編輯器創建源文件151 5.6.3 利用MPLAB編輯器查看、打開和關閉源文件153 5.7 如何在MPLAB環境下創建和編輯第一個項目154 5.8 如何在MPLAB環境下制作和保存目標文件156 5.9 如何在MPLAB環境下關閉、打開和查看項目158 5.9.1 關閉一個項目158 5.9.2 打開一個項目158 5.9.3 查看一個項目159 5.10 如何調試目標程序160 5.10.1 連續運行方式160 5.10.2 設置觀察窗口161 5.10.3 單步運行方式164 5.10.4 自動單步運行方式164 5.10.5 設置斷點運行方式164 思考題與練習題165 第6章 硬件綜合開發工具MPLAB-ICD和硬件仿真開發技術 6.1 硬件工具鏈及其重要性166 6.1.1 實時在線仿真器167 6.1.2 程序燒寫器167 6.1.3 單片機目標板168 6.1.4 單片機綜合學習實驗應用開發工具套件169 6.2 MPLAB-ICD的特點和局限170 6.2.1 MPLAB-ICD的功能特點170 6.2.2 MPLAB-ICD的局限性171 6.3 MPLAB-ICD工具套件的構成172 6.3.1 MPLAB-ICD模塊173 6.3.2 MPLAB-ICD仿真頭173 6.3.3 MPLAB-ICD演示板173 6.3.4 六芯電纜174 6.3.5 連接插針175 6.3.6 MPLAB集成開發環境軟件包175 6.3.7 直流電源適配器175 6.4 MPLAB-ICD的安裝175 6.4.1 硬件安裝方法之一176 6.4.2 硬件安裝方法之二177 6.4.3 軟件安裝177 6.5 MPLAB-ICD的啟用178 6.5.1 建立MPLAB-ICD與微機的通信178 6.5.2 MPLAB-ICD的設置179 6.6 用MPLAB-ICD統調用戶程序和用戶電路185 6.6.1 單片機應用項目開發流程185 6.6.2 項目原型機開發示范187 【實驗范例6.1】 8珠式霹靂燈控制器188 【實驗范例6.2】 單鍵觸發8位二進制累加計數器191 6.7 MPLAB-ICD用作下載編程器197 6.7.1 空白檢查(查空)198 6.7.2 內容讀回(上傳)198 6.7.3 導出HEX文件199 6.7.4 導入HEX文件199 6.7.5 燒寫編程200 6.7.6 讀取核對200 6.7.7 芯片擦除201 思考題與練習題201 第7章 定時器/計數器TMR0 7.1 定時器/計數器模塊的基本用途203 7.2 PIC單片機定時器/計數器TMR0的特性204 7.3 與TMR0模塊相關的寄存器205 7.4 TMR0模塊的電路結構和工作原理207 7.4.1 分頻器209 7.4.2 累加計數寄存器210 7.5 TMR0模塊的應用舉例211 7.5.1 TMR0用作硬件定時器211 【實驗范例7.1】 隊列燈211 7.5.2 TMR0多次被引用215 【實驗范例7.2】 單鍵循環切換方波信號發生器215 7.5.3 TMR0用作硬件計數器220 【實驗范例7.3】 簡易車輛里程表220 思考題與練習題227 第8章 中斷概念和中斷邏輯 8.1 中斷的基本概念228 8.2 PIC16F87X的中斷源230 8.3 PIC16F87X中斷的硬件邏輯231 8.4 與中斷相關的寄存器234 8.5 中斷的處理240 8.5.1 中斷的延時響應和延時處理問題240 8.5.2 中斷的現場保護問題242 8.5.3 需要注意的問題245 8.6 中斷功能的應用舉例247 8.6.1 TMR0溢出中斷247 【實驗范例8.1】 閃爍式跑馬燈247 8.6.2 INT外部中斷255 【實驗范例8.2】 帶電源故障報警和備用電池的流水式燈箱控制器255 8.6.3 端口RB電平變化中斷262 【實驗范例8.3】 簡易四路搶答器268 8.7 外部中斷的擴充方法280 8.7.1 用TMR0外部時鐘源擴展法280 8.7.2 用RB端口擴展法281 思考題與練習題283 第9章 應用系統性能的優化設計 9.1 系統配置字以及特殊存儲器單元284 9.1.1 系統配置字286 9.1.2 用戶識別碼ID288 9.1.3 器件識別碼290 9.2 時鐘系統290 9.2.1 外接晶體振蕩器/陶瓷諧振器(LP/XT/HS)291 9.2.2 外接阻容器件(RC)292 9.2.3 引入外來時鐘源(LP/XT/HS)293 9.3 復位系統293 9.3.1 幾種不同的復位方式294 9.3.2 單片機內部的復位操作處理294 9.3.3 復位系統硬件邏輯298 9.3.4 內部上電延時復位(POR)功能301 9.3.5 外部上電延時復位電路303 9.3.6 外部人工復位開關電路305 9.3.7 內部掉電鎖定復位(BOR)功能306 9.4 監視定時器WDT308 9.4.1 程序失控的回復309 9.4.2 WDT的電路結構311 9.4.3 WDT的工作原理312 9.4.4 WDT相關寄存器313 9.4.5 使用WDT的注意事項313 9.4.6 WDT的應用舉例314 【實驗范例9.1】 帶看門狗的霹靂燈314 9.5 睡眠與喚醒317 9.5.1 睡眠狀態的進入317 9.5.2 睡眠狀態的喚醒318 9.5.3 睡眠功能應用實例321 【實驗范例9.2】 利用按鍵來喚醒CPU321 思考題與練習題324 附錄A ASCII碼表326 附錄B 特殊功能寄存器及其復位值一覽表328 附錄C 英文指令系統概覽332 附錄D 特殊指令助記符(宏指令)336 附錄E 宏匯編器MPASM偽指令一覽表338 附錄F 包含文件P16F877.INC341 附錄G MPASM出錯、警告、提示信息列表349 G.1 出錯性顯示信息349 G.2 警告性顯示信息353 G.3 提示性顯示信息355 附錄H Mplink分析、連接信息列表357 H.1 分析性顯示信息357 H.2 連接性顯示信息358 H.3 連接警告性顯示信息361 H.4 庫文件錯誤信息362 H.5 COFF文件錯誤信息362 H.6 COFF到COD文件轉換錯誤信息364 H.7 COFF到COD文件轉換警告信息365 附錄I MPLAB-ICD演示板電路原理圖366 參考文獻368
|
序: |
|