前 言
作為微型計算機的重要組成部分,單片機將一個計算機繫統集成在一塊芯片上,相當於一個微型的計算機,被廣泛應用到儀器儀表、工業自動化控制、通信設備、汽車電子與航空航天電子繫統、家用電器等領域中,成為生產、生活中不可缺少的部分。單片機作為科技發展的產物,自問世以來,已從最初的4位機、8位機發展到32位機,同時其體積更小、性能更好、功能更強大。目前,單片機正朝著高性能和多品種發展,在當前及以後相當長的時間內會持續活躍在市場上,人們正在不斷享受著單片機發展帶來的生活便利。
對單片機的學習已經成為人們,特別是青年一代必備的技能,學好單片機的基本理論及其技術,能夠讓讀者了解電子產品的工作原理及開發方法。
本書的特色如下。
(1)本書從基礎知識開始講解,由淺入深、重點突出,提供了大量程序實例,講解了Keil軟件的安裝與使用、單片機原理圖與PCB的繪制,理論聯繫實際,改善了單片機教材難學的問題,能夠讓讀者學以致用,使枯燥的學習變得生動有趣。
(2)本書的實例多數提供了原理圖,讀者能夠通過原理圖來焊接、連接電路進行實驗現像的測試,通過實踐進一步了解單片機及其外圍電路原理,了解程序的執行過程。
(3)本書對程序代碼進行了注釋,一方面有助於讀者掌握程序的編寫方法及結構,另一方面可根據注釋加深對語法的理解,從而產生聯想,讀者容易通過修改程序實現其他功能,進行單片機繫統的設計與開發。
本書從教學的角度出發,以51繫列單片機為硬件基礎,以C語言為軟件編程基礎,繫統地介紹了51單片機的基本知識與原理,通俗易懂、結構清晰,符合教學內容的要求。本書用簡單的例程激發讀者的興趣,注重應用,以實踐檢驗真理,提高讀者發現問題、分析問題的能力。
本書分為11章,從先進性和實用性出發,較全面地介紹了單片機的基本理論和設計應用,主要內容包括:第1章是概述,介紹了單片機的概念、單片機的發展過程及發展趨勢、單片機的型號及使用單片機點亮LED;第2章講述了51單片機的硬件繫統結構,對常用器件及邏輯門電路知識進行了介紹;第3章介紹了C語言的基礎知識,包括計算機的數進制轉換,C語言的語法結構及格式、函數及預處理;第4章介紹了單片機最小繫統設計,包括使用Altium Designer軟件對最小繫統進行原理圖繪制、PCB繪制,Keil μVision5編程軟件的使用;第5章介紹了定時器/計數器與中斷,講述了中斷繫統的結構及軟件設計、定時器/計數器的工作方式及軟件設計;第6章介紹了串行口通信,講述了串行口通信原理、工作方式、程序設計及調試工具的使用;第7章介紹了單總線接口技術,講述了單總線接口技術原理及應用的實現,包括實現唯一序列號、溫度測量、電池監控、數據存儲;第8章介紹了IIC總線接口技術,講述了如何通過單片機I/O口模擬IIC總線去連接控制各類具有IIC口的芯片;第9章介紹了SPI總線技術,講述了通過單片機模擬SPI總線連接各類SPI芯片的實例;第10章介紹了基於單片機外部總線的擴展原理,采用外加譯碼器芯片的方式充分擴展外部功能電路,並給出具體的應用實例;第11章介紹了單片機相關片上資源,講述了看門狗技術及單片機片上SPI、A/D轉換器、PCA/PWM模塊。
本書語言簡明扼要、通俗易懂,案例清晰、示例引導,具有很強的專業性、技術性和實用性,既可作為高等學校自動化、電氣工程、電子信息類等專業的基礎教材,也可作為相關工程技術人員學習的參考書。
本書由趙亮、李勝銘擔任主編,其中,第1~6章由趙亮編寫,第7~11章由李勝銘編寫,全書由趙亮負責整理與統稿。大連理工大學控制19級研究生王廣文、張澤新,17級本科生耿豹及18級本科生吳雙鵬參與了書中實例的驗證。本書的編寫參考了大量近年來出版的相關技術資料,吸取了許多專家和同人的寶貴經驗,在此向他們深表謝意。
由於單片機技術發展迅速,作者學識有限,書中難免有不完善和不足之處,敬請廣大讀者批評指正。
編 者