TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
AVR單片機原理與GCC編程實踐:智能小車的系統開發(簡體書)
滿額折

AVR單片機原理與GCC編程實踐:智能小車的系統開發(簡體書)

商品資訊

人民幣定價:45 元
定價
:NT$ 270 元
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:8 點
相關商品
商品簡介
名人/編輯推薦
目次

商品簡介

《AVR單片機原理與GCC編程實踐:智能小車的系統開發》以ATmega16單片機為藍本,AVR Studio 4和WinAVR為軟件開發平臺,針對AVR單片機各個功能部件的原理和應用,并結合Sunny2.0智能小車控制系統實例進行全面地講解。全書的主要內容有:AVR單片機概述、ATmega16單片機結構、AVR單片機開發環境、AVR單片機的GCC程序設計、ATmega16單片機系統的時鐘與電源管理、ATmega16單片機中斷系統、ATmega16單片機系統定時器及應用、AVR單片機的串行接口與應用、AVR單片機的ADC接口與應用、AVR單片機I/O接口應用、AVR單片機應用實踐、AVR單片機智能小車應用。每章節附有思考題,以供讀者練習。《AVR單片機原理與GCC編程實踐:智能小車的系統開發》配套光盤中附有所有章節的源程序,智能小車的電路原理圖,以及相關視頻等內容。
《AVR單片機原理與GCC編程實踐:智能小車的系統開發》適合作為普通高等學校的計算機、電氣信息類專業的培訓用書,也可以作為相關專業工程技術人員的技術參考書。

名人/編輯推薦

開發工具的選擇往往是學習AVR單片機面臨的第一個問題。《AVR單片機原理與GCC編程實踐——智能小車的系統開發(附光盤)》由杭和平、邵明剛、楊芳編著,介紹了AVRstudio 4.18和WinAVR(AVR GCC編譯器)。AVR Studio是ATMEL公司官方的開發工具,完全免費,支持眾多的調試下載工具,對AVR新器件的支持也是最及時的。
AVRGCC是AVR單片機的C/C++語言編譯器,GCC(GNU Compiler Collection),即開源的GNU編譯器集合。在開源免費的軟件中,GCC的編譯器優化程度可以說是做得最好的,同時它的bug數量也是最少的。WinAVR是基于windows平臺的免費GCC編譯器。它可以與AVR Stdio無縫集成。

單片機技術是一種應用性技術,一般電子產品的設計過程包括:首先考慮如何應用單片機的硬件資源、內部功能模塊實現產品的需求,或者設計外圍電路實現需求;其次要仔細閱讀單片機的技術手冊、相關資料,了解如何實現這些需求,具體涉及單片機的哪些模塊和寄存器、是否滿足需求;然后編寫代碼(軟件)完成這些功能,許多代碼語句是對單片機寄存器的讀寫。正確理解單片機的功能模塊和寄存器是編寫軟件的關鍵之一。
AVR單片機內部集成了許多實用的功能模塊,適合C語言編程,價格低廉,性價比高,目前在電子產品市場中占有重要地位,廣泛應用于各種電子產品中。
無論是從掌握單片機原理,還是從提高學習興趣、提高學習效率上,將學習的內容具體到一個綜合的實際對象上都是十分有益的。為此,我們開發了基于ATmega16單片機的Sunny2.0智能小車,作為學習ATmega16單片機的綜合載體。Sunny2.0智能小車集成了多種檢測和控制器件,幾乎涉及ATmega16單片機的所有內部資源,是AVR單片機學習和開發的理想對象。
AVR單片機中目前常用的有ATmega系列和ATtiny系列。ATtiny內部資源和I/O引腳較少,在家用電器等行業用途廣泛。ATmega系列單片機內部集成了常用的功能模塊,內部ROM、RAM、EEPROM選擇空間大,價格低廉,是具有很好性價比的8位單片機產品系列。ATmega8和ATmega16是AVR ATmega系列的早期的產品,也是其經典產品。但是,ATmega16有更多的I/O引腳,適用于較多輸入/輸出的系統。另一方面,它具有JTAG調試接口,并有價格低廉的調試工具,適合開發需要。
開發工具的選擇往往是學習AVR單片機面臨的第一個問題。本書介紹了AVR Studio 4.18和WinAVR(AVR GCC編譯器)。AVR Studio是ATMEL公司官方的開發工具,完全免費,支持眾多的調試下載工具,對AVR新器件的支持也是最及時的。
AVR GCC是AVR單片機的C/C++語言編譯器,GCC(GNU Compiler Collection),即開源的GNU 編譯器集合。在開源免費的軟件中,GCC的編譯器優化程度可以說是做得最好的,同時它的bug數量也是最少的。WinAVR是基于Windows平臺的免費GCC編譯器。它可以與AVR Stdio無縫集成。
AVR Studio配合WinAVR,集編輯、下載、仿真調試于一身,功能強大,沒有代碼量的限制,沒有時間的限制,沒有版權問題,是節約開發成本的首要選擇。
2011年,ATMEL公司推出新型全集成開發平臺AVR Studio 5,采用Microsoft Visual Studio Shell構架,集成AVR Software Framework源代碼庫、GNU C/C++編譯器和功能強大的模擬器,支持所有8位和32位AVR單片機。目前AVR Studio 5還在發展完善中,考慮到普及性以及開發者使用習慣等因素,本書只對AVR Studio 5的使用做了簡要說明。
本書基于Sunny2.0智能小車控制系統,對ATmega16單片機各個功能部件的原理和應用結合各種實例進行了敘述,所涉及內容涵蓋了ATmega16單片機的所有功能。特別針對ATmega16單片機中的定時/計數器1、時鐘和低功耗設計等內容作了專門的講解。
本書第1章由杭和平、楊芳共同編寫,第2章、第5章、第7章由杭和平編寫,第3章、第4章、第8章、第9章由邵明剛編寫,第6章、第10章、第11章、第12章由楊芳編寫。
在編寫過程中,參考了有關書籍、資料,在此對有關作者一并表示感謝。
本書配套光盤包含了Sunny2.0智能小車的電路圖、程序代碼、演示視頻,程序代碼均在AVR Studio 4+WinAVR上調試通過。作者已開通博客,將會定期解答讀者的問題,不斷添加智能小車的擴展電路圖及程序代碼,更好地和讀者交流。
限于作者水平,書中難免存在錯誤和疏漏之處,敬請讀者批評指正。

編 者

目次

前言
第1章 AVR單片機概述 1
1.1 單片機概述 1
1.1.1 單片機的結構與組成 1
1.1.2 單片機的分類和指標 3
1.1.3 AVR單片機 4
1.1.4 其他常用單片機系列 6
1.2 單片機的數制與編碼 7
1.2.1 進位計數制 8
1.2.2 進位計數制的相互轉換 9
1.2.3 二進制和十六進制數的運算 10
1.2.4 數碼和字符的代碼表示 13
1.3 ATmega16單片機的簡單應用系統 17
1.3.1 單片機的I/O電平 17
1.3.2 單片機電路中三極管的應用 19
1.3.3 單片機的一個簡單應用系統 19
1.4 基于AVR單片機的智能小車 20
1.4.1 概述 20
1.4.2 機械構造 20
1.4.3 設計原理 21
思考題 21

第2章 ATmega16單片機結構 23
2.1 ATmega16單片機內核結構 23
2.2 ATmega16單片機特點 24
2.3 ATmega16單片機引腳與封裝 25
2.3.1 ATmega16單片機的封裝 25
2.3.2 AVR單片機I/O端口的基本結構 29
2.3.3 ATmega16單片機的I/O端口寄存器 30
2.3.4 Sunny2.0智能小車I/O端口使用舉例 33
2.4 ATmega16單片機存儲器結構與編程 36
2.4.1 ATmega16單片機的程序存儲空間 36
2.4.2 ATmega16單片機的數據存儲空間 37
2.4.3 ATmega16單片機的EEPROM存儲空間 38
2.5 ATmega16單片機的熔絲位 41
思考題 43

第3章 AVR單片機開發環境 45
3.1 AVR單片機軟件開發工具 45
3.2 WinAVR簡介 46
3.3 ATmega16 JTAG與ISP接口 47
3.3.1 JTAG接口使用說明 48
3.3.2 ISP接口使用說明 52
3.4 AVR Studio 4使用簡介 54
3.5 AVR Studio 5使用簡介 59
3.5.1 創建項目 60
3.5.2 調試項目 63
3.5.3 創建ASF示例項目 69
3.6 AVR GCC的編譯過程 71
思考題 73

第4章 AVR單片機的GCC程序設計 74
4.1 AVR GCC基本語法介紹 74
4.1.1 AVR GCC程序設計語言概述 74
4.1.2 AVR C程序的基本結構 75
4.1.3 標識符和關鍵字 76
4.1.4 變量與數據類型 78
4.1.5 運算符和表達式 85
4.1.6 程序結構 91
4.1.7 數組、指針和結構體 96
4.1.8 函數 100
4.1.9 中斷服務程序 102
4.1.10 預處理 104
4.1.11 在C代碼中嵌入匯編語言 108
4.2 AVR Libc庫函數介紹 109
4.2.1 AVR Libc中對位操作的支持 109
4.2.2 AVR Libc對Flash訪問的支持 111
4.2.3 AVR Libc對EEPROM訪問的支持 112
4.2.4 AVR Libc對看門狗的支持 114
4.2.5 AVR Libc的數學庫 115
4.3 AVR GCC 段定義和使用 117
4.4 嵌入式C語言程序設計的注意事項 119
4.4.1 數據運算的溢出問題 119
4.4.2 數據類型轉換問題 120
思考題 121

第5章 ATmega16單片機系統的時鐘與電源管理 123
5.1 ATmega16單片機的時鐘 123
5.1.1 ATmega16單片機的時鐘結構 123
5.1.2 ATmega16單片機的時鐘源 125
5.2 ATmega16單片機的復位 130
5.2.1 ATmega16單片機復位概述 130
5.2.2 ATmega16單片機的復位源與相關寄存器 131
5.3 ATmega16單片機的低功耗設計——時鐘與電源管理 135
思考題 140

第6章 ATmega16單片機的中斷系統 141
6.1 中斷的基本概念 141
6.1.1 中斷的作用 141
6.1.2 中斷系統的響應過程 142
6.1.3 中斷系統的優先級 143
6.2 ATmega16單片機的中斷 143
6.2.1 ATmega16中斷源和中斷向量 143
6.2.2 中斷服務程序的編寫 145
6.3 ATmega16單片機的外部中斷 145
6.4 ATmega16外部中斷應用 148
思考題 150

第7章 ATmega16單片機系統定時器及應用 151
7.1 ATmega16單片機的定時/計數器概述 151
7.1.1 ATmega16定時/計數器的相關引腳 151
7.1.2 定時/計數器概念及小車應用 152
7.2 ATmega16單片機的定時/計數器1原理及應用 153
7.2.1 ATmega16單片機定時/計數器1(T/C1)原理 153
7.2.2 ATmega16單片機定時/計數器1的PWM輸出 157
7.2.3 ATmega16單片機定時/計數器1相關寄存器 159
7.2.4 ATmega16單片機定時/計數器1的工作模式 163
7.2.5 ATmega16單片機定時/計數器1的時序圖 167
7.3 ATmega16單片機的定時/計數器1的應用 168
7.3.1 T/C1作為外部事件計數器的應用 168
7.3.2 T/C1作為普通定時器的應用 170
7.3.3 T/C1作為輸入捕捉的應用 173
7.3.4 T/C1作為PWM輸出的應用 176
7.3.5 T/C1應用小結 178
7.4 ATmega16單片機的定時/計數器0和2原理 179
7.4.1 8位定時/計數器的特性與結構 179
7.4.2 8位定時/計數器T/C0相關的寄存器 181
7.4.3 8位定時/計數器T/C0的工作模式 184
7.4.4 8位定時/計數器T/C0的應用 186
7.4.5 8位定時/計數器T/C2簡介 190
思考題 193

第8章 AVR單片機串行接口與應用 195
8.1 串行通信基礎知識 195
8.1.1 并行通信和串行通信 195
8.1.2 異步通信和同步通信 196
8.1.3 單片機串行通信傳輸方式 197
8.1.4 串行數據通信的傳輸速率 198
8.2 ATmega16的USART接口及應用 198
8.2.1 USART接口概述 199
8.2.2 異步傳輸模式 200
8.2.3 USART寄存器說明 204
8.2.4 異步USART應用實例 209
8.2.5 單片機和PC機通信 212
8.3 ATmega16的SPI接口及應用 217
8.3.1 SPI串行總線介紹 217
8.3.2 ATmega16的SPI接口概述 217
8.3.3 SPI寄存器說明 219
8.3.4 SPI的工作模式 221
8.3.5 SPI應用實例 223
8.4 ATmega16的TWI接口及應用 226
8.4.1 I2C總線概述 226
8.4.2 TWI概述及寄存器說明 229
8.4.3 TWI的使用方法 232
8.4.4 TWI應用實例 235
思考題 240

第9章 AVR單片機ADC接口與應用 241
9.1 ATmega16的ADC概述 241
9.2 ATmega16與ADC相關的寄存器 243
9.3 ADC應用要點 247
9.4 ADC應用舉例 249
思考題 253

第10章 ATmega16的I/O接口應用 255
10.1 人機接口 255
10.1.1 LED接口 255
10.1.2 LCD接口 259
10.1.3 按鍵接口 267
10.2 數字I/O接口 272
10.2.1 光電隔離接口 272
10.2.2 蜂鳴器及其接口 273
10.2.3 功率輸出(繼電器)接口 274
思考題 276

第11章 AVR單片機應用實踐 277
11.1 位置檢測元件與應用 277
11.2 直流電動機的控制 280
11.3 光敏電阻的應用 285
11.4 熱敏電阻的應用 288
思考題 293

第12章 AVR單片機智能小車應用 294
12.1 單片機系統設計的步驟 294
12.2 Sunny2.0智能小車簡介 295
12.2.1 Sunny2.0智能小車實物圖 295
12.2.2 功能說明 296
12.2.3 系統結構框圖 297
12.3 智能小車硬件設計 297
12.3.1 車體介紹 297
12.3.2 單片機控制板 297
12.3.3 系統擴展板 298
12.3.4 Sunny2.0小車ATmega16硬件資源分配 298
12.4 智能小車控制板功能模塊說明 299
12.4.1 電源 299
12.4.2 單片機電路及JTAG接口電路 301
12.4.3 小車電動機驅動電路及控制編程 302
12.4.4 多路模擬開關接口電路及編程 305
12.4.5 智能小車測距 309
12.4.6 智能小車障礙檢測 317
12.4.7 LED數碼管顯示 318
12.4.8 電池電壓檢測 318
12.5 智能小車擴展板功能模塊說明 319
12.6 利用超聲波傳感器模塊實現倒車功能例程 322
思考題 329
附錄 智能小車的電路原理圖 330
參考文獻 334

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

定價:100 270
海外經銷商無庫存,到貨日平均30天至45天