C51單片機智能機器人實戰( 簡體 字) | |
作者:潘勇 | 類別:1. -> 電腦組織與體系結構 -> 單晶片 -> 8051 2. -> 電子工程 -> 機器人 |
出版社:清華大學出版社 | 3dWoo書號: 54645 詢問書籍請說出此書號! 有庫存 NT售價: 325 元 |
出版日:5/1/2021 | |
頁數:266 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302574309 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章單片機與機器人概述1
1.1微控制器與單片機1 1.2單片機的應用1 1.3單片機的發展趨勢2 1.4單片機的品種3 1.5機器人簡介6 思考題6 第2章單片機硬件原理7 2.1AT89C51單片機7 2.1.1AT89C51單片機的硬件組成7 2.1.2AT89C51單片機的引腳功能7 2.1.3AT89C51單片機的處理器9 2.1.4AT89C51單片機的存儲器10 2.1.5AT89C51單片機的時序11 2.1.6AT89C51單片機的最小系統11 2.2STC89C52RC單片機11 2.3STC12C5A60S2單片機12 2.3.1STC12C5A60S2單片機的硬件組成12 2.3.2STC12C5A60S2單片機的引腳功能13 2.3.3傳統8051過渡到STC12系列16 思考題17 第3章C51程序設計18 3.1標準C語言與C51語言18 3.2C51的數據類型18 3.3C51的運算量19 3.3.1常量19 3.3.2變量20 3.4C51的運算符23 3.4.1算術運算符23 3.4.2關系運算符24 3.4.3邏輯運算符24 3.4.4位運算符25 3.4.5賦值運算符25 3.4.6指針與地址運算符26 3.4.7逗號與條件運算符26 3.5C51的流程控制語句26 3.5.1C51的基本結構26 3.5.2if語句27 3.5.3switch/case語句28 3.5.4while語句30 3.5.5dowhile語句30 3.5.6for語句31 3.5.7break語句和continue語句32 3.5.8return語句32 3.6C51的函數32 3.6.1函數的定義32 3.6.2函數的調用33 3.7C51的數組與指針34 3.7.1數組34 3.7.2指針37 3.7.3絕對地址的訪問39 3.8工具軟件的基本使用41 3.8.1集成開發軟件Keil41 3.8.2虛擬仿真軟件Proteus47 3.8.3下載燒寫軟件STCISP53 思考題56 第4章單片機內部資源與常用接口57 4.1輸入/輸出57 4.1.1控制發光二極管顯示58 4.1.2檢測按鍵狀態60 4.1.3控制數碼管顯示63 4.2中斷67 4.2.1中斷源68 4.2.2控制中斷的特殊功能寄存器68 4.2.3中斷函數69 4.2.4中斷應用70 4.3定時/計數器71 4.3.1控制定時/計數器的特殊功能寄存器71 4.3.2定時/計數器應用72 4.4串行口78 4.4.1控制串行口的特殊功能寄存器78 4.4.2工作方式與波特率79 4.4.3串行口通信應用81 4.5并行擴展數據存儲器626485 4.5.1地址鎖存器芯片74LS37386 4.5.2數據存儲器芯片626486 4.5.3單片機與6264的接口與編程87 4.6并行擴展輸入/輸出芯片8255A89 4.6.1輸入/輸出芯片8255A簡介89 4.6.2輸入/輸出芯片8255A的控制字89 4.6.3單片機與8255A的接口與編程89 4.7并行擴展模數轉換器ADC080992 4.7.1模數轉換器技術指標92 4.7.2模數轉換器ADC080993 4.7.3單片機與ADC0809的接口與編程94 4.8液晶LCD160295 4.8.1LCD1602液晶顯示模塊95 4.8.2LCD1602液晶顯示模塊的引腳功能97 4.8.3LCD1602液晶顯示模塊命令與功能98 4.8.4單片機與LCD1602的接口與編程100 4.9溫度傳感器DS18B20104 4.9.1單總線104 4.9.2溫度傳感器DS18B20簡介105 4.9.3溫度傳感器DS18B20的工作時序106 4.9.4溫度傳感器DS18B20命令107 4.9.5單片機與DS18B20的接口與編程107 思考題112 第5章機器人結構與車體資源114 5.1機器人系統組成114 5.2機器人車體控制器116 5.3機器人車體傳感器117 5.3.1紅外傳感器的工作原理117 5.3.2機器人車體傳感器接口電路118 5.3.3機器人車體傳感器編程119 5.4機器人車體執行器120 5.4.1PWM控制直流電機的工作原理120 5.4.2機器人車體執行器接口電路121 5.4.3機器人車體執行器編程122 5.5機器人車體顯示器123 5.5.1機器人車體顯示器接口電路123 5.5.2機器人車體顯示器編程123 5.6機器人電源124 思考題125 第6章機器人通信板資源126 6.1通信板硬件組成126 6.1.1控制器127 6.1.2發光二極管、按鍵與蜂鳴器127 6.1.3液晶LCD12864與OLED128 6.1.4溫度傳感器DS18B20129 6.1.5無線通信129 6.1.6RS232串行口通信129 6.1.7通信板電源130 6.2串行口2131 6.2.1控制串行口2的特殊功能寄存器131 6.2.2串行口2通信應用133 6.3液晶LCD12864138 6.3.1LCD12864液晶顯示模塊138 6.3.2LCD12864液晶顯示模塊的引腳功能139 6.3.3LCD12864液晶顯示模塊命令與功能140 6.3.4單片機與LCD12864的接口與編程143 思考題148 第7章機器人無線通信149 7.1無線數字通信149 7.1.1電磁波傳播與損耗149 7.1.2分貝與分貝毫瓦150 7.1.3工作頻率與通信距離151 7.1.4無線通信芯片的技術指標151 7.2阻抗匹配與天線152 7.2.1阻抗與阻抗匹配152 7.2.2天線152 7.3調制方式153 7.3.1幅移鍵控153 7.3.2頻移鍵控153 7.3.3高斯頻移鍵控154 7.4SPI總線154 7.4.1SPI總線接口功能154 7.4.2SPI總線的工作原理154 7.4.3單片機SPI總線應用編程155 7.5短距離無線通信芯片NRF24L01156 7.5.1內部結構156 7.5.2引腳功能157 7.5.3工作模式158 7.5.4配置NRF24L01的SPI指令161 7.5.5NRF24L01的內部寄存器與功能162 7.5.6NRF24L01的數據包格式168 7.5.7NRF24L01短距離無線通信模塊168 7.5.8機器人點對點無線通信編程169 思考題179 第8章機器人智能循跡180 8.1機器人系統結構180 8.2地圖與功能描述181 8.3機器人智能循跡編程182 8.3.1智能控制邏輯與算法182 8.3.2智能循跡參考程序184 思考題191 第9章機器人智能超車192 9.1機器人系統結構192 9.2地圖與功能描述193 9.3機器人智能超車編程195 9.3.1智能控制邏輯與算法195 9.3.2智能超車參考程序198 思考題223 第10章機器人智能旅行224 10.1機器人系統結構224 10.2地圖與功能描述226 10.3機器人智能旅行編程228 10.3.1智能控制邏輯與算法228 10.3.2智能旅行參考程序231 思考題259 附錄A本書智能機器人零配件清單262 附錄B本書通信板電路原理圖264 參考文獻265 本書以C51單片機為例,從應用角度出發,詳細介紹了其片內硬件資源及工作原理,以及采用C51語言編程,重點介紹了單片機應用的各種技術實現,如輸入輸出、中斷、定時/計數、串行通信、并行擴展、模數轉換等,并在單片機虛擬仿真平臺 Proteus進行了設計與驗證。此外,本書還簡要介紹了開發工具Keil 、Proteus與 STCISP的使用。本書從實戰角度出發,設計了以增強型51單片機STC89/STC12為控制核心的移動智能機器人平臺,以物流分揀、無人駕駛和電腦鼠走迷宮為應用案例背景實現機器人的智能功能,可為讀者智能測控系統的軟硬件設計提供參考與借鑒。
本書可作為高等院校物聯網、機器人、計算機、通信、智能、電子電氣及自動化等專業單片機原理及應用、傳感器檢測技術、物聯網控制與通信技術、機器人技術及智能測控等課程的教材,也可作為計算機、電子以及智能車設計競賽的自學或培訓教材,還可供各類電子工程、自動化技術人員和計算機愛好者參考。 單片機自20世紀80年代問世以來,以其優異的性能在工業檢測與自動化控制、儀器儀表、網絡與通信、家用電器、汽車電子、醫療設備、物聯網及機器人等諸多領域得到廣泛的應用,已對人類社會產生重大影響。
由于Intel公司51內核的8位單片機獲得的巨大成功,以51內核技術為主導的單片機是目前我國多數高校都在講授的機型。隨著技術的進步,不斷有8位、16位以及32位的新型高性能單片機出現,有一種觀點認為現在已經可以選擇更高端的32位單片機作為單片機入門學習和講授的機型。然而,從實踐看,作者認為51內核單片機并未過時。 首先,51內核單片機具有極強的生命力。由于嵌入式計算機選型需要綜合考慮成本、體積、功能等各種因素,51內核單片機一直沒有退出應用,其依然在當前各個嵌入式領域占有重要位置。其次,作為單片機元祖級內核架構,經過數十年發展,51內核單片機做到了成本低廉、開發簡便、資料齊全。同時,其中央處理器架構和內部資源也在不斷演進和優化,增強型51內核單片機不斷涌現,功能更加強大。再次,隨著大數據、人工智能、云計算以及物聯網時代的到來,作為萬物互聯信息感知終端控制器的無線單片機很多依然在采用51架構,以滿足體積、成本、功耗等要求。最后,51內核已經開源,國內多家芯片公司都將其集成到自身產品中作為控制核心。綜上所述,51內核單片機依然是單片機入門學習的首選機型。 本書詳細介紹了美國Atmel公司的AT89C51單片機和國內宏晶科技的STC89C52RC與STC12C5A60S2單片機的工作原理及應用,并研發了嵌入式通信板和慧凈電子的電動小車組成移動機器人平臺,以單片機為控制核心實現若干智能功能。 1. 本書特點 (1) 本書以實用為宗旨。前4章用眾多的實例講解51單片機原理和硬、軟件開發技術。內容組織上綜合考慮讀者的認知規律和工程應用背景,原理闡述精煉,不追求面面俱到,而做到重點突出,真正強調應用,注重與主流技術接軌。在傳統并行接口技術內容上適度刪減,主要突出設計和編程思路,更多的內容是針對當前工程設計主流器件。后6章以機器人為平臺,以單片機為控制核心,綜合傳感器、無線通信、人工智能等當前物聯網及機器人主流技術,完成智能循跡、無人駕駛、迷宮搜索等若干機器人智能功能的軟硬件開發。 (2) 使用當前主流的開發工具。將先進的單片機虛擬仿真軟件Proteus用于單片機內部資源和常用外部接口的仿真實踐。編程語言方面,與匯編語言相比,C51語言具備諸多優點,因此本書的編程語言均采用C51。本書對C51的集成開發軟件Keil、虛擬仿真軟件Proteus和下載燒寫軟件STCISP從實際使用的角度進行了介紹。 (3) 精心設計項目,提升動手能力。擺脫驗證性、重復性實驗,部分借鑒全國大學生電子設計競賽控制題的思路精心設計項目。在計算機上即可完成前4章原理與接口的所有編程和仿真實驗而無須額外成本,讀者還可充分利用Proteus庫器件進一步學習部分主流器件開發。后6章使用通信板結合電動小車構建低成本移動機器人平臺,通過精心設計的智能題目,可以接觸到機器人智能應用的若干原型。參考程序均給出了詳盡注釋,有利于讀者對智能控制邏輯和算法的掌握。通過不斷提升和改進項目的設計,注重與工程應用背景的結合,可使讀者得到單片機智能機器人系統設計與調試的完整訓練。 2. 本書內容 本書共分10章。第1 章介紹有關單片機的基本概念、應用、發展趨勢,對目前流行的各類單片機品種及機器人概念進行簡單介紹。第2章對AT89C51單片機、STC89C52RC單片機以及STC12C5A60S2單片機片內的基本硬件結構及硬件資源進行介紹。第3章介紹C51語言程序設計基礎,同時介紹Keil 集成開發軟件、Proteus虛擬仿真軟件和STCISP下載燒寫軟件的使用。第4章介紹單片機內部集成資源、常用接口擴展資源及編程。第5、6章分別介紹機器人電動小車車體和嵌入式通信板的硬件資源及編程。第7章選擇一款經典無線通信模塊介紹機器人的無線通信功能及編程。第8章介紹機器人智能循跡功能的設計與編程實現。第9章對機器人智能超車、無線呼叫功能的設計與編程實現進行介紹。第10章介紹機器人智能旅行,完成路徑搜索和遠程監控功能的設計與編程。 3. 如何使用本書 對于51單片機的初學者來說,應該從本書的第1章開始進行學習,以了解51單片機的基本知識和使用方法,掌握51單片機典型的內部資源和擴展資源的硬件接口技術,以及C51語言編程技術,學完第1~10章,即可滿足從事單片機應用系統開發的基本要求。 對于已經具有一定51單片機基礎的讀者來說,可以直接從第5章開始學習,重點理解和掌握使用51單片機和C51語言開發融合感知、通信、拖動、交互技術的應用系統。同時,讀者可以進一步利用本書的機器人軟硬件平臺資源自行設計完成更多的智能項目。 建議本書的理論課安排為48學時左右,實驗課16學時。 4. 我們的經驗 學習單片機技術開發應用系統,關鍵是讓學習者迅速地找到適合自己的學習方法,并在第一時間看到自己的學習成果。機器人無疑是將技術性和趣味性結合最好的平臺,同時也是將傳感器技術、自動識別技術、單片機控制技術、通信技術乃至機械技術融為一體的優秀工程訓練載體。創新的第一步乃是模仿,讀者在不斷完成機器人各種智能功能的實踐中,逐漸提升軟硬件設計和系統調試能力,一步步進入單片機應用系統開發領域。 本書圖文并茂,實用性強,便于讀者練習和自學,適合作為高等院校物聯網、機器人、計算機、通信、智能、電子電氣及自動化等專業單片機原理及應用、傳感器檢測技術、物聯網控制與通信技術、機器人、計算機控制及智能測控等課程的教材,也適合作為計算機、電子以及智能車設計競賽的自學或培訓教材,還可供各類電子工程、自動化技術人員和計算機愛好者參考。 潘勇完成本書第1~10章全部章節內容的編寫,同時設計制作了機器人嵌入式通信板,并編寫了書中大部分調試程序。李志宏同學參與了第4章的編寫。李志宏、汪仁杰同學共同參與完成第8~10章的智能機器人系統軟件編寫、硬件調試與運行結果驗證。劉偉、秦福紅、姚尤斌、魏琰青、申傳鵬、高爽洲、王松、馬閱、李星光同學參與本書部分圖形的繪制及仿真案例的電路繪制與程序調試工作,在此一并表示感謝。同時感謝參考文獻和網絡資源的作者們,本書借鑒了他們的部分成果,他們的工作給了我很大的幫助和啟發。在此也要感謝慧凈電子提供的基礎技術資料和穩定的低成本電動小車平臺,從而能讓機器人的若干智能功能得到進一步發揮。天津大學劉開華教授、南開大學孫桂玲教授、高藝高級實驗師為提高書稿的質量,提出了不少寶貴的修改意見;本書出版得到了清華大學出版社張玥編輯和常建麗編輯的大力支持,在此表示衷心的感謝。 盡管作者力求完美,但限于自身水平,書中難免出現錯誤與疏漏之處,敬請廣大讀者批評指正。 潘勇2020年10月 |