高等院校電類專業(yè)新概念教材·項目驅動:單片機應用設計基礎
定 價:33 元
叢書名:卓越工程師教育叢書
- 作者:周立功 著
- 出版時間:2011/7/1
- ISBN:9787512404922
- 出 版 社:北京航空航天大學出版社
- 中圖法分類:TP368.1-43
- 頁碼:286
- 紙張:膠版紙
- 版次:1
- 開本:16開
《項目驅動——單片機應用設計基礎》以80C51單片機為主,通過項目驅動的方法融合相關知識點。內容主要分兩部分:第一部分為第1~4 章,以SDCC51編程語言為基礎,深入淺出地介紹如何使用嵌入式C編程來控制單片機各種外設部件,并給出常用C編程算法。第二部分為第5~7章,重點介紹TinyOS51嵌入式多任務操作系統(tǒng)的基本原理,及其在 80C51單片機中的實現(xiàn),并針對同一工程項目給出使用前后臺程序和嵌入式多任務操作系統(tǒng)兩種不同的編程方法。通過這兩種方法的比較,可使讀者了解嵌入式多任務操作系統(tǒng)在項目編程中的優(yōu)勢。 本書注重在教學中強化學生的動手訓練,強調理論與實踐相結合。讀者通過本書的學習,可熟練掌握嵌入式C的編程方法,并初步掌握嵌入式多任務操作系統(tǒng)的編程知識。 《項目驅動——單片機應用設計基礎》可作為大學本科、高職高專電子信息、自動化、機電一體化、計算機等專業(yè)的教材,也可作為電子愛好者的自學用書,還可作為從事單片機應用開發(fā)工程技術人員的參考資料。
《項目驅動:單片機應用設計基礎》或許讓人看起來并不起眼,甚至會不屑一顧,但作者認為,對于初學者來說面的知識,,本書確實具有與眾不同的特點,它不僅融合了數(shù)據(jù)結構、計算方法、直流電機及其功率接口等方而且在單片機教學中引入了嵌入式操作系統(tǒng)與程序設計基礎的思想。盡管TinyOS51是一個基于80C51單片機的嵌入式微小內核,但麻雀雖小,五臟俱全。更重要的是,學生能夠通過TinyOS51真實地了解項目驅動所融合的相關知識點的奧秘和機理。當然,學生僅學習上述內容還不足以全面掌握相關知識點,因此,在后續(xù)項目驅動的相關教材中,作者還會根據(jù)需要,不斷融合更多關鍵的知識點,以達到卓越計劃的教學目標。
第1章 深入理解嵌入式C
1.1 概述
1.1.1 特性
1.1.2 引腳排列與描述
1.1.3 特殊功能寄存器
1.2 單片機最小系統(tǒng)與開發(fā)工具
1.2.1 Tiny51核心模塊
1.2.2 復位電路
1.2.3 晶體振蕩電路
1.2.4 單片機在線仿真與編程
1.3 SDCC擴展
1.3.1 SDCC簡介
1.3.2 應用示例
1.3.3 關鍵字與數(shù)據(jù)類型
1.4 存儲器類語言
1.4.1 存儲類型
1.4.2 存儲模式
1.4.3 特殊功能寄存器數(shù)據(jù)類型
1.4.4 位數(shù)據(jù)類型
1.4.5 存儲器絕對尋址
1.4.6 指針
1.5 函數(shù)
1.5.1 函數(shù)參數(shù)和局部變量
1.5.2 覆蓋
1.5.3 使用專用寄存器組
1.6 深入理解嵌入式C
1.6.1 概述
1.6.2 方法
1.6.3 函數(shù)調用與參數(shù)傳遞
1.6.4 函數(shù)返回
1.6.5 局部變量存儲
1.7 經典范例程序設計
1.7.1 LED流水燈范例
1.7.2 蜂鳴器驅動范例
1.7.3 數(shù)碼管動態(tài)掃描顯示驅動范例
1.7.4 鍵盤動態(tài)掃描驅動范例
第2章 特殊功能部件與外設
2.1 中斷系統(tǒng)
2.1.1 中斷概念
2.1.2 80C51的中斷結構
2.1.3 相關寄存器
2.1.4 中斷向量
2.1.5 中斷操作
2.1.6 使能和禁止中斷
2.2 定時/計數(shù)器
2.2.1 相關寄存器
2.2.2 定時/計數(shù)器模式
2.2.3 定時器查詢延時
2.2.4 定時器中斷延時
2.2.5 無源蜂鳴器驅動程序
2.2.6 數(shù)碼管動態(tài)掃描演示程序
2.2.7 測量負脈沖
2.3 看門狗
2.3.1 看門狗的作用
2.3.2 看門狗的工作原理
2.3.3 看門狗定時器的結構
2.3.4 寄存器描述
2.3.5 看門狗周期值設置
2.3.6 應用示例
2.4 I2C總線及其驅動程序
2.4.1 I2C簡介
2.4.2 決策
2.4.3 軟件接口
2.4.4 基本時序代碼
2.4.5 外部接口代碼
2.4.6 E2PROM讀/寫范例
2.4.7 CAT1024驅動程序
2.4.8 溫度的測量
2.5 串行口及其驅動程序
2.5.1 硬件基礎
2.5.2 決策
2.5.3 軟件接口
2.5.4 初始化
2.5.5 發(fā)送數(shù)據(jù)
2.5.6 接收數(shù)據(jù)
2.5.7 測試用例
第3章 數(shù)據(jù)結構與計算方法初步
3.1 簡單閾值控制算法
3.1.1 算法原理
3.1.2 應用實例
3.2 循環(huán)隊列
3.2.1 隊列的邏輯結構和基本運算
3.2.2 隊列的存儲結構
3.2.3 循環(huán)隊列的運算
3.3 常用檢錯算法
3.3.1 奇偶校驗
3.3.2 和校驗
3.3.3 循環(huán)冗余校驗
3.4 應用實例
3.4.1 Hex文件
3.4.2 通信編程
第4章 保險箱密碼鎖控制器(方案一)
4.1 概述
4.1.1 保險箱
4.1.2 鎖芯機械結構
4.1.3 密碼鎖控制器
4.1.4 密碼鎖工作原理
4.2 準備工作
4.2.1 概述
4.2.2 使用說明
4.2.3 硬件概要設計
4.2.4 軟件概要設計
4.3 硬件驅動設計
4.3.1 延時驅動
4.3.2 鎖驅動
4.3.3 可復用的硬件驅動
4.4 虛擬驅動設計
4.4.1 虛擬鎖驅動
4.4.2 虛擬鍵盤驅動
4.4.3 虛擬蜂鳴器驅動
4.4.4 虛擬顯示器驅動
4.4.5 虛擬存儲器驅動
4.5 主程序設計
4.5.1 準備工作
4.5.2 編寫代碼
4.6 直流電機及其功率接口
4.6.1 概述
4.6.2 直流電機的工作原理
4.6.3 直流電機的單向驅動
4.6.4 直流電機的雙向驅動
第5章 TinyOS51嵌入式操作系統(tǒng)微小內核
5.1 基礎知識
5.1.1 概述
5.1.2 頭文件
5.1.3 變量命名規(guī)則
5.1.4 范例分析
5.1.5 setjmp與longjmp的實現(xiàn)
5.2 最簡單的多任務模型
5.2.1 雙任務切換模型
5.2.2 待解決的問題
5.2.3 setTaskJmp()的實現(xiàn)
5.2.4 任務切換模型范例分析
5.3 協(xié)作式多任務操作系統(tǒng)
5.3.1 整體規(guī)劃
5.3.2 任務控制塊
5.3.3 內部變量初始化
5.3.4 創(chuàng)建任務
5.3.5 啟動多任務環(huán)境
5.3.6 任務切換
5.3.7 刪除任務
5.3.8 小結
5.4 時間片輪詢多任務操作系統(tǒng)
5.4.1 概述
5.4.2 整體規(guī)劃
5.4.3 任務控制塊
5.4.4 內部變量初始化
5.4.5 創(chuàng)建任務
5.4.6 啟動多任務環(huán)境
5.4.7 任務調度
5.4.8 時鐘節(jié)拍中斷
5.4.9 longjmpInIsr()
5.4.10 任務延時
5.4.11 刪除任務
5.5 信號量
5.5.1 概述
5.5.2 整體規(guī)劃
5.5.3 任務控制塊
5.5.4 內部變量初始化
5.5.5 信號量定義
5.5.6 創(chuàng)建信號量
5.5.7 獲得信號量
5.5.8 發(fā)送信號量
5.5.9 刪除任務
5.6 消息郵箱
5.6.1 概述
5.6.2 整體規(guī)劃
5.6.3 任務標志與消息郵箱
5.6.4 創(chuàng)建消息郵箱
5.6.5 獲得消息
5.6.6 發(fā)送消息
第6章 程序設計基礎
6.1 任務設計
6.1.1 任務的分類
6.1.2 任務的劃分
6.2 系統(tǒng)函數(shù)使用概述
6.2.1 系統(tǒng)函數(shù)總覽
6.2.2 中斷服務程序調用函數(shù)的限制
6.2.3 系統(tǒng)函數(shù)的分類
6.3 系統(tǒng)函數(shù)的使用場合
6.3.1 時間管理
6.3.2 資源同步
6.3.3 行為同步
6.4 時間管理
6.5 臨界區(qū)
6.6 信號量
6.6.1 簡介
6.6.2 信號量的工作方式
6.6.3 任務同步中斷服務程序
6.6.4 任務間同步
6.6.5 資源同步
6.7 消息郵箱
6.7.1 簡介
6.7.2 消息郵箱的工作方式
6.7.3 中斷服務程序與任務通信
6.7.4 任務間數(shù)據(jù)通信
第7章 保險箱密碼鎖控制器(方案二)
7.1 軟件開發(fā)流程
7.2 決策
7.2.1 概述
7.2.2 總體目標
7.2.3 使用說明
7.2.4 限制條件
7.2.5 具體開發(fā)目標
7.2.6 其他決策內容
7.3 模塊劃分
7.3.1 概述
7.3.2 硬件層
7.3.3 設備驅動層
7.3.4 虛擬設備層
7.3.5 應用層
7.4 接口定義
7.4.1 密碼的輸出、存儲與顯示
7.4.2 應用層接口
7.4.3 虛擬設備層接口
7.4.4 設備驅動層接口
7.5 編寫代碼
7.5.1 概述
7.5.2 可復用的驅動
7.5.3 I2C驅動
7.5.4 CAT1024驅動
7.5.5 虛擬鍵盤驅動
7.5.6 虛擬蜂鳴器驅動
7.5.7 人機交互程序
7.5.8 主程序
7.6 測試、驗收與小結
參考文獻