嵌入式Linux開發技術及實踐

嵌入式Linux開發技術及實踐

《嵌入式Linux開發技術及實踐》是2015年西安電子科技大學出版社出版的圖書,作者是青島東合信息技術有限公司。

基本介紹

  • 書名:嵌入式Linux開發技術及實踐
  • 作者:青島東合信息技術有限公司
  • ISBN:978-7-5606-3313-8
  • 定價:57.8元
  • 出版社:西安電子科技大學出版社
  • 出版時間:2015-05
內容簡介,目錄,

內容簡介

本書從嵌入式系統的基本概念出發,以ARM9系列處理器S3C2440為基礎,配合開發板硬體平台,深入淺出地講解了基於ARM的嵌入式Linux開發的各個環節。
本書分為兩篇——理論篇和實踐篇。理論篇介紹了嵌入式系統的基本概念和組成、ARM基礎開發、ARM進階開發、系統構建、驅動移植、套用編程以及GUI程式設計。實踐篇與理論篇相對應,以如何實現一個物聯網網關為案例,將理論與實踐相結合,使讀者加深對嵌入式Linux開發技術的理解並掌握基於ARM的嵌入式Linux開發知識,全面提高動手能力。
本書重點突出,偏重套用,適用面廣,可作為本科計算機科學與技術、通信電子,高職高專計算機軟體、計算機網路專業的嵌入式Linux課程的教材

目錄

理 論 篇
第1章 概述 2
1.1 嵌入式系統 2
1.1.1 嵌入式系統概述 2
1.1.2 嵌入式系統發展 3
1.2 嵌入式處理器 4
1.2.1 處理器分類 4
1.2.2 ARM處理器 5
1.2.3 ARM處理器系列 7
1.3 嵌入式作業系統 9
1.4 嵌入式系統開發 10
1.4.1 嵌入式系統開發流程 10
1.4.2 嵌入式系統開發環境 11
小結 14
習題 15
第2章 ARM基礎開發 16
2.1 S3C2440概述 17
2.2 編程基礎 19
2.2.1 S3C2440體系結構 19
2.2.2 彙編指令集 24
2.2.3 彙編與C語言的互動編程 31
2.3 時鐘與電源 35
2.3.1 時鐘體系 35
2.3.2 電源模式 39
2.4 GPIO 40
2.4.1 概述 40
2.4.2 GPIO暫存器 40
2.4.3 GPIO編程 42
2.5 存儲器控制器 45
2.5.1 概述 45
2.5.2 存儲器控制器暫存器 46
2.5.3 存儲器控制器編程 48
2.6 異常系統 53
2.6.1 異常 53
2.6.2 中斷機制 55
2.6.3 中斷控制器暫存器 58
2.6.4 中斷編程 61
2.7 定時器 66
2.7.1 概述 66
2.7.2 定時器暫存器 67
2.7.3 定時器編程 69
2.8 ADC和觸控螢幕 70
2.8.1 ADC概述 71
2.8.2 觸控螢幕 72
2.8.3 ADC暫存器 72
2.8.4 ADC編程 74
小結 77
習題 77
第3章 ARM進階開發 79
3.1 Flash編程 80
3.1.1 概述 80
3.1.2 NAND Flash控制器 82
3.1.3 NAND Flash控制器暫存器 83
3.1.4 NAND Flash實例 85
3.2 UART 98
3.2.1 概述 98
3.2.2 S3C2440 UART 99
3.2.3 UART編程 104
3.3 USB 110
3.3.1 概述 110
3.3.2 USB主機控制器 117
3.3.3 USB設備控制器 128
3.3.4 USB設備編程 129
3.4 DMA 138
3.4.1 概述 138
3.4.2 DMA控制器 139
3.4.3 DMA控制器暫存器 140
3.4.4 DMA編程 143
3.5 LCD 144
3.5.1 概述 144
3.5.2 LCD控制器 146
3.5.3 LCD控制器暫存器 149
3.5.4 LCD編程 150
3.6 MMU 159
3.6.1 概述 159
3.6.2 MMU記憶體訪問機制 164
3.6.3 Cache 165
3.6.4 ARM協處理器 166
3.6.5 MMU編程 168
小結 170
習題 170
第4章 系統構建 172
4.1 概述 173
4.2 交叉編譯環境 173
4.3 Linux核心 174
4.3.1 Linux核心特點 175
4.3.2 核心結構 176
4.4 核心編譯配置 177
4.4.1 配置工具 177
4.4.2 核心Makefile 177
4.4.3 配置檔案Kconfig 179
4.4.4 配置選項 180
4.5 核心移植 182
4.5.1 移植示例 184
4.5.2 核心映像 187
4.6 構建根檔案系統 188
4.6.1 檔案系統概述 188
4.6.2 根檔案系統 190
4.6.3 Busybox 191
4.6.4 構建根檔案系統 195
4.7 Linux核心啟動分析 198
小結 205
習題 206
第5章 驅動移植 207
5.1 概述 208
5.1.1 設備驅動程式 208
5.1.2 設備類型與設備號 208
5.1.3 驅動模組 209
5.1.4 驅動程式結構 211
5.1.5 驅動程式開發 211
5.2 字元設備驅動程式 211
5.2.1 字元設備特點 211
5.2.2 相關數據結構與函式 212
5.2.3 驅動程式模型 217
5.2.4 驅動程式實例 218
5.3 塊設備驅動程式 224
5.3.1 塊設備特點 224
5.3.2 相關的數據結構和函式 225
5.4 網路設備驅動程式 228
5.4.1 網路設備特點 228
5.4.2 相關數據結構和函式 230
5.4.3 DM9000模組 234
5.4.4 DM9000驅動程式 235
5.4.5 移植實例 248
小結 248
習題 249
第6章 套用編程 250
6.1 概述 251
6.1.1 應用程式 251
6.1.2 API 251
6.1.3 系統調用 252
6.1.4 API與系統調用 253
6.2 檔案I/O編程 254
6.2.1 概述 254
6.2.2 基本I/O函式 255
6.2.3 標準I/O函式 265
6.3 進程 269
6.3.1 概述 269
6.3.2 基本函式 271
6.3.3 信號 276
6.3.4 管道 282
6.3.5 信號量 288
6.3.6 共享記憶體 293
6.3.7 訊息佇列 298
6.4 執行緒 304
6.4.1 概述 304
6.4.2 基本函式 305
6.4.3 同步與互斥 310
6.5 網路編程 315
6.5.1 TCP/IP協定 315
6.5.2 socket套接字 317
6.5.3 socket編程實例 323
小結 326
習題 327
第7章 GUI程式設計 328
7.1 圖形用戶界面 329
7.1.1 圖形用戶界面的特徵 329
7.1.2 嵌入式系統圖形用戶界面特點 329
7.1.3 幾種流行的GUI 329
7.1.4 Qt及Qt/Embedded 330
7.2 Qt/Embedded開發平台的搭建 331
7.2.1 Qt Creator集成開發環境的搭建 331
7.2.2 編譯安裝觸控螢幕校驗庫tslib 332
7.2.3 搭建Qt/Embedded開發環境 334
7.3 Qt Creator程式開發流程 335
7.3.1 Qt Creator啟動界面簡介 335
7.3.2 創建“Hello World”GUI應用程式 337
7.3.3 純代碼編寫程式 340
7.4 程式框架類 341
7.4.1 QApplication類 342
7.4.2 QMainWindow類 343
7.4.3 QWidget類 346
7.4.4 QDialog類 349
7.4.5 QObject類 351
7.5 信號與槽機制 352
7.5.1 信號與槽機制概述 352
7.5.2 信號與槽的關聯 353
7.5.3 元對象工具 355
7.5.4 信號/槽使用示例 355
7.6 常用視窗部件 357
7.6.1 QFrame類族 357
7.6.2 按鈕部件 358
7.6.3 行編輯控制項 359
7.6.4 滑塊部件 361
小結 361
習題 362
實 踐 篇
實踐1 概述 364
實踐指導 364
實踐1.G.1 364
實踐1.G.2 367
實踐1.G.3 369
實踐1.G.4 371
實踐2 ARM基礎開發 377
實踐指導 377
實踐2.G.1 377
實踐2.G.2 381
實踐3 ARM進階開發 394
實踐指導 394
實踐3.G.1 394
實踐3.G.2 395
實踐3.G.3 396
實踐3.G.4 398
實踐4 系統構建 428
實踐指導 428
實踐4.G.1 428
實踐4.G.2 430
實踐4.G.3 433
實踐4.G.4 437
實踐5 驅動移植 440
實踐指導 440
實踐5.G.1 440
知識拓展 444
實踐6 套用編程 448
實踐指導 448
實踐6.G.1 448
實踐6.G.2 451
實踐7 GUI程式設計 462
實踐指導 462
實踐7.G.1 462
實踐7.G.2 464
實踐7.G.3 468
實踐7.G.4 469

相關詞條

熱門詞條

聯絡我們