本書包括PIC18Fxxx係列的新發展,通過項目的方法展示如何開發基於單片機的應用。使用流行的PIC和MPLABXC8語言,通過大量的實踐項目介紹瞭項目開發的全周期,這些項目包括以太網編程、數字信號處理以及RFID技術。此外,本書包含瞭五十多個項目,涵蓋瞭無綫傳感器網絡應用的發展、SD卡項目和多任務處理。
譯者序
前言
第1章 微機係統 1
1.1 引言 2
1.2 微控製器係統 2
1.3 總結 6
1.4 練習 6
第2章 mikroC Pro for PIC編程語言 7
2.1 mikroC Pro for PIC程序的結構 8
2.2 數組 10
2.3 指針 11
2.4 結構體 11
2.5 C運算符 12
2.6 修改控製流 13
2.7 mikroC Pro for PIC的函數 17
2.8 mikroC Pro for PIC的庫函數 17
2.9 總結 18
2.10 練習 18
第3章 MPLAB X IDE和MPLAB XC8 C編程語言 20
3.1 PICDEM PIC18 Explorer開發闆 21
3.2 MPLAB X IDE 24
3.3 MPLAB XC8編譯器 24
3.4 總結 39
3.5 練習 39
第4章 微控製器程序開發 40
4.1 使用PDL和流程圖 41
4.2 舉例 44
4.3 用流程圖錶示for循環 48
4.4 總結 49
4.5 練習 49
第5章 初級PIC18項目 51
項目5.1 追逐LED 52
項目5.2 復雜閃爍的LED 56
項目5.3 隨機閃爍的LED 59
項目5.4 邏輯探頭 61
項目5.5 LED骰子 68
項目5.6 雙骰子項目 75
項目5.7 使用較少I/O引腳的雙骰子項目 80
項目5.8 7段數碼管計數器 89
項目5.9 兩位多路復用7段數碼管 94
項目5.10 4位多路復用7段數碼管 99
項目5.11 LED電壓錶 105
項目5.12 LCD電壓錶 112
項目5.13 産生聲音 124
項目5.14 生成自定義的LCD字體 131
項目5.15 數字溫度計 134
第6章 中級PIC18項目 137
項目6.1 帶4位多路復用7段數碼管的外部中斷事件計數器 138
項目6.2 帶鍵盤和液晶顯示器的計算器 150
項目6.3 高/低遊戲 164
項目6.4 産生波形 170
項目6.5 利用超聲波測量人體高度 199
項目6.6 迷你電子琴 208
項目6.7 帶LCD的頻率計數器 210
項目6.8 反應計時器 216
項目6.9 溫度和相對濕度測量 224
項目6.10 帶RS232串行輸齣的溫度計 234
項目6.11 微控製器和基於PC的計算器 245
項目6.12 帶LCD輸齣的GPS 250
項目6.13 開/關溫度控製 256
第7章 高級PIC18項目 263
項目7.1 藍牙串行通信之從模式 264
項目7.2 藍牙串行通信之主模式 286
項目7.3 RFID的使用 293
項目7.4 RFID感應鎖 308
項目7.5 復雜的SPI總綫項目 315
項目7.6 使用RTC芯片的實時時鍾 337
項目7.7 實時鬧鍾 350
項目7.8 SD卡項目——將文本寫入文件 360
項目7.9 SD卡溫度數據記錄器 378
項目7.10 使用圖形LCD——顯示各種形狀 386
項目7.11 在GLCD上顯示氣壓計、溫度計和高度計 397
項目7.12 在GLCD上繪製溫度變化麯綫 407
項目7.13 以太網的使用——基於Web瀏覽器的控製 412
項目7.14 以太網的使用——基於UDP的控製 422
項目7.15 數字信號處理——低通FIR數字濾波器項目 427
項目7.16 汽車項目——本地互聯網絡總綫項目 434
項目7.17 汽車項目——CAN總綫項目 446
項目7.18 多任務 470
項目7.19 步進電機控製項目——簡單的單極電機驅動 487
項目7.20 步進電機控製項目——單極電機的復雜控製 490
項目7.21 步進電機控製項目——簡單的雙極電機驅動 494
項目7.22 直流電機控製項目——簡單的電機驅動 500
項目7.23 測量電機速度的自製光學編碼器 504
項目7.24 閉環直流電機速度控製——開/關控製 507
前言微控製器是一個單芯片微處理器係統,其中包含數據和程序存儲器、串行和並行輸入/輸齣、定時器、外部和內部中斷,所有這些都集成在一個芯片中,其價格可以低至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章的翻譯。由於時間緊張和譯者的水平所限,難免存在偏差和失誤,懇請讀者批評指正。
對於我這個在電子設計領域摸爬滾打多年的愛好者來說,《PIC微控製器項目設計:C語言實現(原書第2版)》就像一塊金礦,裏麵蘊藏著豐富的設計思路和實現技巧。這本書的特點在於,它並沒有僅僅停留在“如何使用”層麵,而是深入到瞭“為什麼這麼設計”和“如何優化設計”的層麵。它所提供的項目,每一個都經過精心設計,不僅能夠實現基本功能,更包含瞭許多值得學習的工程實踐經驗。 我尤其喜歡書中關於傳感器接口和通信協議的章節。在現代嵌入式係統中,傳感器和通信是不可或缺的部分。書中對各種常用傳感器的接口原理和C語言驅動程序的編寫進行瞭詳細的講解,讓我能夠快速地將各種傳感器集成到我的項目中。同時,書中對UART、SPI、I2C等通信協議的深入剖析,以及如何用C語言來實現這些協議,為我解決實際項目中的通信難題提供瞭強有力的支持。這本書讓我感受到,學習不僅僅是記憶,更是理解和運用。它讓我對PIC微控製器的理解進入瞭一個新的層次。
評分對於我這樣一個有著一定硬件基礎,但缺乏實際項目經驗的工程師來說,《PIC微控製器項目設計:C語言實現(原書第2版)》的價值簡直是無價的。書中提供的那些精心設計的項目,從簡單的LED閃爍到復雜的電機控製,再到通信協議的實現,每一個都循序漸進,層層遞進。這不僅讓我能夠將理論知識轉化為實際操作,更讓我看到瞭PIC微控製器在現實世界中的巨大潛力。 我最喜歡的部分是書中對項目開發流程的梳理。它不僅僅是告訴你“怎麼做”,更重要的是告訴你“為什麼這麼做”。從需求分析,到硬件選型,再到軟件設計和調試,書中的每一個環節都充滿瞭作者的經驗總結。特彆是關於調試的部分,書中分享瞭許多實用的技巧,比如如何利用示波器和邏輯分析儀來定位問題,以及如何通過代碼邏輯分析來排查bug。這些都是在實際開發中非常寶貴的經驗。我曾經在自己的小項目中遇到過一些難以解決的bug,但通過書中提到的方法,我都能迎刃而解。這讓我感到,學習這本書不僅僅是學習技術,更是學習一種解決問題的思維方式。
評分自從我拿到《PIC微控製器項目設計:C語言實現(原書第2版)》這本書,我感覺自己就像擁有瞭一位經驗豐富的導師。它不僅僅是一本技術書籍,更像是一份詳盡的實踐指南。我一直在尋找一本能夠將PIC微控製器的理論知識與實際項目應用緊密結閤的書籍,而這本書恰好滿足瞭我的需求。書中豐富的項目案例,涵蓋瞭從簡單的硬件控製到復雜的數據處理,讓我能夠清晰地看到PIC微控製器在各種場景下的應用潛力。 最令我印象深刻的是,書中對每一個項目的講解都非常細緻,包括硬件電路的設計、C語言程序的編寫、以及軟件的調試過程。它讓我明白瞭,一個完整的項目開發不僅僅是寫幾行代碼那麼簡單,還涉及到很多工程化的思考。例如,書中在介紹中斷處理時,不僅給齣瞭如何編寫中斷服務程序,還詳細分析瞭中斷的優先級、嵌套以及可能齣現的時序問題,這讓我對中斷有瞭更深刻的理解。此外,書中還提供瞭一些進階的項目,讓我能夠挑戰自我,不斷提升自己的技能水平。
評分這本書的齣版,無疑為我這個PIC微控製器初學者打開瞭一扇扇通往實踐的大門。在接觸這本書之前,我對PIC的瞭解僅限於“它是一種微控製器”,僅此而已。市麵上關於微控製器的書籍琳琅滿目,但很多要麼過於理論化,要麼實例過於簡單,難以讓我産生深入學習的動力。這本《PIC微控製器項目設計:C語言實現(原書第2版)》則完美地解決瞭我的痛點。它並非枯燥的理論堆砌,而是緊密圍繞著“項目設計”這一核心,從最基礎的原理講解,到具體項目的代碼實現,再到調試技巧的分享,都做到瞭詳盡而易懂。 我尤其欣賞書中對C語言在PIC上的應用的細緻描繪。很多時候,我們學習單片機,最終目的都是要用編程去控製它,而C語言無疑是應用最廣泛的語言之一。書中並沒有僅僅羅列C語言的語法,而是將其與PIC的硬件資源巧妙地結閤起來。例如,在介紹GPIO端口控製時,書中不僅給齣瞭直接操作寄存器的代碼,還介紹瞭更高級的抽象層實現,這讓我能夠理解底層原理,也能快速上手開發。更讓我驚喜的是,書中對各種外設的驅動也做瞭詳細的講解,比如ADC、定時器、UART等,這些都是實際項目中必不可少的部分。通過書中的實例,我能夠清晰地看到,如何一步步地將這些外設集成到我的項目中,並實現預期的功能。這不僅僅是學習知識,更是一種能力上的提升。
評分這本書簡直是為想要係統學習PIC微控製器開發的讀者量身定做的。它以C語言為載體,帶領讀者一步步走進PIC的世界,從最基礎的硬件結構講到復雜的應用開發,讓整個學習過程充滿瞭成就感。我之前也翻閱過一些其他的PIC書籍,但很多都停留在概念層麵,或者例子過於零散。這本書則不同,它提供瞭一整套從入門到進階的項目化學習路徑。 我特彆贊賞書中對每一個項目都進行瞭詳細的講解,從原理分析到代碼實現,再到實際運行效果的預期,都做瞭清晰的闡述。這使得我在學習過程中,不僅能夠理解代碼的含義,更能明白代碼背後所代錶的硬件操作和邏輯。比如,書中關於ADC采集的章節,不僅給齣瞭完整的代碼,還詳細解釋瞭采樣率、轉換精度等參數的意義,以及如何根據實際需求進行配置。這樣的深入講解,讓我能夠舉一反三,觸類旁通。而且,書中還提供瞭配套的資源,比如源代碼和原理圖,這為我進行實際操作提供瞭極大的便利。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有