前言微控制器是一個單芯片微處理器系統,其中包含數據和程序存儲器、串行和并行輸入/輸出、定時器、外部和內部中斷,所有這些都集成在一個芯片中,其價格可以低至2.00美元。大約40%的微控制器應用在辦公自動化中,例如,PC、激光打印機、傳真機、智能電話等。大約1/3的微控制器存在于消費類電子產品中,如CD播放器、高保真設備、視頻游戲、洗衣機、廚具等產品。通信市場、汽車市場和軍事設備共享其余的應用領域。
目前有許多不同類型的微控制器,它們是由不同的制造商制造的。本書介紹了Microchip科技公司開發和制造的高端8位微控制器PIC18F系列。本書中的項目使用了非常流行的PIC18F45K22微控制器,在本書中也給出了許多初級、中級和高級項目。大多數項目都是使用流行的mikroCProforPIC編譯器及MPLABXC8編譯器開發的,所有項目都有完整的文檔,書中為每個項目提供以下內容:項目介紹、項目硬件(及適當的項目框圖)、項目PDL、項目程序,對于一些項目,還提出了可能的修改和改進建議。所有的項目都已經過了測試,可以正常工作。
在閱讀本書時,C編程語言的知識是很有用的,至少熟悉PIC16F系列中的一個微控制器也是有好處的,此外,不需要匯編語言編程知識,因為書中的所有項目都是基于C語言的。
本書面向學生、實習工程師和有興趣使用PIC系列微控制器開發基于微控制器項目的愛好者。鑒于篇幅所限,我已經嘗試在書中加入了盡可能多的項目。
第1章介紹了微控制器的基本特性。
第2章提供了一個有關C語言的簡短教程,然后介紹了本書中提供的項目所使用的流行的mikroCProforPIC編程語言和編譯器的特性。
第3章是關于MPLBXIDE和XC8編程語言及編譯器的介紹。本書中的大多數項目都提供了mikroCPro和XC8程序清單,讀者應該能夠輕松地從一種語言轉換到另一種語言。
第4章描述了常用的程序開發工具,如PDL和流程圖,關于這兩個工具都給出了示例。
第5章給出了使用PIC18F45K22微控制器的初級項目。在本章中,這些項目包括簡單的LED、7段數碼顯示屏、LCD、音響項目等。
第6章提供了中級項目。本章中的項目包括使用中斷、使用鍵盤、實時生成波形、串行通信、GPS數據解碼、各種總線系統等。
第7章提供了更多的高級項目。本章涵蓋的項目主要包括使用藍牙通信、RFID、實時時鐘、圖形LCD、SD卡,以及基于以太網的項目CAN總線、微控制器系統中的多任務、步進電機和直流電機的項目。雖然關于電機的項目不是最先進的,但在本章中盡量給出了完整的內容。
致謝本書中的以下材料在相應版權持有人的許可下進行了轉載,未經他們允許,不得以任何方式轉載或復制。
圖3.1和圖3.12摘自Microchip科技公司的PIC18(L)F2X/4XK22(DS41412F)數據手冊和Microchip科技公司的網站www.microchip.com。
圖6.48取自Parallax公司的網站。
圖6.8、圖7.13、圖7.28、圖7.30、圖7.63和圖7.113取自mikroElektronica網站。
PIC?、PICSTART?和MPLAB?是Microchip科技公司的商標。
譯者序在現代工業環境中,隨著微控制器的高速發展,新的控制技術已被廣泛使用,它帶動著工業自動化和控制領域向工業4.0方向迅速發展,因此微控制器的開發對提升產品性能和降低制造成本都有著舉足輕重的影響。
要想利用微控制器對控制設備進行開發,不僅要掌握好微控制器的相關知識,還要積累各方面的經驗,包括硬件設計、軟件設計,以及如何讓兩者巧妙結合協同工作。此外,若要確保設計的項目能在實際工作環境中正常運行,還需要考慮實際應用環境的特點、突發問題的應急處理方式及各種干擾因素的影響等,因此,只有通過全面的考慮才能將微控制器的應用開發推進到新的階段。
本書從實際設計應用出發,以Microchip科技公司的高端8位微控制器PIC18F系列為例,使用mikroCProforPIC編譯器和MPLABXC8編譯器,并將其應用在了50多個應用項目中。在內容編排上,從基礎層面向應用提高層面逐漸深化,初學者可以邊學邊用,循序漸進,從而掌握相關知識,提高自主學習和解決問題的能力。書中提供的所有項目不僅內容詳盡,考慮全面,而且還提供了完整的文檔,程序也都經過了全面測試和使用,具有非常高的參考價值。
正是由于本書的獨特性,才使我們決定將其翻譯并奉獻給讀者,希望能為涉及微控制器的電子類專業的本科生提供學習和參考資料,也為從事微控制器開發應用的工程師和電子愛好者提供幫助。
本書由西安電子科技大學的許輝、呂汶翻譯,其中許輝負責第1、2、6、7章的翻譯,呂汶負責第3、4、5章的翻譯。由于時間緊張和譯者的水平所限,難免存在偏差和失誤,懇請讀者批評指正。