注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)操作系統(tǒng)理論GNU gcc嵌入式系統(tǒng)開發(fā)

GNU gcc嵌入式系統(tǒng)開發(fā)

GNU gcc嵌入式系統(tǒng)開發(fā)

定 價:¥45.00

作 者: 董文軍 編著
出版社: 北京航空航天大學出版社
叢編項:
標 簽: 系統(tǒng)開發(fā)

ISBN: 9787811248142 出版時間: 2010-01-01 包裝: 平裝
開本: 16開 頁數(shù): 409 字數(shù):  

內(nèi)容簡介

  本書首先介紹了GNU gcc的基本組成,分章節(jié)講述了GNU gcc、Debian Linux、makefile、gdb、vi、emacs等開源開發(fā)工具的使用,然后以Atmel公司的兩款頗具代表性的嵌入式芯片,即低端的8位AVR單片機ATmega48和中端的32位ARM芯片AT91SAM7S64為代表,全面講述了GNU gcc在嵌入式開發(fā)中的應(yīng)用??梢钥吹紾NU gcc在不同硬件下的開發(fā)過程與使用方法的確具有高度的一致性,給學習與使用帶來了很大的方便。書中還特別列舉了非常實用的開源項目USBASP以及usbdrv,使讀者既能對開源軟件的強大功能留下深刻的印象,又能學到實際有用的東西。本書可作為高等院校計算機、電子、自動化、機電一體化等相關(guān)專業(yè)嵌入式系統(tǒng)課程的教學參考書,也可作為從事嵌入式系統(tǒng)應(yīng)用開發(fā)工程師的參考資料。

作者簡介

暫缺《GNU gcc嵌入式系統(tǒng)開發(fā)》作者簡介

圖書目錄

第1章 GNUgcc概述1
1.1 自由軟件與GNU、GPL1
1.2 gcc的發(fā)展歷史及特點2
1.3 gcc的使用簡介與命令行參數(shù)說明4
1.3.1 gcc的基本用法4
1.3.2 警告提示功能選項7
1.3.3 庫操作選項8
1.3.4 代碼優(yōu)化選項9
1.3.5 調(diào)試選項10
1.3.6 交叉編譯選項11
1.3.7 鏈接器參數(shù)選項12
1.3.8 鏈接器描述文件格式12
1.3.9 gcc的錯誤類型及對策15
第2章 適合于嵌入式開發(fā)的平臺Debian17
2.1 Debian概述17
2.2 Debian的安裝18
2.3 Debian基本操作25
2.3.1 桌面環(huán)境25
2.3.2 常用應(yīng)用程序26
2.3.3 文件系統(tǒng)管理27
2.4 Debian系統(tǒng)維護與軟件的安裝37
2.4.1 apt包管理系統(tǒng)的管理37
2.4.2 軟件包管理與安裝命令38
2.4.3 dpkg底層的包管理工具39
2.4.4 軟件的其他安裝方法41
2.5 版本控制42
2.5.1 cvs概述42
2.5.2 Debian中安裝cvs服務(wù)器42
2.5.3 cvs的基本操作46
2.5.4 遠程cvs操作54
2.5.5 cvs使用舉例54
2.5.6 Wincvs的使用56
第3章 makefile文件的編寫66
3.1 概述66
3.2 makefile的基本語法和簡單實例67
3.2.1 基本語法67
3.2.2 make命令行參數(shù)定義67
3.2.3 簡單實例71
3.3 常用命令72
3.3.1 @命令72
3.3.2 命令間的相互關(guān)聯(lián)72
3.3.3 忽略命令的錯誤73
3.3.4 條件判斷73
3.3.5 定義命令序列73
3.4 目標與規(guī)則74
3.4.1 偽目標74
3.4.2 靜態(tài)目標75
3.4.3 makefile中的常用目標75
3.4.4 后綴規(guī)則76
3.4.5 模式規(guī)則76
3.4.6 多目標與自動推導(dǎo)77
3.4.7 makefile規(guī)則77
3.4.8 引入其他的makefile文件80
3.5 變量81
3.5.1 變量的定義81
3.5.2 與變量相關(guān)的操作符82
3.5.3 變量的應(yīng)用83
3.5.4 特殊變量84
3.6 函數(shù)87
3.6.1 函數(shù)的調(diào)用語法87
3.6.2 字符串處理函數(shù)88
3.6.3 文件操作函數(shù)90
3.6.4 循環(huán)函數(shù)91
3.6.5 條件函數(shù)92
3.6.6 其他函數(shù)92
3.6.7 makefile工作過程總結(jié)94
第4章 gdb調(diào)試技術(shù)95
4.1 概述95
4.1.1 簡單的調(diào)試實例96
4.1.2 gdb啟動退出與程序的加載98
4.1.3 gdb隨機幫助與常用命令99
4.2 gdb常用查看命令101
4.2.1 查看寄存器101
4.2.2 查看棧信息101
4.2.3 查看源程序103
4.2.4 查看源代碼的內(nèi)存104
4.3 變量操作命令105
4.3.1 查看單個數(shù)據(jù)105
4.3.2 輸出格式105
4.3.3 修改變量的值106
4.3.4 全局變量與局部變量106
4.3.5 表達式107
4.3.6 數(shù)組107
4.3.7 查看內(nèi)存108
4.3.8 變量自動顯示108
4.4 程序斷點運行調(diào)試命令109
4.4.1 斷點操作109
4.4.2 觀察點操作110
4.4.3 捕捉點操作110
4.4.4 重載函數(shù)的斷點操作111
4.4.5 各種斷點的維護111
4.5 程序的單步調(diào)試技術(shù)113
4.6 程序的信號調(diào)試技術(shù)114
4.7 程序的多線程調(diào)試技術(shù)115
4.8 程序控制命令116
4.8.1 跳轉(zhuǎn)控制命令116
4.8.2 函數(shù)控制命令116
4.9 gdb環(huán)境設(shè)置命令117
4.9.1 運行環(huán)境設(shè)置117
4.9.2 顯示設(shè)置117
4.9.3 環(huán)境變量120
4.9.4 搜索源代碼121
4.9.5 指定源文件的路徑121
第5章 Linux常用編輯器122
5.1 vi編輯器122
5.1.1 概述122
5.1.2 多文件操作126
5.1.3 光標移動命令127
5.1.4 屏幕操作命令129
5.1.5 尋找與替換131
5.1.6 vi的基本編輯命令及操作133
5.1.7 多窗口操作138
5.1.8 寄存器與緩沖區(qū)操作140
5.1.9 與編程開發(fā)相關(guān)操作141
5.1.10 配置設(shè)置143
5.1.11 其他編輯命令144
5.2 emacs編輯器146
5.2.1 概述146
5.2.2 emacs基本知識147
5.2.3 對目錄的操作154
5.2.4 編輯遠程機器上的文件157
5.2.5 光標操作157
5.2.6 基本編輯功能160
5.2.7 查找與替換163
5.2.8 多窗口操作164
5.2.9 emacs編程語言支持功能164
5.2.10 emacs設(shè)置172
5.2.11 版本控制174
5.2.12 隨機幫助的使用177
5.2.13 emacs的其他功能178
第6章 ATmega48/88/168硬件結(jié)構(gòu)與功能179
6.1 ATmega48/88/168概述179
6.1.1 產(chǎn)品特性179
6.1.2 引腳配置180
6.1.3 結(jié)構(gòu)框圖183
6.1.4 工作狀態(tài)與MCU控制寄存器185
6.1.5 AVRCPU通用工作寄存器186
6.2 存儲結(jié)構(gòu)186
6.2.1 ATmega48的程序存儲器映像186
6.2.2 SRAM數(shù)據(jù)存儲器187
6.2.3 EEPROM數(shù)據(jù)存儲器187
6.3 系統(tǒng)時鐘以及選擇189
6.3.1 時鐘分類189
6.3.2 時鐘源190
6.3.3 與系統(tǒng)時間相關(guān)寄存器191
6.4 電源管理與休眠模式192
6.4.1 工作模式192
6.4.2 休眠模式控制寄存器193
6.4.3 功耗最小化需要考慮的幾個問題194
6.5 時間器與看門狗195
6.5.1 看門狗定時器195
6.5.2 看門狗控制寄存器195
6.5.3 看門狗安全操作時間序列196
6.5.4 看門狗熔絲位197
6.5.5 定時器的工作模式197
6.5.6 8位PWM定時器0199
6.5.7 16位PWM定時器1208
6.5.8 8位異步操作PWM定時器2216
6.6 復(fù)位與中斷221
6.6.1 復(fù)位221
6.6.2 中斷223
6.6.3 外部中斷224
6.6.4 ATmega48復(fù)位與中斷向量226
6.6.5 ATmega88復(fù)位與中斷向量228
6.6.6 ATmega168復(fù)位與中斷向量231
6.6.7 I/O端口234
6.8 串行通信接口238
6.8.1 USART串行通信238
6.8.2 SPI串行通信245
6.8.3 兩線串行通信249
6.9 模擬比較器與模/數(shù)轉(zhuǎn)換254
6.9.1 模擬比較器254
6.9.2 模/數(shù)轉(zhuǎn)換器256
6.10 熔絲位以及功能259
第7章 AVRgcc開發(fā)技術(shù)262
7.1 Debian中的AVR交叉工具包262
7.1.1 AVR交叉工具包的安裝262
7.1.2 使用Linux平臺的優(yōu)勢263
7.1.3 準備工作263
7.1.4 AVRgcc編譯及makefile的編寫264
7.1.5 軟件模擬調(diào)試265
7.2 AVR的GNU下載工具266
7.2.1 PonyProg下載工具266
7.2.2 uisp下載工具269
7.2.3 stk200下載線電路圖274
7.3 procyonAVRLib的C語言庫函數(shù)274
7.3.1 AVRLib的下載與安裝274
7.3.2 與AVR芯片內(nèi)部設(shè)備相關(guān)函數(shù)275
7.3.3 常用外部設(shè)備函數(shù)285
7.3.4 常見通用設(shè)備的軟件模擬297
7.3.5 通用庫函數(shù)298
7.3.6 網(wǎng)絡(luò)庫函數(shù)305
第8章 AVR純固件USB協(xié)議314
8.1 USB總線協(xié)議概述314
8.1.1 基本概念314
8.1.2 USB總線狀態(tài)322
8.1.3 USB物理層定義323
8.1.4 USB數(shù)據(jù)鏈路層定義325
8.2 開源純軟件模擬USB總線協(xié)議331
8.2.1 純軟件USB協(xié)議功能特性331
8.2.2 硬件電路331
8.2.3 軟件系統(tǒng)結(jié)構(gòu)333
8.3 純軟件USB應(yīng)用-USBASP下載線345
8.3.1 USBASP功能概述345
8.3.2 USBASP硬件電路345
8.3.3 USBASP固件程序分析346
8.3.4 USBASP制作過程347
8.3.5 USBASP使用方法348
第9章 ARMgcc開發(fā)包ProcyonARMLib351
9.1 AtmelAT91SAM7S系列芯片概述351
9.1.1 AT91SAM7S的基本特點351
9.1.2 AT91SAM7S的基本結(jié)構(gòu)353
9.1.3 ARM7TDMI處理器概述355
9.1.4 存儲器356
9.1.5 外設(shè)358
9.1.6 定時器358
9.1.7 外設(shè)數(shù)據(jù)傳輸控制器359
9.1.8 高級中斷控制器360
9.1.9 并行輸入/輸出控制器361
9.1.10 通信總線361
9.1.11 脈寬調(diào)制控制器364
9.1.12 USB器件端口365
9.1.13 模/數(shù)轉(zhuǎn)換器366
9.2 ARM交叉工具軟件包366
9.2.1 gnuarm概述366
9.2.2 gnuarm應(yīng)用程序binutils366
9.3 ProcyonARMLib的C語言庫函數(shù)388
9.3.1 ARMLib的下載與安裝388
9.3.2 與ARM芯片內(nèi)部設(shè)備相關(guān)函數(shù)390
9.3.3 與AVRLib相同的部分398
9.4 OpenOCD398
9.4.1 OpenOCD概述398
9.4.2 OpenOCD的安裝399
9.4.3 OpenOCD芯片的配置文件400
9.4.4 OpenOCD芯片配置命令400
9.4.5 OpenOCD命令403
9.4.6 OpenOCD應(yīng)用舉例405
9.4.7 wiggler并口jtag408
參考文獻409

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號