出版時(shí)間:2008-9 出版社:機(jī)械工業(yè)出版社 作者:何宗彬 頁數(shù):265
Tag標(biāo)簽:無
前言
在后PC時(shí)代,單片機(jī)發(fā)展之迅速超乎想象。今天的單片機(jī)已經(jīng)是嵌入式領(lǐng)域最為重要的分支之一,其應(yīng)用領(lǐng)域日趨廣泛。從日常生活用品到航天航空,無處不見其蹤影。在全球范圍內(nèi),單片機(jī)的出貨量持續(xù)增長,2007年約為90億片。在我國,單片機(jī)技術(shù)人員數(shù)以百萬計(jì)。在某種程度上,單片機(jī)的開發(fā)相比于DSF(數(shù)字信號(hào)處理器)、ARM、FPGA(現(xiàn)場可編程門陣列)等其他嵌入式處理器的開發(fā)相對(duì)簡單。但事實(shí)上,我國的單片機(jī)開發(fā)者卻在實(shí)踐中遭遇著更多的迷茫,然而令人振奮的是他們也在試圖尋找答案?! ‘?dāng)前,很多參考書都對(duì)眾人皆知的知識(shí)重復(fù)講述,但在重要的細(xì)節(jié)與概念上避而不談,也就不能為開發(fā)者撥開迷霧。作者以自己從事單片機(jī)開發(fā)的親身經(jīng)歷,盡量對(duì)每一個(gè)知識(shí)點(diǎn)都能為讀者解答疑問。這些知識(shí)有些已經(jīng)被忽視,而有些已經(jīng)被許多開發(fā)者作為疑問在網(wǎng)絡(luò)等途徑上提出?! ∧欠襁m合本書 首先感謝您能打開本書。 作為眾多講述單片機(jī)開發(fā)書籍中的一本,我希望《8位單片機(jī)開發(fā)——技術(shù)、技巧與規(guī)范》一書能真正地給我的讀者帶來驚喜與收獲。本書不是可以被膜拜的圣典,更不是高手手冊(cè),但它也許可以讓我的讀者閱讀并試驗(yàn)后說:“哦,原來是這樣……”。
內(nèi)容概要
《8位單片機(jī)開發(fā):技術(shù)、技巧與規(guī)范》介紹了完整的單片機(jī)開發(fā)流程與系統(tǒng)設(shè)計(jì)方法;利用Multisim、Proteus等工具軟件進(jìn)行開發(fā)前的仿真評(píng)估;使用Protel繪制原理圖及PcB圖,并進(jìn)行信號(hào)完整性分析;使用Keil單片機(jī)開發(fā)工具進(jìn)行工程開發(fā)與組織;單片機(jī)開發(fā)中重要的C語言特性;Cx5l高級(jí)語言特性以及如何使用RTX51。高質(zhì)量的單片機(jī)開發(fā)首先需要開發(fā)者的經(jīng)驗(yàn)與技巧,但也需要正確的開發(fā)規(guī)范與流程保證。《8位單片機(jī)開發(fā):技術(shù)、技巧與規(guī)范》也介紹了如何使用工具軟件(如使用CVS、PC—L,int等)來保證代碼質(zhì)量,同時(shí)在附錄中給出了遵循,MISRAC:2004的Cx51編程規(guī)范。
書籍目錄
前言第1章 單片機(jī)開發(fā)基礎(chǔ)1.1 單片機(jī)基礎(chǔ)1.1.1 單片機(jī)的發(fā)展過程1.1.2 單片機(jī)的發(fā)展趨勢1.1.3 單片機(jī)主流產(chǎn)品系列1.2 8051內(nèi)核結(jié)構(gòu)1.3 8051存儲(chǔ)器1.3.1 8051存儲(chǔ)器分類1.3.2 典型8051單片機(jī)存儲(chǔ)器1.3.3 擴(kuò)展80C51單片機(jī)存儲(chǔ)器1.3.4.Philips80C5lMx單片機(jī)存儲(chǔ)器1.3.5 數(shù)據(jù)存儲(chǔ)器1.3.6 程序存儲(chǔ)器1.4 單片機(jī)系統(tǒng)設(shè)計(jì)方法1.4.1 單片機(jī)系統(tǒng)的生命周期1.4.2 單片機(jī)系統(tǒng)開發(fā)過程1.5 單片機(jī)系統(tǒng)硬件設(shè)計(jì)1.5.1 硬件設(shè)計(jì)內(nèi)容1.5.2 硬件設(shè)計(jì)要點(diǎn)1.6 本章回顧第2章 電路仿真2.1 Multisim簡介2.2 Multisim功能簡介2.3 Mulltisim電路仿真實(shí)例2.3.1 繪制仿真電路圖2.3.2 仿真電路2.3.3 分析電路2.3.4 生成報(bào)告2.4 Protel99電路仿真2.5 本章回顧第3章 單片機(jī)系統(tǒng)仿真3.1 Proteus簡介3.2 ProteusISIS功能簡介3.3 ProteusISIS單片機(jī)仿真實(shí)例3.3.1 繪制仿真原理圖3.3.2 程序設(shè)計(jì)3.3.3 程序調(diào)試3.4 其他仿真方式3.4 1Muhisim10單片機(jī)仿真3.4.2 KeilixVision3單片機(jī)仿真3.5 本章回顧第4章 原理圖與PCB設(shè)計(jì)4.1 Protel99簡介4.2 原理圖設(shè)計(jì)4.2.1 原理圖設(shè)計(jì)步驟4.2.2 原理圖設(shè)計(jì)規(guī)則4.2.3 Protel99設(shè)計(jì)環(huán)境4.2.4 Protel99原理圖設(shè)計(jì)4.3 PCB設(shè)計(jì)4.3.1 PCB設(shè)計(jì)步驟4.3.2.Protel99PCB設(shè)計(jì)4.4 PCB信號(hào)完整性分析4.4.1 信號(hào)完整性簡介4.4.2 Protel99信號(hào)完整性分析工具4.4.3 Protel99信號(hào)完整性分析步驟4.5 本章回顧第5章 Keil開發(fā)工具5.1 Keil開發(fā)工具簡介5.2 KeilixVision3IDE5.2.1 使用Keil~~Vision3IDE的開發(fā)步驟5.2.2 利用KeiltxVision3IDE進(jìn)行工程組織5.2.3 KeiltxVision3IDE其他功能5.2.4 KeiltrVision3.IDE使用技巧5.2.5 Keil“Vision3IDE支持的文件類型5.3 CxSl優(yōu)化編譯器5.3.1 使用e語言開發(fā)的優(yōu)勢5.3.2 Cx51控制命令5.4 Ax51宏匯編器5.5 BL51/Lx51鏈接/重定位器5.5.1 鏈接/重定位器的作用5.5.2 代碼分組5.5.3 數(shù)據(jù)覆蓋5.6 LIBx51庫管理器5.7 目標(biāo)HEX轉(zhuǎn)換器5.7.1 OH5I/OHx5l目標(biāo)HEX轉(zhuǎn)換器5.7.2 0C51分組目標(biāo)文件轉(zhuǎn)換器5.8 uVision3調(diào)試器5.9 Monitor-515.10 RTX-51實(shí)時(shí)操作系統(tǒng)5.11 本章回顧第6章 CxSl語言擴(kuò)展及預(yù)處理6.1 存儲(chǔ)區(qū)。6.1.1 ROM-6.1.2 片上RAM6.1.3 片外RAM6.1.4 Far存儲(chǔ)區(qū)6.1.5 SFR存儲(chǔ)區(qū)6.2 存儲(chǔ)模式6.2.1 Small6.2.2 CompactI6.2.3 Large6.3 存儲(chǔ)類型6.3.1 明確指定存儲(chǔ)類型6.3.2 使用默認(rèn)存儲(chǔ)類型6.4 Cx51擴(kuò)展的關(guān)鍵字6.5 類型限定詞6.5.1 const6.5.2 volatile6.6 數(shù)據(jù)類型6.7 指針6.7.1 通用指針6.7.2 指定存儲(chǔ)區(qū)的指針6.8 函數(shù)聲明6.8.1 參數(shù)與堆棧6.8.2 參數(shù)與寄存器6.8.3 返回值6.8.4 存儲(chǔ)模式6.8.5 寄存器組6.8.6 訪問寄存器組6.8.7 qp斷函數(shù)6.8.8 可重人函數(shù)6.8.9 alien(PIJM-51)函數(shù)6.8.10 實(shí)時(shí)任務(wù)函數(shù)6.9 預(yù)處理器6.9.1 預(yù)處理命令6.9.2 宏定義6.9.3 文件包含6.9.4 條件編譯6.10 本章回顧第7章 重要的C語言特性7.1 跳轉(zhuǎn)輔助手段7.1.1 continue7.1.2 break7.1.3 goto7.2 關(guān)jptypedef7.2.1 區(qū)別于#define7.2.2 使用typedef7.3 指針7.3.1 基本概念7.3.2 指針運(yùn)算7.3.3 指針與數(shù)組7.3.4 指針與結(jié)構(gòu)體7.3.5 指針與函數(shù)7.4 變量的作用域7.5 變量的生存期7.6 關(guān)于static7.7 理解復(fù)雜的C語言聲明7.8 位操作7.8.1 位運(yùn)算符7.8.2 位操作的作用7.8.3 位段7.8.4 位段與位運(yùn)算符的比較7.9 本章回顧第8章 Cx5l高級(jí)編程8.1 文件定制8.1.1 啟動(dòng)代碼8.1.2 變量初始化文件8.1.3 低級(jí)流I/O處理文件8.1.4 存儲(chǔ)器分配文件8.2 Cx51優(yōu)化器8.2.1 指定優(yōu)化等級(jí)8.2.2 使用絕對(duì)寄存器尋址8.2.3 利用寄存器傳遞函數(shù)參數(shù)8.2.4 代碼優(yōu)化等級(jí)8.2.5 鏈接器代碼封裝8.3 編寫適宜的代碼8.3.1 選擇合適的存儲(chǔ)模式8.3.2 顯式聲明存儲(chǔ)類型8.3.3 使用最小長度類型8.3.4 使用無型號(hào)數(shù)據(jù)類型8.3.5 盡量使用局部變量8.3.6 其他優(yōu)化方式8.4 與匯編程序的接口8.5 與PL/M-51的接口8.6 數(shù)據(jù)存儲(chǔ)格式8.6.1 處理器大小端8.6.2 bit、char、int、long存儲(chǔ)格式8.6.3 浮點(diǎn)數(shù)存儲(chǔ)格式8.6.4 指針存儲(chǔ)格式8.7 絕對(duì)地址訪問8.7.1 使用可訪問絕對(duì)地址的宏8.7.2 使用_at_關(guān)鍵字8.7.3 使用鏈接控制命令8.8 8051堆棧8.9 本章回顧第9章 RTX51實(shí)時(shí)操作系統(tǒng)9.1 RTX51基礎(chǔ)9.1.1 RTOS簡介9.1.2 前后臺(tái)系統(tǒng)9.1.3 多任務(wù)系統(tǒng)9.1.4 RTX51多任務(wù)系統(tǒng)9.2 RTX51基本概念9.2.1 RTX51任務(wù)管理9.2.2 RTX51i扣斷管理9.2.3 RTX51任務(wù)間通信9.2.4 信號(hào)9.2.5 郵箱9.2.6 信號(hào)量9.2.7 動(dòng)態(tài)存儲(chǔ)器管理爭2.8 時(shí)間管理9.3.RqN51技術(shù)參數(shù)9.4 RTX51編程參考9.4.1 函數(shù)總覽9.4.2 系統(tǒng)初始化9.4.3 任務(wù)管理9.4.4 扣斷管理9.4.5 等待函數(shù)9.4.6 信號(hào)函數(shù)9.4.7 消息函數(shù)9.4.8 信號(hào)量函數(shù)9.4.9 存儲(chǔ)器管理9.4.10 系統(tǒng)時(shí)鐘管理9.5 使用RTX51Tiny9.5.1 要求與限定9.5.2 配置RTX51tiny9.5.3 RTX51Tiny配置原則9.5.4 RTX51Tiny例程9.6 使用RTX51Full9.6.1 配置RTX51Full9.6.2 RTX51FuU例程9.7 本章回顧第10章 編寫高質(zhì)量的Cx51代碼10.1 一定需要高質(zhì)量的Cx51代碼嗎10.2 有ANSIC就足夠了嗎10.2.1 K&RC與ANSIC10.2.2 K&RC與ANSIC的區(qū)別10.2.3 不僅僅需要ANSIC10.3 不得不提的MISRA10.3.1 關(guān)于MISRAC10.3.2 MISRAC規(guī)范的主要內(nèi)容10.3.3 對(duì)MISRAc的思考10.4 利用PC-Lint進(jìn)行代碼檢查10.4.1 PC-Lint簡介10.4.2 安裝與設(shè)置PC-Lint10.4.3 集成PC-Lint到特定的工具10.4.4 對(duì)PC-Lint的思考10.5 代碼質(zhì)量的保證10.5.1 代碼的正確性10.5.2 代碼的可靠性10.5.3 代碼的可維護(hù)性10.5.4 代碼的高效性10.5.5 代碼的可測試性10.5.6 代碼的可移植性10.5.7 代碼的可擴(kuò)展性10.6 軟件版本控制系統(tǒng)10.6.1 軟件版本控制10.6.2 CVS簡介10.6.3 CVS與TortoiseCVS的獲取及安裝10.6.4 CVS操作的基本概念10.6.5 配置CVS服務(wù)器端10.6.6 測試CVS服務(wù)器端10.6.7 TortoiseCVS客戶端操作10.6.8 使用KeiluVision的CVS配置接口10.7 本章回顧附錄附錄A Cx51編程規(guī)范A.1 導(dǎo)言A.1.1 編寫目的A.1.2 規(guī)范的主要內(nèi)容A.1.3 縮寫和術(shù)語A.2 命名規(guī)則A.3 文件組織A.3.1 頭文件的結(jié)構(gòu)A.3.2 源文件的結(jié)構(gòu)A.3.3 目錄結(jié)構(gòu)A.3.4 其他A.4 程序版式A.4.1 空行A.4.2 代碼行A.4.3 代碼行內(nèi)的空格A.4.4 對(duì)齊A.4.5 長行拆分A.4.6 修飾符的位置A.4.7 注釋A.5 編程規(guī)則和建議A.5.1 表達(dá)式A.5.2 聲明和定義A.5.3 整數(shù)數(shù)據(jù)類型及操作A.5.4 字符操作A.5.5 浮點(diǎn)型A.5.6 語句A.5.7 類型轉(zhuǎn)換A.5.8 常量A.5.9 指針A.5.10 數(shù)組A.5.11 函數(shù)與宏A.5.12 控制語句A.5.13 內(nèi)存分配A.5.14 錯(cuò)誤處理A.5.15 斷言A.5.16 標(biāo)準(zhǔn)庫A.5.17 通用規(guī)則和建議附錄B Cx51運(yùn)行庫參考B.1 宏B.2 本征庫函數(shù)B.3 緩沖區(qū)處理庫函數(shù)B.4 字符類庫函數(shù)B.5 數(shù)據(jù)轉(zhuǎn)換類庫函數(shù)B.6 數(shù)學(xué)計(jì)算類庫函數(shù)B.7 存儲(chǔ)器分配類庫函數(shù)B.8 I/O流類庫函數(shù)B.9 字符串庫函數(shù)B.10 變長參數(shù)庫函數(shù)B.11 其他庫函數(shù)參考文獻(xiàn)
章節(jié)摘錄
第1章 單片機(jī)開發(fā)基礎(chǔ) 1.1 單片機(jī)基礎(chǔ) 單片機(jī)是計(jì)算機(jī)與大規(guī)模集成電路(Integrated Circuit,IC)技術(shù)高速發(fā)展的產(chǎn)物,是微型計(jì)算機(jī)的重要分支之一?! 纹瑱C(jī)常被稱為單片微型計(jì)算機(jī)(Single Chip Microcomputer,SCM),或微控制器單元(Micro-Controller Unit,MCU)。在有些領(lǐng)域,它也被稱為嵌入式控制器(Embedded-Controller Unit,ECU),甚至直接被稱為中央處理器(Central Processing Unit,CPU)。自20世紀(jì)80年代單片微型計(jì)算機(jī)引入我國以來,“單片機(jī)”這一稱謂已經(jīng)被廣大的技術(shù)開發(fā)者與教學(xué)工作者所接受,本書也將延用這一稱謂?! ∪绻麤]有特殊說明,本書中所指的單片機(jī)均是指8位單片機(jī)?! ?.1.1 單片機(jī)的發(fā)展過程單片機(jī)是后PC(個(gè)人計(jì)算機(jī))時(shí)代隨著電子計(jì)算機(jī)的發(fā)展而產(chǎn)生的。在20世紀(jì)70年代,電子計(jì)算機(jī)在數(shù)字邏輯運(yùn)算、推理、自動(dòng)控制等方面顯露出非凡的功能后,在工業(yè)控制領(lǐng)域也對(duì)計(jì)算機(jī)技術(shù)發(fā)展提出了新的要求,如面對(duì)控制對(duì)象、面對(duì)各種傳感器信號(hào)、面對(duì)人機(jī)交互操作控制能方便地嵌入到工業(yè)控制應(yīng)用系統(tǒng)中等。此時(shí),單片機(jī)應(yīng)運(yùn)而生。縱觀單片機(jī)的發(fā)展歷史,它大致經(jīng)歷了SCM、MCU與片上系統(tǒng)(System on Chip,SoC)三大階段: 1.SCM階段 SCM階段也是單片機(jī)的探索與完善階段。這一階段主要是尋求單片機(jī)最佳的體系結(jié)構(gòu)并進(jìn)行完善,“單片機(jī)”一詞也由此而來。在這期間,“創(chuàng)新模式”獲得了成功,它完全按嵌入式應(yīng)用要求設(shè)計(jì)全新的、滿足嵌入式應(yīng)用要求的體系結(jié)構(gòu)、微處理器、指令系統(tǒng)、總線方式、管理模式等?!皠?chuàng)新模式”奠定了SCM與通用計(jì)算機(jī)完全不同的發(fā)展道路。Intel公司的MCS-48、MCS-51就是按照“創(chuàng)新模式”發(fā)展起來的單片嵌入式系統(tǒng)?! ?/pre>編輯推薦
《8位單片機(jī)開發(fā):技術(shù)、技巧與規(guī)范》適合于單片機(jī)工程技術(shù)人員、有志于學(xué)習(xí)單片機(jī)開發(fā)的其他技術(shù)人員或高等院校相關(guān)專業(yè)學(xué)生使用。圖書封面
圖書標(biāo)簽Tags
無評(píng)論、評(píng)分、閱讀與下載
- 還沒讀過(52)
- 勉強(qiáng)可看(377)
- 一般般(644)
- 內(nèi)容豐富(2671)
- 強(qiáng)力推薦(219)