注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件工程及軟件方法學基于ARM的嵌入式系統開發(fā)與應用

基于ARM的嵌入式系統開發(fā)與應用

基于ARM的嵌入式系統開發(fā)與應用

定 價:¥35.00

作 者: 吳明暉主編;徐睿等編著
出版社: 人民郵電出版社
叢編項:
標 簽: 程序設計 基本知識

ISBN: 9787115107527 出版時間: 2004-01-01 包裝: 膠版紙
開本: 26cm 頁數: 356 字數:  

內容簡介

ARM公司的32位微控制器IP核因其卓越的性能和良好的擴充性為廣大設計者所喜愛。目前,大多數半導體公司都推出了自己的ARMSoC芯片,使用ARM芯片構造32位的嵌入式系統成為嵌入式系統中的一個重要分支。本書全面、深入地介紹了基于ARMSoC的嵌入式系統開發(fā)技術,包括ARM系統結構與匯編程序設計、基于ARM的嵌入式系統啟動代碼bootloader設計、實時嵌入式操作系統及其移植方法、嵌入式系統中TCP/IP協議棧的開發(fā)、基于ARMSoC的音頻應用開發(fā)、圖形用戶界面設計、嵌入式文件系統的移植方法等,并且給出了相應的設計實例。本書在全面介紹嵌入式系統基本原理的基礎上,以目前較為流行的ATMEL、三星等公司的ARM芯片為例,結合μC/OS-II與Linux介紹了底層驅動程序與應用軟件的設計方法。本書取材新穎、內容豐富、實用性強,涵蓋了嵌入式系統開發(fā)的基本領域,適合從事嵌入式開發(fā)的技術人員閱讀,也可作為高等院校相關專業(yè)高年級學生和研究生學習基于ARM的嵌入式系統開發(fā)的參考書。

作者簡介

暫缺《基于ARM的嵌入式系統開發(fā)與應用》作者簡介

圖書目錄

第1章  ARM體系結構  1
1.1  ARM處理器概述  1
1.1.1  ARM產品背景  1
1.1.2  ARM處理器系列介紹  1
1.1.3  ARM處理器體系結構擴展  2
1.2  ARM體系結構概述  3
1.2.1  ARM體系結構版本  3
1.2.2  數據類型  4
1.2.3  處理器模式  4
1.2.4  寄存器  5
1.2.5  通用寄存器  5
1.2.6  程序狀態(tài)寄存器  7
1.2.7  異常  10
1.2.8  ARM過程調用標準(APCS)簡介  14
1.3  ARM指令集  16
1.3.1  條件執(zhí)行  16
1.3.2  ARM指令集列表  18
1.3.3  32位代碼基本規(guī)則  42
1.3.4  ARM指令應用舉例  42
1.4  Thumb指令集  44
1.5  IEEE浮點指令集簡介  54
1.6  ARM指令時序  59
1.7  32位ARM處理器調試技術  60
1.7.1  邊界掃描技術(JTAG)  60
1.7.2  ARM芯片的實時調試方案(E-TRACE)  61
1.7.3  Nexus標準  61
第2章  匯編語言程序設計  63
2.1  匯編語言程序結構  63
2.1.1  基于GCC編譯器的匯編語言程序框架  63
2.1.2  基于CodeWarrior的匯編程序框架  65
2.2  符號數據定義與數據結構  67
2.2.1  符號命名規(guī)則  67
2.2.2  數值常量的使用與EQU指令  67
2.3  變量  67
2.3.1  數值變量和數值表達式  68
2.3.2  邏輯變量和邏輯表達式  69
2.3.3  字符串變量和字符串表達式  69
2.3.4  變量內存空間分配  69
2.3.5  變量初始化  70
2.4  數據區(qū)分配和管理  70
2.4.1  使用SPACE分配內存區(qū)域  70
2.4.2  使用DCB分配一個或多個字節(jié)的內存區(qū)域  70
2.4.3  使用ALIGN對齊內存數據  71
2.4.4  分配一個或多個字的內存區(qū)域  72
2.5  數據結構的描述  72
2.5.1  使用MAP和FIELD描述數據結構  72
2.5.2  相對地址  74
2.5.3  綜合實例  74
2.6  分支與轉移匯編程序設計  76
2.6.1  簡單分支結構  76
2.6.2  復雜的分支結構  77
2.7  使用跳轉表解決分支轉移  79
2.7.1  程序實例  79
2.7.2  什么是跳轉表  81
2.7.3  如何使用跳轉表  82
2.8  使用跳轉實現循環(huán)  82
2.8.1  通過條件跳轉實現do...while循環(huán)  82
2.8.2  通過條件跳轉實現while循環(huán)  83
2.8.3  多重循環(huán)程序設計  84
2.9  模塊化程序設計  85
2.9.1  簡單函數調用例子  86
2.9.2  寄存器保護  87
2.9.3  參數傳遞  87
2.9.4  函數跳轉表  89
2.9.5  使用宏定義實現函數功能  90
2.9.6  和函數相關的偽指令  91
2.10  高級語言和匯編語言的混合編程  92
2.10.1  嵌入式匯編語句  92
2.10.2  高級語言和匯編語言函數間的相互調用  94
2.11  其他常見的偽指令  95
第3章  ARM系統啟動代碼分析和開發(fā)  97
3.1  ARM的異常與RESET  97
3.2  了解與啟動相關的硬件信息與開發(fā)手段  98
3.3  C/C++語言開發(fā)和運行環(huán)境  99
3.3.1  工具鏈準備  99
3.3.2  GNU環(huán)境簡介  101
3.3.3  C語言運行環(huán)境  102
3.3.4  一個簡單boot代碼例子  105
3.4  BOOT代碼分析  109
3.4.1  U-BOOT簡介  109
3.4.2  代碼分析和移植相關  112
3.5  固件開發(fā)調試方法  120
第4章  實時操作系統在ARM上的移植  122
4.1  實時操作系統簡介  122
4.2  μC/OS-II操作系統  123
4.2.1  μC/OS-II介紹  123
4.2.2  μC/OS-II應用程序開發(fā)  123
4.2.3  μC/OS-II移植  126
4.3  eCos簡介及移植介紹分析  140
4.3.1  eCos簡介  140
4.3.2  eCos的移植介紹  141
第5章  基于ARM的網絡協議棧實現  143
5.1  協議棧實現框架  143
5.1.1  系統硬件驅動程序  144
5.1.2  znet協議初始化  146
5.1.3  znet協議主任務  147
5.2  協議實現模塊代碼分析  150
5.2.1  全局數據結構和μC/OS-II中的接口  150
5.2.2  全局緩沖管理模塊  154
5.2.3  協議主任務和驅動交互的模塊  158
5.2.4  ARP實現模塊及主任務的IP數據分發(fā)  161
5.2.5  ICMP實現模塊  170
5.2.6  API實現模塊  172
5.2.7  UDP實現模塊  181
5.2.8  TCP實現模塊  187
5.3  協議棧實現回顧  198
第6章  外部總線與音頻系統設計  199
6.1  IIC(I2C)總線基本原理  199
6.1.1  起始和停止條件  199
6.1.2  數據傳輸  200
6.1.3  讀寫操作  200
6.2  I2S音頻設備總線的原理和應用  201
6.2.1  I2S總線簡介  201
6.2.2  I2S總線協議  202
6.2.3  基于I2S接口的音頻系統硬件設計  203
6.2.4  基于Cirrus Logic公司多媒體ARM芯片的音頻系統設計  204
6.3  音頻設備驅動  206
6.3.1  音頻設備基礎知識  206
6.3.2  Linux驅動程序框架  206
6.3.3  音頻設備文件  208
6.3.4  程序和音頻設備間的通信過程  210
6.3.5  設備的初始化和卸載  211
6.3.6  設備打開例程open()  213
6.3.7  內存映射和mmap例程  214
6.3.8  緩存區(qū)的設計  218
6.3.9  ioctl系統調用  221
6.3.10  音頻數據的播放和錄制例程  224
6.4  音頻應用程序的編寫  226
6.4.1  音頻應用程序基本框架  226
6.4.2  音頻參數設置  228
6.4.3  混頻器(Mixer)基礎  232
6.4.4  綜合應用實例  235
6.4.5  音頻應用程序編寫注意事項  242
第7章  閃存芯片與嵌入式文件系統  244
7.1  閃存的物理特性  244
7.2  嵌入式文件系統概述  245
7.3  NAND設備驅動程序  246
7.3.1  NAND芯片  246
7.3.2  NAND控制器  249
7.3.3  NAND設備MTD程序制作  251
7.4  NOR設備驅動  255
7.4.1  NOR芯片  255
7.4.2  通用閃存接口(CFI)  256
7.5  針對閃存芯片的文件系統  259
7.5.1  用于中間層TrueFFS  260
7.5.2  讓TrueFFS和引導扇區(qū)共享閃存  262
7.5.3  TrueFFS的配置與使用  262
7.5.4  在使用TrueFFS的閃存上面安裝Linux  264
7.6  JFFS/JFFS2文件系統  266
7.6.1  日志文件系統存儲結構  268
7.6.2  JFFS2  270
7.6.3  在Linux中使用JFFS/JFFS2  275
7.6.4  MTD的其他用法:使用RAMDISK制作啟動內核  278
7.7  YAFFS文件系統  279
7.7.1  YAFFS的下載與安裝  280
7.7.2  YAFFS與JFFS/JFFS2的不同點  280
7.7.3  YAFFS實現機制  281
第8章  嵌入式圖形用戶界面基礎  288
8.1  LCD顯示器基本原理  288
8.2  嵌入式GUI  289
8.2.1  MiniGUI  289
8.2.2  Microwindows  290
8.2.3  Microwindows_0.90_release的安裝  291
8.3  Microwindows的系統框架  296
8.3.1  設備驅動  297
8.3.2  MicroGUI -設備無關圖形引擎  302
8.3.3  Microwindows的應用程序接口API  303
8.4  圖形引擎層  304
8.5  編譯環(huán)境的選項(Makefile文件設置)  309
8.6  基于Microwindows類型的API的程序設計  310
8.6.1  窗口的基本元素  310
8.6.2  “Hello world”,你的第一個Microwindows程序  311
8.6.3  圖形繪制函數小節(jié)  320
8.6.4  Microwindows API的優(yōu)缺點  321
第9章  基于Nano-X的嵌入式GUI設計  322
9.1  Client/Server模式  322
9.2  Nano-X風格的“Hello World"  323
9.3  Nano-X窗口管理器  328
9.4  程序中使用位圖資源  328
9.4.1  將位圖變成C語言源程序  328
9.4.2  圖像尺寸  329
9.4.3  圖像顯示  329
9.4.4  編譯運行  331
9.5  從文件中加載圖片  332
9.6  文字輸出與字體  333
9.6.1  文字輸出函數  333
9.6.2  字體的基礎知識  334
9.6.3  字體標識符  334
9.7  高級用戶界面設計  337
9.7.1  事件響應  338
9.7.2  窗口間通信  339
9.7.3  多窗口應用程序  340
9.7.4  窗口控件  344
9.7.5  游戲制作  352

本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.leeflamesbasketballcamps.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號