第1章 AT91系列微控制器的體系結構
1.1 AT91系列微控制器概述1
1.2 AT91X408xx系列微控制器3
1.2.1 體系結構3
1.2.2 存儲器映射9
1.2.3 內嵌Flash的AT91X408xx系列微控制器10
1.3 AT91M55800A微控制器17
1.4 AT91RM9200微控制器24
第2章 AT91系列微控制器的片內資源
2.1 外部總線接口EBI35
2.1.1 功能介紹35
2.1.2 寄存器描述44
2.2 省電模塊PS47
2.2.1 功能介紹47
2.2.2 寄存器描述48
2.3 先進中斷控制器AIC50
2.3.1 功能介紹51
2.3.2 寄存器描述56
2.4 并行I/O控制器PIO60
2.4.1 功能介紹60
2.4.2 寄存器描述64
2.5 看門狗定時器WD70
2.5.1 功能介紹70
2.5.2 寄存器描述71
2.6 特殊功能寄存器SF73
2.6.1 功能介紹73
2.6.2 寄存器描述74
2.7 通用同步/異步收發(fā)器 USART77
2.7.1 功能介紹77
2.7.2 寄存器描述83
2.8 定時器/計數(shù)器94
2.8.1 功能介紹94
2.8.2 寄存器描述102
2.9 先進電源管理控制器APMC114
2.9.1 功能介紹114
2.9.2 寄存器描述121
2.10 實時時鐘RTC128
2.10.1 功能介紹128
2.10.2 寄存器描述130
2.11 串行外圍接口 SPI137
2.11.1 功能介紹138
2.11.2 寄存器描述144
2.12 A/D轉換器152
2.12.1 功能介紹152
2.12.2 寄存器描述154
2.13 D/A轉換器158
2.13.1 功能介紹159
2.13.2 寄存器描述160
第3章 ARM指令集和匯編程序設計
3.1 ARM編程模型164
3.1.1 微處理器工作狀態(tài)164
3.1.2 處理器模式164
3.1.3 寄存器組織165
3.1.4 異常170
3.2 ARM的尋址方式176
3.2.1 寄存器尋址176
3.2.2 立即尋址176
3.2.3 寄存器偏移尋址176
3.2.4 寄存器間接尋址177
3.2.5 基址尋址177
3.2.6 相對尋址177
3.2.7 多寄存器尋址178
3.2.8 堆棧尋址178
3.2.9 塊拷貝尋址178
3.3 ARM指令集180
3.3.1 ARM指令的分類與格式180
3.3.2 條件執(zhí)行181
3.3.3 指令分類說明182
3.4 Thumb指令集198
3.4.1 Thumb指令集與ARM指令集的區(qū)別198
3.4.2 指令分類說明198
3.5 ARM匯編程序設計209
3.5.1 ARM匯編程序規(guī)范209
3.5.2 ARM分支程序設計211
3.5.3 ARM循環(huán)程序設計214
3.5.4 ARM模塊化程序設計215
3.5.5 偽指令216
第4章 ARM C/C++的編譯和調試
4.1 ARM C/C++編譯器232
4.2 ARM C/C++語言擴展247
4.3 ARM中的C/C++庫252
4.3.1 ARM中C/C++運行時庫的類型252
4.3.2 ARM中C/C++庫的目錄結構253
4.3.3 ARM C/C++庫的可重入性和靜態(tài)數(shù)據253
4.3.4 建立一個使用C/C++庫的應用程序254
4.3.5 建立一個不使用C/C++庫的應用程序256
4.3.6 裁剪C/C++運行時庫258
第5章 AT91應用程序設計實例
5.1 用匯編語言編寫AT91的啟動程序260
5.2 AT91中斷的自動定向和優(yōu)先級管理269
5.2.1 中斷的自動定向269
5.2.2 中斷的優(yōu)先級管理270
5.2.3 AT91中斷管理的軟件實現(xiàn)270
5.3 AT91中DMA的軟件實現(xiàn)271
5.3.1 快速DMA的編程實現(xiàn)272
5.3.2 DMA通道的編程實現(xiàn)273
5.4 用AT91定時器/計數(shù)器產生脈寬調制信號276
5.5 AT91X408xx與I2S接口音頻數(shù)/模轉換器的連接279
5.5.1 I2S總線簡介279
5.5.2 AT91X408xx與DAC3550連接電路279
5.5.3 接口轉換電路的CPLD實現(xiàn)280
5.5.4 軟件接口285
5.6 AT91RM9200與硬盤的連接285
第6章 μC/OSII在AT91上的移植
6.1 目錄和文件296
6.2 OS_CPU.H文件296
6.2.1 數(shù)據類型296
6.2.2 代碼臨界區(qū)297
6.2.3 堆棧增長方向297
6.2.4 任務級切換298
6.2.5 中斷級切換標志298
6.2.6 函數(shù)原型298
6.3 OS_CPU_C.C文件298
6.3.1 OSInitHookBegin()299
6.3.2 OSInitHookEnd()299
6.3.3 OSTaskCreateHook()299
6.3.4 OSTaskDelHook()300
6.3.5 OSTaskIdleHook()300
6.3.6 OSTaskStatHook()300
6.3.7 OSTaskStkInit()301
6.3.8 OSTaskSwHook()302
6.3.9 OSTCBInitHook()303
6.3.10 OSTimeTickHook()303
6.4 OS_CPU_A.S文件303
6.4.1 OSStartHighRdy( )303
6.4.2 OSCtxSw( )304
6.4.3 OS_CPU_SR_Save()305
6.4.4 OS_CPU_SR_Restore()306
6.4.5 OS_IntCtxSw()306
6.5 INCLUDES.H文件307
第7章 基于AT91M40800的WEB服務器的設計
7.1 基于AT91M40800的WEB服務器系統(tǒng)的組成308
7.1.1 WEB服務器存儲器部分的設計309
7.1.2 WEB服務器以太網部分的設計311
7.1.3 WEB服務器LCD顯示部分的設計316
7.1.4 WEB服務器鍵盤接口的設計321
7.2 WEB服務器中TCP/IP協(xié)議棧的實現(xiàn)325
7.2.1 ARP協(xié)議的實現(xiàn)326
7.2.2 IP協(xié)議的實現(xiàn)331
7.2.3 ICMP協(xié)議的實現(xiàn)334
7.2.4 UDP協(xié)議的實現(xiàn)335
7.2.5 TCP協(xié)議的實現(xiàn)337
7.2.6 HTTP協(xié)議的實現(xiàn)352