項(xiàng)目驅(qū)動(dòng)

出版時(shí)間:2011-7  出版社:北京航空航天大學(xué)  作者:周立功  頁數(shù):286  
Tag標(biāo)簽:無  

內(nèi)容概要

這本《項(xiàng)目驅(qū)動(dòng)——單片機(jī)應(yīng)用設(shè)計(jì)基礎(chǔ)》由周立功主編陳明計(jì)等編著,全書以80C51單片機(jī)為主,通過項(xiàng)目驅(qū)動(dòng)的方法融合相關(guān)知識(shí)點(diǎn)。內(nèi)容主要分兩部分:第一部分為第1~4
章,以SDCC51編程語言為基礎(chǔ),深入淺出地介紹如何使用嵌入式C編程來控制單片機(jī)各種外設(shè)部件,并給出常用C編程算法。第二部分為第5~7章,重點(diǎn)介紹TinyOS51嵌入式多任務(wù)操作系統(tǒng)的基本原理,及其在
80C51單片機(jī)中的實(shí)現(xiàn),并針對(duì)同一工程項(xiàng)目給出使用前后臺(tái)程序和嵌入式多任務(wù)操作系統(tǒng)兩種不同的編程方法。通過這兩種方法的比較,可使讀者了解嵌入式多任務(wù)操作系統(tǒng)在項(xiàng)目編程中的優(yōu)勢。
本書注重在教學(xué)中強(qiáng)化學(xué)生的動(dòng)手訓(xùn)練,強(qiáng)調(diào)理論與實(shí)踐相結(jié)合。讀者通過本書的學(xué)習(xí),可熟練掌握嵌入式C的編程方法,并初步掌握嵌入式多任務(wù)操作系統(tǒng)的編程知識(shí)。
《項(xiàng)目驅(qū)動(dòng)——單片機(jī)應(yīng)用設(shè)計(jì)基礎(chǔ)》可作為大學(xué)本科、高職高專電子信息、自動(dòng)化、機(jī)電一體化、計(jì)算機(jī)等專業(yè)的教材,也可作為電子愛好者的自學(xué)用書,還可作為從事單片機(jī)應(yīng)用開發(fā)工程技術(shù)人員的參考資料。

書籍目錄

第1章  深入理解嵌入式C
1.1 概述
1.1.1 特性
1.1.2 引腳排列與描述
1.1.3 特殊功能寄存器
1.2 單片機(jī)最小系統(tǒng)與開發(fā)工具
1.2.1 Tiny51核心模塊
1.2.2 復(fù)位電路
1.2.3 晶體振蕩電路
1.2.4 單片機(jī)在線仿真與編程
1.3 SDCC擴(kuò)展
1.3.1 SDCC簡介
1.3.2 應(yīng)用示例
1.3.3 關(guān)鍵字與數(shù)據(jù)類型
1.4 存儲(chǔ)器類語言
1.4.1 存儲(chǔ)類型
1.4.2 存儲(chǔ)模式
1.4.3 特殊功能寄存器數(shù)據(jù)類型
1.4.4 位數(shù)據(jù)類型
1.4.5 存儲(chǔ)器絕對(duì)尋址
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ù)調(diào)用與參數(shù)傳遞
1.6.4 函數(shù)返回
1.6.5 局部變量存儲(chǔ)
1.7 經(jīng)典范例程序設(shè)計(jì)
1.7.1 LED流水燈范例
1.7.2 蜂鳴器驅(qū)動(dòng)范例
1.7.3 數(shù)碼管動(dòng)態(tài)掃描顯示驅(qū)動(dòng)范例
1.7.4 鍵盤動(dòng)態(tài)掃描驅(qū)動(dòng)范例
第2章 特殊功能部件與外設(shè)
2.1 中斷系統(tǒng)
2.1.1 中斷概念
2.1.2 80C51的中斷結(jié)構(gòu)
2.1.3 相關(guān)寄存器
2.1.4 中斷向量
2.1.5 中斷操作
2.1.6 使能和禁止中斷
2.2 定時(shí)/計(jì)數(shù)器
2.2.1 相關(guān)寄存器
2.2.2 定時(shí)/計(jì)數(shù)器模式
2.2.3 定時(shí)器查詢延時(shí)
2.2.4 定時(shí)器中斷延時(shí)
2.2.5 無源蜂鳴器驅(qū)動(dòng)程序
2.2.6 數(shù)碼管動(dòng)態(tài)掃描演示程序
2.2.7 測量負(fù)脈沖
2.3 看門狗
2.3.1 看門狗的作用
2.3.2 看門狗的工作原理
2.3.3 看門狗定時(shí)器的結(jié)構(gòu)
2.3.4 寄存器描述
2.3.5 看門狗周期值設(shè)置
2.3.6 應(yīng)用示例
2.4 I2C總線及其驅(qū)動(dòng)程序
2.4.1 I2C簡介
2.4.2 決策
2.4.3 軟件接口
2.4.4 基本時(shí)序代碼
2.4.5 外部接口代碼
2.4.6 E2PROM讀/寫范例
2.4.7 CAT1024驅(qū)動(dòng)程序
2.4.8 溫度的測量
2.5 串行口及其驅(qū)動(dòng)程序
2.5.1 硬件基礎(chǔ)
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ù)結(jié)構(gòu)與計(jì)算方法初步
3.1 簡單閾值控制算法
3.1.1 算法原理
3.1.2 應(yīng)用實(shí)例
3.2 循環(huán)隊(duì)列
3.2.1 隊(duì)列的邏輯結(jié)構(gòu)和基本運(yùn)算
3.2.2 隊(duì)列的存儲(chǔ)結(jié)構(gòu)
3.2.3 循環(huán)隊(duì)列的運(yùn)算
3.3 常用檢錯(cuò)算法
3.3.1 奇偶校驗(yàn)
3.3.2 和校驗(yàn)
3.3.3 循環(huán)冗余校驗(yàn)
3.4 應(yīng)用實(shí)例
3.4.1 Hex文件
3.4.2 通信編程
第4章 保險(xiǎn)箱密碼鎖控制器(方案一)
4.1 概述
4.1.1 保險(xiǎn)箱
4.1.2 鎖芯機(jī)械結(jié)構(gòu)
4.1.3 密碼鎖控制器
4.1.4 密碼鎖工作原理
4.2 準(zhǔn)備工作
4.2.1 概述
4.2.2 使用說明
4.2.3 硬件概要設(shè)計(jì)
4.2.4 軟件概要設(shè)計(jì)
4.3 硬件驅(qū)動(dòng)設(shè)計(jì)
4.3.1 延時(shí)驅(qū)動(dòng)
4.3.2 鎖驅(qū)動(dòng)
4.3.3 可復(fù)用的硬件驅(qū)動(dòng)
4.4 虛擬驅(qū)動(dòng)設(shè)計(jì)
4.4.1 虛擬鎖驅(qū)動(dòng)
4.4.2 虛擬鍵盤驅(qū)動(dòng)
4.4.3 虛擬蜂鳴器驅(qū)動(dòng)
4.4.4 虛擬顯示器驅(qū)動(dòng)
4.4.5 虛擬存儲(chǔ)器驅(qū)動(dòng)
4.5 主程序設(shè)計(jì)
4.5.1 準(zhǔn)備工作
4.5.2 編寫代碼
4.6 直流電機(jī)及其功率接口
4.6.1 概述
4.6.2 直流電機(jī)的工作原理
4.6.3 直流電機(jī)的單向驅(qū)動(dòng)
4.6.4 直流電機(jī)的雙向驅(qū)動(dòng)
第5章 TinyOS51嵌入式操作系統(tǒng)微小內(nèi)核
5.1 基礎(chǔ)知識(shí)
5.1.1 概述
5.1.2 頭文件
5.1.3 變量命名規(guī)則
5.1.4 范例分析
5.1.5 setjmp與longjmp的實(shí)現(xiàn)
5.2 最簡單的多任務(wù)模型
5.2.1 雙任務(wù)切換模型
5.2.2 待解決的問題
5.2.3 setTaskJmp()的實(shí)現(xiàn)
5.2.4 任務(wù)切換模型范例分析
5.3 協(xié)作式多任務(wù)操作系統(tǒng)
5.3.1 整體規(guī)劃
5.3.2 任務(wù)控制塊
5.3.3 內(nèi)部變量初始化
5.3.4 創(chuàng)建任務(wù)
5.3.5 啟動(dòng)多任務(wù)環(huán)境
5.3.6 任務(wù)切換
5.3.7 刪除任務(wù)
5.3.8 小結(jié)
5.4 時(shí)間片輪詢多任務(wù)操作系統(tǒng)
5.4.1 概述
5.4.2 整體規(guī)劃
5.4.3 任務(wù)控制塊
5.4.4 內(nèi)部變量初始化
5.4.5 創(chuàng)建任務(wù)
5.4.6 啟動(dòng)多任務(wù)環(huán)境
5.4.7 任務(wù)調(diào)度
5.4.8 時(shí)鐘節(jié)拍中斷
5.4.9 longjmpInIsr()
5.4.10 任務(wù)延時(shí)
5.4.11 刪除任務(wù)
5.5 信號(hào)量
5.5.1 概述
5.5.2 整體規(guī)劃
5.5.3 任務(wù)控制塊
5.5.4 內(nèi)部變量初始化
5.5.5 信號(hào)量定義
5.5.6 創(chuàng)建信號(hào)量
5.5.7 獲得信號(hào)量
5.5.8 發(fā)送信號(hào)量
5.5.9 刪除任務(wù)
5.6 消息郵箱
5.6.1 概述
5.6.2 整體規(guī)劃
5.6.3 任務(wù)標(biāo)志與消息郵箱
5.6.4 創(chuàng)建消息郵箱
5.6.5 獲得消息
5.6.6 發(fā)送消息
第6章 程序設(shè)計(jì)基礎(chǔ)
6.1 任務(wù)設(shè)計(jì)
6.1.1 任務(wù)的分類
6.1.2 任務(wù)的劃分
6.2 系統(tǒng)函數(shù)使用概述
6.2.1 系統(tǒng)函數(shù)總覽
6.2.2 中斷服務(wù)程序調(diào)用函數(shù)的限制
6.2.3 系統(tǒng)函數(shù)的分類
6.3 系統(tǒng)函數(shù)的使用場合
6.3.1 時(shí)間管理
6.3.2 資源同步
6.3.3 行為同步
6.4 時(shí)間管理
6.5 臨界區(qū)
6.6 信號(hào)量
6.6.1 簡介
6.6.2 信號(hào)量的工作方式
6.6.3 任務(wù)同步中斷服務(wù)程序
6.6.4 任務(wù)間同步
6.6.5 資源同步
6.7 消息郵箱
6.7.1 簡介
6.7.2 消息郵箱的工作方式
6.7.3 中斷服務(wù)程序與任務(wù)通信
6.7.4 任務(wù)間數(shù)據(jù)通信
第7章 保險(xiǎn)箱密碼鎖控制器(方案二)
7.1 軟件開發(fā)流程
7.2 決策
7.2.1 概述
7.2.2 總體目標(biāo)
7.2.3 使用說明
7.2.4 限制條件
7.2.5 具體開發(fā)目標(biāo)
7.2.6 其他決策內(nèi)容
7.3 模塊劃分
7.3.1 概述
7.3.2 硬件層
7.3.3 設(shè)備驅(qū)動(dòng)層
7.3.4 虛擬設(shè)備層
7.3.5 應(yīng)用層
7.4 接口定義
7.4.1 密碼的輸出、存儲(chǔ)與顯示
7.4.2 應(yīng)用層接口
7.4.3 虛擬設(shè)備層接口
7.4.4 設(shè)備驅(qū)動(dòng)層接口
7.5 編寫代碼
7.5.1 概述
7.5.2 可復(fù)用的驅(qū)動(dòng)
7.5.3 I2C驅(qū)動(dòng)
7.5.4 CAT1024驅(qū)動(dòng)
7.5.5 虛擬鍵盤驅(qū)動(dòng)
7.5.6 虛擬蜂鳴器驅(qū)動(dòng)
7.5.7 人機(jī)交互程序
7.5.8 主程序
7.6 測試、驗(yàn)收與小結(jié)
參考文獻(xiàn)

章節(jié)摘錄

版權(quán)頁:插圖:③當(dāng)串行口接收到或發(fā)送完一個(gè)字符時(shí),將中斷標(biāo)志RI/TI置位。中斷標(biāo)志置位并不意味著CPU即刻響應(yīng)中斷,若要CPU產(chǎn)生中斷響應(yīng)還必須將中斷使能寄存器IE(見表2.1)中的總中斷使能位EA和相對(duì)應(yīng)的中斷使能位置位。一個(gè)中斷源產(chǎn)生中斷請(qǐng)求(即該中斷源的中斷標(biāo)志置位)后,若該中斷使能(IE寄存器的總中斷使能位EA和單獨(dú)中斷使能位均置位),且CPU沒有處理同優(yōu)先級(jí)中斷或更高優(yōu)先級(jí)的中斷,則該中斷將立即得到響應(yīng)。此時(shí),正常的程序流程將被打斷,程序計(jì)數(shù)器Pc將指向該中斷源的中斷向量地址來執(zhí)行中斷服務(wù)程序,中斷服務(wù)程序執(zhí)行完畢將執(zhí)行中斷返回指令RETI,返回中斷前被打斷的正常程序流程處繼續(xù)執(zhí)行下面的程序,如圖2.2所示。若CPU正在處理同優(yōu)先級(jí)中斷或更高優(yōu)先級(jí)中斷,則要等到同優(yōu)先級(jí)中斷或更高優(yōu)先級(jí)中斷處理完畢才能響應(yīng)這個(gè)中斷(得到響應(yīng))。因中斷可能發(fā)生在正常程序流程的任何地方,故在中斷服務(wù)程序執(zhí)行完畢,為了使程序能正確返回到發(fā)生中斷的地方繼續(xù)執(zhí)行,在進(jìn)入中斷服務(wù)程序之前,CPU自動(dòng)將當(dāng)前的PC值壓入堆棧。當(dāng)中斷返回時(shí),只要執(zhí)行RETI指令,CPU就能將之前壓人的返回地址彈出到PC,繼續(xù)執(zhí)行正常程序流程。必須在中斷退出之前清除中斷源的中斷請(qǐng)求標(biāo)志,否則會(huì)引發(fā)重復(fù)中斷。在表2.3中所有的中斷請(qǐng)求標(biāo)志都是由硬件置位。編號(hào)為0~3的中斷源的中斷請(qǐng)求標(biāo)志在進(jìn)入中斷響應(yīng)時(shí)由硬件清除,編號(hào)為4的串行口中斷請(qǐng)求標(biāo)志RI或TI必須要通過軟件清除。在圖2.2中,正常程序流程可以是主程序中的程序,也可以是正在執(zhí)行的較低優(yōu)先級(jí)的中斷服務(wù)程序。在正常程序流程和中斷服務(wù)程序中,可能都要用到一些CPU的公共資源,比如,累加器A、B、PSW、DPTR和R0~R7。一旦CPU的硬件收到中斷的信號(hào),它就會(huì)自動(dòng)地開始所有的工作,推進(jìn)CPU的狀態(tài),讀中斷數(shù),從RAM中提取向量,然后啟動(dòng)ISR。此時(shí),作為程序員必須將“斷點(diǎn)”處的信息保存到堆棧中,當(dāng)程序恢復(fù)運(yùn)行時(shí),將保存在堆棧中的“信息”再恢復(fù)到CPU的寄存器中,在“斷點(diǎn)”處作為初始數(shù)據(jù)接著運(yùn)行。在用匯編語言編程時(shí),執(zhí)行中斷服務(wù)程序之前,須將這些公共資源人棧(PUSH),這叫做“現(xiàn)場保護(hù)”;當(dāng)中斷服務(wù)程序執(zhí)行完畢,在執(zhí)行RETI指令之前,將這些公共資源出棧(POP),這叫做“現(xiàn)場恢復(fù)”。R0~R7也可通過改變PSW寄存器中的RS0和RS1位來切換通用寄存器組而不必入棧。若用C51語言編程,編譯器可自動(dòng)處理壓棧和出棧而不用軟件干預(yù),通用寄存器組的切換也可用關(guān)鍵字using實(shí)現(xiàn)。

編輯推薦

《項(xiàng)目驅(qū)動(dòng):單片機(jī)應(yīng)用設(shè)計(jì)基礎(chǔ)》為高等院校電類專業(yè)新概念教材?卓越工程師教育叢書之一。

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    項(xiàng)目驅(qū)動(dòng) PDF格式下載


用戶評(píng)論 (總計(jì)38條)

 
 

  •   這書注重在教學(xué)中強(qiáng)化學(xué)生的動(dòng)手訓(xùn)練,強(qiáng)調(diào)理論與實(shí)踐相結(jié)合。讀者通過本書的學(xué)習(xí),可熟練掌握嵌入式C的編程方法,并初步掌握嵌入式多任務(wù)操作系統(tǒng)的編程知識(shí)。特別是TinyOS51嵌入式多任務(wù)操作系統(tǒng)的基本原理,及其在\n80C51單片機(jī)中的實(shí)現(xiàn),并針對(duì)同一工程項(xiàng)目給出使用前后臺(tái)程序和嵌入式多任務(wù)操作系統(tǒng)兩種不同的編程方法。通過這兩種方法的比較,可使你了解嵌入式多任務(wù)操作系統(tǒng)在項(xiàng)目編程中的優(yōu)勢,一般有個(gè)8051的書很少觸及到操作系統(tǒng)層面,這也算是周公的這本書的一大兩點(diǎn)吧。
  •   操作系統(tǒng)的概念一定要學(xué)的 以后ARM的時(shí)候 都是操作系統(tǒng)跑 這本書如本不錯(cuò)的 一直在看
    貌似現(xiàn)在 TinyOS這個(gè)系統(tǒng) 在無線傳感也有應(yīng)用 看看吧
  •   這書學(xué)單片機(jī)應(yīng)該不錯(cuò)
  •   與一般的單片機(jī)的書不同,值得一讀。
  •   配合《新編計(jì)算機(jī)基礎(chǔ)》周立功的,不錯(cuò)
  •   ZLG的書 就是沖著TinyOS51買的
  •   周立功推薦的好書
  •   周工的書的確能抓住讀者的❤啊!其實(shí)我一直期待的是那本C語言高級(jí)程序設(shè)計(jì),還不出,急死我了
  •   最好適合和新編計(jì)算機(jī)基礎(chǔ)教程一起看才好
  •   講的比較基礎(chǔ),適合入門不久之后閱讀
  •   內(nèi)容范圍廣、適合自動(dòng)化專業(yè)的童鞋學(xué)習(xí)
  •   內(nèi)容相當(dāng)棒,后悔沒早點(diǎn)看這本書。。里面代碼的風(fēng)格正好承接arm的學(xué)習(xí)
  •   寫的很好,不太適合初學(xué)者
  •   正準(zhǔn)備認(rèn)真學(xué)習(xí)
  •   現(xiàn)在畢業(yè)已經(jīng)4年了,想學(xué)些東西心有余而力不足,要是在學(xué)校期間能讀到這本書的話,效果會(huì)很不一樣。非常好的一本書,值得推薦
  •   不錯(cuò)! 很多內(nèi)容和以前買的書重復(fù)了! 都一個(gè)樣!
  •   編的很不錯(cuò),能加強(qiáng)實(shí)踐,很好的書
  •   快遞人員的服務(wù)態(tài)度不錯(cuò) 而且 書也沒有什么問題!并且省去了 我直接去 書店購買!相當(dāng)?shù)臐M意
  •   還可以,很多人推薦!
  •   ,不錯(cuò)不錯(cuò),,不錯(cuò)不錯(cuò),
  •   相對(duì)于市場上好幾十元的同類圖書,ZLG的書絕對(duì)值得購買
  •   幫同學(xué)下的單 他很感謝我 說書很好
  •   我很喜歡,可以認(rèn)真讀了!
  •   是湊著周工的名聲買的,看了幾頁,感覺不錯(cuò)。書本開頭主要以P89V51RB2為單片機(jī)講解,正好我手頭有一塊,好對(duì)應(yīng)著看。。
  •   周立功的書,很適合初學(xué)者,基礎(chǔ)知識(shí)講的很詳細(xì)
  •   本教程的編寫思路較為新穎,若在融入些編程的思想和經(jīng)驗(yàn)會(huì)更好。
  •   不太適合初學(xué)者,不過基礎(chǔ)知識(shí)挺全的。
  •   圖書內(nèi)容豐富,條理清晰,非常適合初學(xué)者及自學(xué)者。作為51入門教材很合適,很實(shí)用
  •   教學(xué)用書,初學(xué)者可看
  •   有實(shí)際基礎(chǔ)的不用看了,偶買錯(cuò)了
  •   書的質(zhì)量很好,內(nèi)容大致的看了一下!挺好的!
  •   看了下,有點(diǎn)深,慢慢看吧
  •   帶個(gè)光盤什么的,都沒得,不過書還不錯(cuò)
  •   挺好,易懂,適合剛?cè)腴T
  •   京東沒得賣,只好在當(dāng)當(dāng)買。運(yùn)費(fèi)太貴。書不錯(cuò)
  •   看過不少單片機(jī)的書,不過這樣清新的感覺還是第一次遇見,很不錯(cuò)的書,進(jìn)階高手很實(shí)用的,畢竟單片機(jī)的ROM一般就那么幾K,所以程序簡潔明了很重要
  •   很好,有個(gè)比較規(guī)范的模版可以學(xué)習(xí)
  •   書較薄,沒有光盤,參考參考吧?。?!本來以為zlg的書會(huì)好些,實(shí)際看看都是技術(shù)tinyOS的,和項(xiàng)目管理的內(nèi)容很少
 

250萬本中文圖書簡介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7