51系列單片機應用軟件編程技術

出版時間:2009-4  出版社:北京航空航天大學  作者:李強  頁數(shù):446  

前言

嵌入式計算機系統(tǒng)是目前IP技術發(fā)展的熱點之一。隨著計算機技術的發(fā)展,IP技術從以PC為核心的、通用型、開放式的系統(tǒng)應用階段,走向以專用計算機為核心的,滿足特殊需要的,體積、功耗、性能受約束的嵌入式系統(tǒng)應用階段。無論是開放式系統(tǒng)還是嵌入式系統(tǒng),計算機都是由軟、硬件兩部分組成的。由硬件實現(xiàn)計算機的基本運算架構,由軟件最后確定應用系統(tǒng)的功能。開放式系統(tǒng)力求計算機硬件組成的通用化,軟件開發(fā)的標準化。這樣,可實現(xiàn)硬件生產批量化,軟件開發(fā)產業(yè)化。以此來降低計算機應用系統(tǒng)的開發(fā)、推廣成本,實現(xiàn)較高的性能價格比。但這樣的模式,使系統(tǒng)的整體優(yōu)化受到限制。它以最大限度地滿足用戶基本需求為目的,卻很難滿足用戶的某些特殊需要。直接的表現(xiàn),就是追求海量數(shù)據(jù)存儲、海量數(shù)據(jù)處理能力,而將體積和功耗優(yōu)化降為次要位置。如果應用目標有體積、功耗的限制,則開放式系統(tǒng)的應用效能受限,甚至無法使用。而嵌入式系統(tǒng)追求的是硬件組成的標準化,軟件開發(fā)的多樣化。硬件組成的標準化,使得嵌入式計算機系統(tǒng)的硬件組成,可以用滿足體積、能耗約束的,可以工業(yè)化批量生產的、廉價的器件組成;而后,用專用軟件確定系統(tǒng)的最后功能,滿足最終應用的特殊要求。這種模式,使得用戶需求和計算機系統(tǒng)優(yōu)化達到最佳組合。因此,嵌入式系統(tǒng)可以全方位地嵌入到自然環(huán)境和人類社會生活中。未來,它將有更加廣泛的應用前景。對于嵌入式系統(tǒng)而言,軟件是其核心內容。軟件緊密貫穿整個嵌入式系統(tǒng)體系,決定著它的功能、性能。由于嵌入式系統(tǒng)的軟件具有多樣性的特點,軟件開發(fā)時,涉及匯編語言編程技術、嵌入式C語言編程技術、系統(tǒng)管理軟件編程技術、嵌入式操作系統(tǒng)的應用編程技術、嵌入式數(shù)據(jù)庫技術,甚至,還涉及軟件工程等諸多方面。本書及其姊妹篇《51系列單片機管理軟件編程技術》一書(北京航空航天大學出版社將后續(xù)出版),從上述多方面對軟件編程技術進行詳細的專題討論。

內容概要

嵌入式系統(tǒng)領域里,51系列單片機的歷史較長,應用最為廣泛。并且,因其價格低廉,器件易于采購,開發(fā)工具完善,而受到眾多工程技術人員的青睞。    51系列單片機體系結構簡單,其應用復雜度適中,入門容易。因此,在嵌入式二次開發(fā)市場占據(jù)很大的份額,也擁有眾多的使用者。    本書以51單片機為基本的嵌入式應用平臺,全面研究嵌入式應用軟件的編程技術,探討嵌入式匯編語言編程、嵌入式C語言編程的特點,以眾多的應用實例為背景,探究嵌入式編程過程中的技術細節(jié)。    在本書的匯編語言部分,以單片機定時器、中斷、輸入、輸出等電路單元的驅動程序設計為實例,體現(xiàn)出在硬件驅動編程中,匯編語言為最自然語言的特點。    在本書的C語言部分,主要以過程設計為主線,探討C51語言軟件編程技術。主要內容有:嵌入式c51編譯特點、c源代碼的組織方式、開發(fā)模式、混合編程、代碼運行機制(程序切換)等。    本書可供讀者深入學習嵌入式軟件編程技術使用,也可作為高等院校嵌入式系統(tǒng)教學的參考書。

書籍目錄

第1篇  匯編語言程序設計 引言 第1章 深刻理解51單片機的指令系統(tǒng)   1.1 概述   1.2 單片機指令級邏輯結構   1.3 單片機的典型存儲結構   1.4 指令系統(tǒng)分析     1.4.1 指令體系結構     1.4.2 指令級計算機的工作機理     1.4.3 指令級數(shù)據(jù)表示   1.5 指令編碼   1.6 尋址方式   1.7 指令功能分析     1.7.1 數(shù)據(jù)傳送類指令     1.7.2 算術運算類指令     1.7.3 邏輯運算類指令     1.7.4 控制轉移類指令     1.7.5 位操作類指令     1.7.6 控制轉移指令的復合應用 第2章 查表和散轉程序設計技術   2.1 查表程序設計技術     2.1.1 查表編程概述     2.1.2 基本查表編程技術     2.1.3 擴展查表編程技術     2.1.4 擴展數(shù)據(jù)表查表編程技術   2.1.5 數(shù)據(jù)表元素擴展查表編程技術  2.2 散轉程序設計技術    2.2.1 應用軟件的整體構造    2.2.2 散轉基本編程技術    2.2.3 散轉程序的擴展編程技術    2.2.4 基本查表散轉程序編程技術    2.2.5 標記查表法散轉程序編程技術   2.3 AT24XX系列存儲芯片編程     2.3.1 AT24系列存儲芯片的特性     2.3.2 AT24系列芯片的讀/寫操作 第3章  中斷程序和單片機軟件抗干擾程序設計技術   3.1 中斷概述   3.2 中斷的基本編程技術   3.3 “定時查詢”中斷擴展編程技術   3.4  中斷的“外部中斷查詢”擴展技術   3.5 中斷編程實例   3.6 單片機軟件抗干擾技術概述   3.7 抗系統(tǒng)“死循環(huán)”技術    3.7.1 基本軟件看門狗技術    3.7.2 高級軟件看門狗技術  3.8 抗系統(tǒng)“跑飛”干擾技術    3.8.1 指令冗余法    3.8.2 軟件陷阱技術 第4章 定時/計數(shù)器編程技術  4.1 軟件定時器設計技術    4.1.1 軟件定時器的應用原理    4.1.2 軟件定時器的設計    4.1.3 軟件定時器的應用實例  4.2 硬件定時器設計技術    4.2.1 硬件定時/計數(shù)器的工作機理    4.2.2 實時定時/計數(shù)器的編程  4.3 超長時間實時定時器編程技術 …… 第5章 顯示接口編程技術 第6章 鍵盤接口編程技術 第7章 匯編語言編碼風格第2篇 C51程序設計 引言  第8章 C51語言基礎 第9章 C51程序設計基礎 第10章 C51編碼風格 第11章 數(shù)組、結構與指針 第12章 C51編程模式及程序測試 第13章 C51混合編程技術 第14章 程序切換技術參考文獻編后記

章節(jié)摘錄

插圖:第1篇 匯編語言程序設計引言迄今為止,筆者依然認為,匯編語言是理解單片機系統(tǒng)或者計算機系統(tǒng)工作機制的一把利器,也是進行單片機軟件開發(fā)的一個強大的工具。因為,匯編代碼直接工作在單片機的機器層次上,它將單片機看成是可以自動執(zhí)行指令的機器,用軟件去給它智慧,使它能夠完成目標管理、自動控制等應用工作。在硬件驅動的編程中,匯編語言是最自然的語言。雖然,在高級語言中,如c51語言中,提供了預定義的符號,如PO、P3.0等,還有宏和關鍵字,如PBYTE、AT等,用戶可以直接用這些符號、宏或關鍵字,在源程序中去描述硬件、訪問硬件。但是,抽象層次較高的高級語言,畢竟減弱了編程者對硬件工作機制的洞察力。在有實時性響應要求、或者時間精度要求較高的場合,或者進行外圍芯片驅動時,高級語言顯得并不那么直接,此時,匯編語言卻是對這種場合的自然表述工具。另外,高級語言要求編程者對編譯器等編程工具要有一定的理解,對編程者的軟件知識、軟件能力方面有一定要求。而用匯編語言可避免這些繁瑣,只要理解了單片機的基本工作機制,直接使用它,就可入門編程。編制較簡單的單片機軟件時,或者在編制接口驅動程序時,采用匯編語言不失為一個好的選擇。在軟件的移植應用方面,匯編語言也是不可缺少的工具。比如各種實時操作系統(tǒng)的移植中,那些與硬件緊密相關的代碼部分,或者高級語言編譯器所不能支持的代碼部分,還是需要用匯編語言來編制。因此,匯編語言是單片機中最基本的編程語言,是我們理解單片機工作機制的重要手段,也是理解單片機各種接口的軟件驅動和基本算法實現(xiàn)的基礎,更是解決軟件編程、軟件調試問題的最后手段。在單片機軟件設計中,它有不可替代的作用。掌握一種匯編語言,是掌握單片機技術或者其他計算機技術的一把鑰匙。

后記

非常感謝北京航空航天大學出版社對本書出版的支持。大家知道,單片機的出現(xiàn),是電子應用設計的一場革命性變革。它的出現(xiàn),使得控制電路的開發(fā)者可以用相對標準化的、可批量生產的單片機器件作為電路核心,設計出性價比較高的控制應用電路;在此基礎上,用控制軟件最終滿足各種各樣的控制應用需求。因此,控制軟件是單片機應用開發(fā)的核心,而控制軟件的編程技術在單片機軟件開發(fā)中占有舉足輕重的地位。編寫一本全面、系統(tǒng)地討論單片機軟件編程技術的專著,這是一種挑戰(zhàn)。筆者沿此思路,不斷地進行探索,工作之余,利用假期時間,收集了大量的資料,也做了大量的程序編制、測試工作,以便全面分析、驗證單片機編程中的一些關鍵技術點。編程技術具有實踐性很強的特點,它博大精深,如何在浩瀚的編程應用的海洋中,構建或選擇合適的案例,用比較生動的方式表達編程技術的要點,避免過多的冗長理論分析,使本書不失通俗性,并保證其內容的全面性、系統(tǒng)性,有一定的技術價值,是編撰本書的難點之一。筆者一直孜孜以懷地探索,驀然回首,已整理成章。這本書的編撰工作斷斷續(xù)續(xù),持續(xù)了較長的一段時間,期間不乏反復,幾易其稿,幾次更新內容。這項工作雖沒有放棄,但也沒料到,編撰工作會持續(xù)這么長時間,這是因為,當時的環(huán)境條件限制,以及本人對單片機編程技術的理解還沒有系統(tǒng)化、成熟化。當前,是單片機應用技術快速發(fā)展的時期,各種單片機器件不斷涌現(xiàn),價格日趨低廉,各種二次開發(fā)工具不斷出現(xiàn),編程技術也在日趨走向成熟,這一切,都為編程技術更好地表達提供了各種好的手段,也為編制這本書提供了良好的編程素材。在此情況下,經過一段時間的努力,終于編制成書。本書及《51系列單片機管理軟件編程技術》一書系統(tǒng)化地討論了單片機編程技術,內容基本覆蓋了單片機軟件編程工作中所涉及的方方面面的技術問題。當然,單片機編程技術也在不斷成熟、不斷發(fā)展,書中對一些編程技術問題的討論還不夠深入,論述還不夠全面,分析也不夠成熟,本人對編程技術的理解也待深化,但在本書編撰過程中,采用了實例、案例的分析方法,最終形成有關單片機編程問題的一個基本的系統(tǒng)化框架。希望讀者通過閱讀此書,能夠全面、系統(tǒng)地了解單片機編程技術,使其對編程工作有所裨益,這是本書編撰的最終目的。

編輯推薦

《51系列單片機應用軟件編程技術》由北京航空航天大學出版社出版。

圖書封面

評論、評分、閱讀與下載


    51系列單片機應用軟件編程技術 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網 手機版

京ICP備13047387號-7