定 價:69 元
叢書名:增強型80C51單片機初學(xué)之路·動手系列
- 作者:劉同法 ,等 著
- 出版時間:2010/8/1
- ISBN:9787512401532
- 出 版 社:北京航空航天大學(xué)出版社
- 中圖法分類:TP312C
- 頁碼:590
- 紙張:膠版紙
- 版次:1
- 開本:16開
《C51單片機C程序模板與應(yīng)用工程實踐》可幫助讀者快速學(xué)習(xí)和應(yīng)用C51單片機,對C51單片機的內(nèi)部資源和常用的外圍接口器件實施程序模板化。使讀者在這一基礎(chǔ)上編寫自己的功能程序代碼,不再重復(fù)編寫基礎(chǔ)代碼。《C51單片機C程序模板與應(yīng)用工程實踐》的最大特點即將程序模塊貫穿于工程應(yīng)用的始末。全書分為4部分。第一部分為單片機基礎(chǔ)簡述,主要是為計算機程序人員轉(zhuǎn)而學(xué)習(xí)單片機程序設(shè)計而設(shè);第二部分為單片機程序模板編寫與應(yīng)用;第三部分為單片機外圍接口電路,重點是單片機組網(wǎng)芯片的應(yīng)用;第四部分為單片機應(yīng)用工程實例。《C51單片機C程序模板與應(yīng)用工程實踐》不僅適用于中專、高職高專、技工技師培訓(xùn)及本科院校等作為單片機實訓(xùn)教材,還可供從事自動控制、智能儀器儀表、電力電子、機電一體化以及各類單片機應(yīng)用的工程技術(shù)人員與單片機愛好者學(xué)習(xí)參考。
訓(xùn)練目標: 自學(xué)單片機外圍接口電路應(yīng)用的能力; 運用單片機設(shè)計實際工程的能力; 按器件時序圖編寫單片機驅(qū)動外圍接口器件程序的能力; 掌握單片機與其外圍接口器件間通信的能力; 設(shè)計與制作大中型工程的能力; 學(xué)習(xí)應(yīng)用前人開發(fā)的軟/硬件平臺的能力; 診斷并排除工程中軟/硬件錯誤與故障的能力; 撰寫規(guī)范的工程文檔的能力。 《C51單片機C程序模板與應(yīng)用工程實踐》特色: 講述C程序模板的編寫與應(yīng)用,提高學(xué)習(xí)單片機應(yīng)用的速度; 配有隨書學(xué)習(xí)例程,幫助初學(xué)者快速入門; 分課題制作外圍接口電路,提高動手能力; 隨書綁定學(xué)習(xí)中所需元器件; 理論學(xué)習(xí)與實戰(zhàn)訓(xùn)練相結(jié)合,使讀者輕松掌握單片機的應(yīng)用。 我們的口號是: 沒有昂貴的單片機實驗室,照樣能夠?qū)W習(xí)好單片機及其工程應(yīng)用。
流水在前進著,時光在前進著,人也在前進著。
寫完了《單片機上位PC機編程應(yīng)用》一書,又想起沒能完成的心愿,即編寫《單片機C語言的應(yīng)用編程》。
時過境遷,前一年寫的《單片機C語言編程基礎(chǔ)與實踐》現(xiàn)已出版,但對于單片機外圍接口電路的編程不能沒有C語言的參與。去年,在南華大學(xué)進行單片機培訓(xùn)時受到啟發(fā),之后設(shè)計出這本適合大學(xué)畢業(yè)生需要的單片機快速上手的圖書。當時的實情是我確實也沒能想出更好的辦法來解決平時并不好好讀書的學(xué)生的問題,F(xiàn)在他們要畢業(yè)了,卻又想起要好好讀讀書了,理念就是俗話所說的“臨時磨刀不利也光”。按照我個人的教學(xué)理念,學(xué)習(xí)單片機想要有扎實的基礎(chǔ),則必須要靜下心來進行1-3個月的課題學(xué)習(xí)與實踐訓(xùn)練?墒沁@些同學(xué)哪有這么多的時間和這樣好的心態(tài)呢!他們每天都在忙于找工作,忙于應(yīng)酬。面臨這種情況,我想了許久,終于想起利用我當初學(xué)習(xí)過的C++編程模板概念——程序模板。將這一概念引入單片機,即將單片機常用的內(nèi)部資源和外部常用器件全部用C語言編寫好,并編譯通過,形成程序模板格式。為解決當初同學(xué)們的問題,我采取的方法是,邊寫邊讓同學(xué)們試用,幾個月之后便達到了理想的效果。這本書就是整理當日在南華大學(xué)培訓(xùn)時用過的程序模板和資料,分享給全國各地的大學(xué)畢業(yè)生們;同時,在崗的工程師們也可以使用。這是因為組裝程序模板是一件非常容易的事情,這對于從事自動化工作的讀者,不僅可以節(jié)約大量的時間,而且還可以集中精力編寫更重要的功能代碼。
第1章 80C51硬件結(jié)構(gòu)簡介
1.1 80C51內(nèi)部結(jié)構(gòu)
1.2 80C51存儲器配置
1.2.1 程序存儲器
1.2.2 內(nèi)部數(shù)據(jù)存儲器
1.2.3 外部數(shù)據(jù)存儲器
1.3 80C51輸入/輸出接口電路
1.3.1 P0口
1.3.2 P1口
1.3.3 P2口
1.3.4 P3口
1.4 80C51中斷系統(tǒng)
1.4.1 什么是中斷
1.4.2 80C51的中斷源
1.4.3 中斷方式
1.4.4 中斷控制寄存器
1.5 80C51定時器
1.5.1 定時/計數(shù)功能
1.5.2 定時/計數(shù)器控制寄存器
1.5.3 定時/計數(shù)器的工作方式
1.6 80C51串行通信
1.6.1 串行通信的概念
1.6.2 串行口的工作方式
第2章 P89V51Rx2單片機引腳功能和數(shù)據(jù)存儲器RAM的C語言定義與應(yīng)用
2.1 P89V51RX2單片機簡介與引腳功能
2.1.1 P89V51RX2單片機簡介
2.1.2 P89V51RX2單片機引腳功能
2.2 P89V51RX2單片機數(shù)據(jù)存儲器RAM的C語言專用數(shù)據(jù)存儲類型定義
2.2.1 P89V51RX2單片機的內(nèi)部結(jié)構(gòu)
2.2.2 C語言對單片機數(shù)據(jù)存儲器的專用定義
2.2.3 C51單片機專用數(shù)據(jù)存儲器定義類型符的應(yīng)用
2.3 C語言對P89V51RX2單片機特殊寄存器的定義方法
2.3.1 特殊寄存器說明符的應(yīng)用
2.3.2 sbit位說明符的應(yīng)用
第3章 程序模板的編寫與使用方法
3.1 定時/計數(shù)器0程序模板的編寫與使用
3.1.1 定時/計數(shù)器.程序模板庫
3.1.2 函數(shù)原型與說明
3.1.3 函數(shù)應(yīng)用范例
3.2 定時/計數(shù)器1程序模板的編寫與使用
3.2.1 定時/計數(shù)器1程序模板庫
3.2.2 函數(shù)原型與說明
3.2.3 函數(shù)應(yīng)用范例
3.3 外部中斷INTO程序模板的編寫與使用
3.3.1 外部中斷INTO程序模板庫
3.3.2 函數(shù)原型與說明
3.3.3 函數(shù)應(yīng)用范例
3.4 外部中斷INT1程序模板的編寫與使用
3.4.1 外部中斷INT1程序模板庫
3.4.2 函數(shù)原型與說明
3.4.3 函數(shù)應(yīng)用范例
3.5 串行通信程序模板的編寫與使用
3.5.1 UART串行通信程序模板庫
3.5.2 函數(shù)原型與說明
3.5.3 函數(shù)應(yīng)用范例
3.6 運用IAP指令向Flash程序存儲器寫人數(shù)據(jù)程序模板的編寫與使用
3.6.1 IAP指令向Flash程序存儲器寫人數(shù)據(jù)程序模板庫
3.6.2 向工程中加入IAP讀/寫函數(shù)的說明
3.6.3 函數(shù)原型與說明
3.6.4 函數(shù)應(yīng)用范例
3.7 P89V51RX2計數(shù)陣列中的PWM程序模板的編寫與使用
3.7.1 P89V51RX2計數(shù)陣列中的PWM程序模板庫
3.7.2 函數(shù)原型與說明
3.7.3 函數(shù)應(yīng)用范例
3.8 P89V51RX2看門狗WDT程序模板的編寫與使用
3.8.1 P89V51RX2看門狗wDT程序模板庫
3.8.2 函數(shù)原型與說明
3.8.3 函數(shù)應(yīng)用范例
3.9 8位按鍵程序模板的編寫與使用
3.9.1 8位按鍵程序模板庫
3.9.2 函數(shù)原型與說明
3.9.3 函數(shù)應(yīng)用范例
3.10 4×4按鍵程序模板的編寫與使用
3.10.1 4×4按鍵程序模板庫
3.10.2 函數(shù)原型與說明
3.10.3 函數(shù)應(yīng)用范例
3.11 8位數(shù)碼管程序模板的編寫與使用
3.11.1 8位數(shù)碼管程序模板庫
3.11.2 函數(shù)原型與說明
3.11.3 函數(shù)應(yīng)用范例
3.12 按鍵發(fā)音程序模板的編寫與使用
3.12.1 按鍵發(fā)音程序模板庫
3.12.2 函數(shù)原型與說明
3.12.3 函數(shù)應(yīng)用范例
3.13 液晶TCl602程序模板的編寫與使用
3.13.1 液晶TCl602程序模板庫
3.13.2 函數(shù)原型與說明
3.13.3 函數(shù)應(yīng)用范例
3.14 模板綜合應(yīng)用范例——簡易定時開/關(guān)的制作
3.14.1 任務(wù)
3.14.2 硬件設(shè)計
3.14.3 軟件設(shè)計
3.14.4 綜合程序模板的編程結(jié)束語
3.15 程序模板匯總庫說明
第4章 程序模板應(yīng)用編程
課題1 P89V51RX2單片機最小系統(tǒng)與數(shù)碼管的應(yīng)用(脈沖計數(shù)器的實現(xiàn))
本課題工程軟件設(shè)計
課題2 4×4鍵盤與YMl602液晶顯示屏在單片機最小系統(tǒng)上的應(yīng)用
本課題工程軟件設(shè)計
課題3 74LS595的級聯(lián)在戶用電子點陣屏中的應(yīng)用
本課題工程軟件設(shè)計
課題4 PCF8591和128×64液晶顯示器在數(shù)據(jù)采集與顯示上的應(yīng)用
……
第5章 單片機外圍接口電路應(yīng)用
第6章 工程應(yīng)用實例
附錄
參考文獻
溫馨提示
程序模板這一概念沿用于Windows的C++編程,人們在計算機應(yīng)用程序的開發(fā)過程中常常要用到重復(fù)的代碼,為降低勞動強度,提高應(yīng)用程序的開發(fā)速度和效率,基礎(chǔ)軟件工程師們將常用的Windows應(yīng)用程序的基礎(chǔ)代碼編成程序框架。如wind。Ws的窗口程序,就包含最小化、最大化、菜單欄等常用工具,將這些常用的工具全部編人到一個工程程序中,就形成了框架程序模板。程序員就在這個基礎(chǔ)上找到規(guī)定的程序接口,將自己的功能程序代碼加入其中,這樣就很快地開發(fā)出了Windows應(yīng)用程序。學(xué)過VC++編程的讀者一定還清楚地記得,在開發(fā)程序的第一步就是創(chuàng)建程序框架。到了VB、BorandC++Buiider、Dclphi等編譯軟件,其窗口程序模板和控件包程序模板做得更加完善,程序員只要將這些程序模板組裝起來,就誕生一個完好的應(yīng)用程序(不管何種硬件,只要是計算機上裝有windows操作系統(tǒng)就行),編程工作就變得如此簡單。
我一直在想,單片機的程序編寫是不是可以借鑒Windows的程序編寫模式呢?我看是可以的!那為什么前人沒有摸仿Windows的程序編寫模式呢?我想主要是由于單片機內(nèi)腔太小,程序太簡單,如果采用程序模板好象沒有多大意義。但是今天我覺得有這個必要,至少就我個人而言有這個必要,因為我在做工程程序時常常要將前面寫好的工程程序代碼復(fù)制到新的工程中,然后刪除不要的程序代碼,加入新的功能代碼,就這樣節(jié)約了大量的時間,從而在做新工程時就不需要每次另起爐灶。如果引進程序模板,就可以連刪除程序代碼這一工作都可以省略。在一個全新的單片機程序框架上編程,只需要在框架程序中加人工程需要的功能代碼即可。這樣對于一個單片機程序設(shè)計員來說,不需要了解太多的單片機內(nèi)部功能,只要調(diào)用功能模塊函數(shù)就可以實現(xiàn)其功能。