嵌入式系統原理與應用技術, 4/e

袁志勇

  • 出版商: 北京航空航天大學
  • 出版日期: 2024-06-01
  • 定價: $534
  • 售價: 8.5$454
  • 語言: 簡體中文
  • 裝訂: 平裝
  • ISBN: 7512444249
  • ISBN-13: 9787512444249
  • 相關分類: 嵌入式系統
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

本書以51系列單晶片和S3C24xx系列(S3C2410或S3C2440)ARM 嵌入式處理器為例,
敘述嵌入式系統硬體運作與介面應用技術、嵌入式程式設計及嵌入式Linux基礎應用。
全書共分為10章,主要內容包括嵌入式系統概論、單晶片技術基礎、ARM 體系架構、ARM 指令系統、
時脈及電源管理、記憶體與人機介面原理、中斷與DMA技術、串列通訊與網路介面技術、Linux程式設計基礎、嵌入式技術綜合應用等。
與舊版本相比,本書增加了51系列單片機和嵌入式技術綜合應用兩章,並對相關知識進行了更新。

目錄大綱

第1章 嵌入式系統概論 ……… 1
1.1 嵌入式系統簡介 ……… 1
1.1.1 嵌入式系統的定義 1
1.1.2 嵌入式系統的組成 2
1.1.3 嵌入式系統的應用與發展 ………… 5
1.2 嵌入式微處理器 ……… 8
1.2.1 嵌入式微處理器分類 ……………… 8
1.2.2 ARM 嵌入式微處理器 …………… 10
1.2.3 RISC V 架構嵌入式微處理器簡介 ……………… 15
1.2.4 嵌入式微處理器選型 ……………… 15
1.3 嵌入式作業系統 ……… 16
1.3.1 概況 …………… 16
1.3.2 嵌入式Linux簡介 ……………… 17
1.3.3 μC/OS Ⅲ簡介 … 18
1.3.4 Free RTOS簡介 19
1.3.5 RT Thread簡介 20
1.3.6 Harmony LiteOS簡介 …………… 20
習 題 …… 21
第2章 單晶片技術基礎 …… 22
2.1 單晶片概述 …………… 22
2.1.1 單晶片概念 ……… 22
2.1.2 單晶片發展概況 … 23
2.2 80C51單晶片原理 …… 24
2.2.1 80C51單晶片硬體結構 …………… 25
2.2.2 80C51單晶片儲存空間 …………… 27
2.2.3 80C51單晶片I/O 介面 ………… 31
2.2.4 80C51單晶片最小系統 ……………… 32
2.3 80C51單晶片應用 …… 34
2.3.1 80C51單晶片擴充 34
2.3.2 80C51單晶片應用系統設計 ……… 39
習 題 …… 45
第3章 ARM 體系結構 …… 46
3.1 ARM 嵌入式微處理器 46
3.1.1 ARM 的結構特點 46
3.1.2 ARM 指令集特點 51
3.1.3 ARM 工作模式 … 52
3.2 ARM 記憶體組織結構 53
3.2.1 大端儲存與小端儲存 ……………… 54
3.2.2 I/O 連接埠的存取方式 ……………… 55
3.2.3 內部暫存器 ……… 56
3.3 ARM 異常 …………… 61
3.3.1 異常的型別及向量位址 …………… 61
3.3.2 異常的優先權 …… 63
3.3.3 進入和退出異常 … 64
3.4 S3C2410嵌入式微處理器 ……………… 68
3.4.1 S3C2410及片內外圍簡介 ………… 68
3.4.2 S3C2410引腳訊號 70
3.4.3 S3C2410專用暫存器 ……………… 75
3.4.4 ARM920T匯流排介面單元簡介 …… 80
3.5 ARM Cortex ………… 81
3.6 GPIO 埠 …………… 83
3.6.1 簡 介 …………… 83
3.6.2 GPIO 連接埠操作舉例 ……………… 83
習 題 …… 85
第4章 ARM 指令系統 …… 86
4.1 ARM 指令集 ………… 86
4.1.1 ARM 指令分類及格式 …………… 86
4.1.2 ARM 指令尋址方式 ……………… 88
4.1.3 常用ARM 指令 … 94
4.2 ARM 組譯偽指令與偽操作 ………… 108
4.2.1 常用ARM 組譯偽指令 ………… '3109
4.2.2 常用ARM 組譯偽操作 ………… 110
4.3 Thumb和Thumb2指令集簡介 …… 115
2 嵌入式系統原理與應用技術(第4版)
4.4 ARM 程式設計基礎 …… 116
4.4.1 ARM 程式常用檔案格式 ……… 117
4.4.2 ARM 預定義變數 ……………… 117
4.4.3 C語言與彙編混合程式設計 ………… 118
4.4.4 ARM 系統引導程式簡介 ……… 120
4.5 使用RealView MDK設計I/O 介面應用程式 ………… 123
4.5.1 RealView MDK整合開發工具及實驗平台簡介 … 123
4.5.2 使用RealView MDK設計I/O 介面程式舉例 …… 124
習 題 …… 132
第5章 時鐘及電源管理 …… 134
5.1 S3C24xx時脈結構 … 134
5.2 S3C24xx電源管理模式 ……………… 134
5.3 相關特殊功能暫存器 139
5.4 常用單元電路設計 … 144
5.4.1 電源電路設計 … 144
5.4.2 晶振電路設計 … 145
5.4.3 重設電路設計 … 146
習 題 …… 147
第6章 記憶體與人機介面原理 ……………… 148
6.1 記憶體概論 ………… 148
6.1.1 SRAM 和DRAM ……………… 149
6.1.2 NOR Flash和NAND Flash …… 154
6.2 儲存系統機制 ……… 159
6.2.1 高速緩存 ……… 159
6.2.2 虛擬儲存 ……… 161
6.3 人機介面 …………… 163
6.3.1 鍵 盤 ………… 163
6.3.2 LED顯示器 …… '3165
6.3.3 LED介面舉例 … 168
6.3.4 LCD顯示器 … 170
6.3.5 ADC和觸控螢幕 … 172
6.4 S3C2410儲存系統和I/O 連接埠 ……… 174
6.4.1 S3C2410 儲存空間 ……………… 174
6.4.2 S3C2410記憶體介面設計 ……… 181
6.4.3 S3C2410 I/O 埠控制 ………… 187
6.5 S3C2410人機介面設計 ……………… 189
6.5.1 S3C2410 鍵盤介面設計 ………… 189
6.5.2 S3C2410 LCD控制器 …………… 191
6.5.3 S3C2410 LCD寄存器 …………… 195
6.5.4 S3C2410 LCD介面 ……………… 203
6.5.5 S3C2410 ADC和觸控螢幕 ………… 205
6.5.6 S3C2410 ADC和觸控螢幕介面 …… 210
習 題 …… 214
第7章 中斷與DMA 技術 … 216
7.1 中斷概述 …………… 216
7.2 S3C2410中斷系統 … 218
7.2.1 概 述 ………… 218
7.2.2 中斷控制暫存器 222
7.2.3 中斷舉例 ……… 232
7.3 定時器工作原理 …… 235
7.4 S3C2410定時器 …… 236
7.4.1 定時器及PWM 236
7.4.2 看門狗定時器 … 246
7.4.3 RTC …………… 248
7.5 DMA 概述 ………… 258
7.5.1 DMA 簡介 …… 258
7.5.2 DMA 傳輸過程 259
7.6 S3C2410 DMA …… 260
7.6.1 DMA 請求來源 … 260
7.6.2 DMA 模式 …… '3261
7.6.3 DMA 操作過程 262
7.6.4 DMA 時序 …… 263
7.7 S3C2410 DMA 暫存器 ……………… 265
7.7.1 傳輸控制暫存器 266
7.7.2 狀態暫存器 …… 269
7.8 DMA 操作編程 …… 270
7.8.1 DMA 操作初始化 ……………… 270
7.8.2 DMA 操作程式設計範例 …………… 270
習 題 …… 272
第8章 串列通訊與網路介面技術 …………… 273
8.1 串列通訊基礎 … 273
8.2 S3C24xx串行介面 … 278
8.2.1 S3C24xx UART結構 …………… 278
8.2.2 S3C24xx UART工作原理 ……… 279
8.2.3 S3C24xx UART專用暫存器 …… 281
8.3 串列通訊舉例 ……… 288
8.3.1 RS 232C介面設計 …………… 288
8.3.2 串列埠初始化 …… 289
8.3.3 發送/接收程序舉例 ……………… 291
8.4 IIS 序列數位音訊介面 ……………… 292
8.4.1 IIS介面匯流排格式 ……………… 296
8.4.2 IIS介面應用範例 ……………… 297
8.5 IIC 介面 …………… 300
8.5.1 IIC匯流排 ……… 300
8.5.2 S3C24xx IIC介面 ……………… 304
8.6 乙太網路介面 ………… 311
8.6.1 嵌入式乙太網路基礎 ………… 311
8.6.2 S3C24xx乙太網路介面 …………… 316
8.6.3 socket網路程式設計 317
習 題 …… 326
第9章 Linux程式設計基礎 327
9.1 Linux作業系統 …… 327
9.1.1 Linux的特點 … 327
9.1.2 Linux核心的結構 ……………… 328
9.1.3 Linux設備管理 336
9.2 Linux作業系統安裝與使用 ………… 342
9.2.1 環境搭建 ……… 342
9.2.2 Linux的使用 … 345
9.3 Linux程式設計 …… 352
9.3.1 BootLoader引導程式 …………… 352
9.3.2 Linux的移植 … 360
9.3.3 驅動程式開發 … 362
9.3.4 應用程式開發 … 364
9.4 Linux驅動程式設計實例 …………… 369
9.4.1 S3C2440上LED驅動開發 ……… 370
9.4.2 S3C2440上ADC驅動開發 …… 377
習 題 …… 385
第10章 嵌入式技術綜合應用 ……………… 386
10.1 基於51單晶片的模擬電梯控制系統 386
10.2 基於S3C2410的定位及北斗短報文系統 …………… 389
習 題 …… 394
附 錄 ARM 組譯程式上機實驗舉例 ……… 396
參考文獻 …… 404