周中孝、周永福、陳趙云、潘曉利、何宙興編著的《嵌入式ARM系統開發與實戰》主要面向學習嵌入式ARM開發的初學者、嵌入式愛好者,以及剛從單片機向ARM處理器轉型的電子工程師等,按照理論與實踐相結合的思想,介紹了在ARM開發中常用的一些模塊,結合具體的實例,給大家建立一個完整的ARM知識架構,包括對C、匯編語言的靈活運用,以及芯片內部寄存器的使用。本書共享源代碼和相關資料,詳細請登錄網站www.edull8.com。
本書內容完整,注重實踐性,都是從實際項目中抽取實例,讀者可在開發過程中直接作為參考,大大提高工作效率。
本書由淺入深、循序漸進、實例豐富、步驟詳細,適合嵌入式開發人員參考,也可作為高校嵌入式相關專業教材使用。
前
ARM可以說是一種技術、一種芯片,也可以說是一家公司。本書所描述的是英國ARM公司設計的主流嵌入式處理器之ARM9系列,主要包括ARM9TDMI和ARM9E-S等系列。在嵌入式領域中,基于ARM的應用,目前占用了較大的市場。但是,目前仍然有許多工程師習慣于單片機開發,還有一些從來沒接觸過ARM的高校大學生,在剛接觸ARM開發設計的時候,都會覺得很難入門,遇到架構看不懂、程序無法理解等問題。另外,很多相關ARM技術的一些開發手冊中對于ARM開發中一些常用模塊的原理及驅動程序講解不夠深入、透徹,沒有從裸機的角度去講解開發。本書面對以上問題,在模塊驅動、硬件分析,以及架構講解上極好地彌補了這些不足。盡管如此,對于ARM的初學者,剛開始還是需要靜下心來去體味本書對ARM體系架構的概述,很多人在了解完GPIO這一章內容后會掉以輕心,覺得ARM的操作相對于單片機也不怎么難。但是,進入到后面的模塊,如UART部分,馬上就不適應了,越往后越看不懂。所以,在通過本書去學習ARM的同時,要多注意總結,去歸納一個學習的方法,當把ARM體系架構了解清楚之后,所有的疑點將會豁然開朗。
1.本書的編寫原則
(1) 注重原理。每個模塊從細節上去分析功能,雖然在很多章節里面文字篇幅比較大,顯得非常啰唆,但是對于學習嵌入式ARM開發的初學者來說,可以從基本的角度去了解每個模塊的工作原理,為其提供了一個完整、細膩的開發過程。
(2) 代碼的實用性。每個模塊的代碼都是經過實際驗證的,在C編程上注重代碼的函數化、宏調用及各種位和邏輯的運算,嚴格按照編程規范,并且做到通俗易懂。所以,在學習代碼的過程中,掌握C編程的要領和規范后,在編程的道路上就會事半功倍。
(3) 強調硬件。對于嵌入式ARM開發的學習,從裸機角度上來說,實際上就是學習芯片架構和外圍硬件電路。所以,本書在內容的講解上強調與硬件相結合,從硬件本身去分析各個模塊的功能,深入到時序、引腳功能、電平轉換和物理現象等,力求為讀者打造一個完善的ARM學習平臺。
(4) 多做學結。在這個發展迅速的電子世界中,處理器的更新換代是非常快的,本書在各個模塊的講解中會有很多學習的總結,"什么是通信"、"存儲器的特點"、"中斷的處理過程"等問題在書中都有很好的總結。只要掌握了方法,無論技術如何更新換代,都能夠運籌帷幄。
本書內容側重于實用性,所有硬件基于深圳信盈達電子有限公司的2440學習平臺,為了便于讀者查閱和與原文保持一致,本書對某些不符合國家標準的圖形、符號等未作改動,未對某些原圖或表進行翻譯,特此說明。
2.致謝
參與本書編寫的還有深圳信盈達電子有限公司牛樂樂、陳志發、王苑增、黃文濤、劉浚、蒙海進、張鵬飛、毛爽等人。在此一并表示感謝。
由于編者水平有限,書中難免有不恰當的地方,懇請各位老師及同行提出寶貴的意見,聯系郵箱:niusdw@163com,歡迎來信交流。
編著者
第1章 ARM、嵌入式系統介紹
1.1 ARM微處理器概述
1.2 嵌入式系統的概念
1.3 嵌入式操作系統
第2章 ARM外圍硬件、實驗平臺硬件詳解
2.1 S3C2440系列芯片介紹
2.2 S3C2440系列芯片的應用領域
2.3 S3C2440系列芯片的器件信息
2.4 S3C2440系列芯片的引腳圖
2.5 S3C2440系列芯片的結構框圖
2.6 S3C2440系列芯片的引腳說明
2.7 S3C2440系列芯片的開發板硬件設計說明
第3章 ARM體系架構
3.1 ARM9TDMI介紹
3.2 ARM體系結構的特點
3.3 各ARM體系結構版本
3.4 ARM處理器內核簡介
3.5 存儲控制器
3.6 協處理器接口
3.7 調試接口簡介
3.8 ETM接口簡介
第4章 ARM指令集介紹
4.1 ARM指令集簡介
4.2 ARM處理器尋址方式
4.3 ARM指令集
4.4 ARM偽指令
4.5 Thumb指令集
第5章 ARM啟動代碼詳解
5.1 啟動代碼綜述
5.2 S3C2440初始化說明
第6章 GPIO實驗
6.1 GPIO原理分析
6.2 硬件連接
6.3 程序范例
6.4 GPIO作業
第7章 UART實驗
7.1 UART原理分析
7.2 S3C2440的UART介紹
7.3 UART查詢方式串行通信過程
7.4 UART應用編程示例
第8章 TFT LCD實驗
8.1 常用顯示器件類別
8.2 LCD介紹
8.3 S3C2440 LCD控制器的特性
8.4 LCD控制器主要寄存器功能詳解
8.5 LCD程序流程
8.6 程序實現
8.7 取模軟件使用
第9章 中斷
9.1 S3C2440中斷介紹
9.2 中斷范例:硬件設計——鍵盤的硬件實現
9.3 軟件實現
第10章 ADC模數轉換
10.1 AD原理
10.2 S3C2440 ADC介紹
10.3 S3C2440 ADC 控制寄存器
10.4 實驗電路圖
10.5 程序范例:程序設計實現
第11章 觸摸屏實驗
11.1 觸摸屏
11.2 S3C2440 觸摸屏控制器
11.3 觸摸屏電路圖
11.4 實驗程序
11.5 觸摸屏校正
第12章 RTC實驗
12.1 簡單介紹
12.2 相關寄存器
12.3 程序實現
第13章 定時器實驗
13.1 S3C2440定時器介紹
13.2 程序執行過程
13.3 程序范例
13.4 程序運行結果
第14章 PWM實驗
14.1 S3C2440定時器介紹
14.2 脈寬調制PWM介紹
14.3 相關PWM寄存器介紹
14.4 程序執行過程
14.5 程序代碼
第15章 SDRAM模塊
15.1 SDRAM概述
15.2 存儲控制器
15.3 硬件連接
15.4 軟件設計流程
第16章 Nor Flash模塊
16.1 Flash(閃存)的特點
16.2 Nor Flash簡介
16.3 S29AL016J Nor Flash簡介
16.4 硬件連接
16.5 S29AL016J的程序
16.6 S29AL016J的編程實現
16.6.5 主函數
第17章 Nand Flash模塊
17.1 Nand Flash的特點
17.2 K9F1G08U0B芯片介紹(128M8b Nand Flash)
17.3 Nand Flash寄存器
17.4 硬件連接介紹
17.5 程序流程
17.6 Nand Flash編程實現
第18章 IIC模塊
18.1 IIC介紹
18.2 IIC總線特點
18.3 總線工作原理
18.4 S3C2440X的IIC控制器
18.5 AT24C02 EEPROM
18.6 硬件電路圖
18.7 程序實現
第19章 SPI模塊
19.1 SPI介紹
19.2 SPI硬件連接
19.3 程序操作過程
19.4 SPI模式選擇和寄存器介紹
第20章 看門狗實驗
20.1 看門狗功能簡述
20.2 看門狗的工作原理
20.3 S3C2440的看門狗
20.4 S3C2440相關寄存器
20.5 看門狗應用編程實現
20.6 程序范例
20.7 看門狗程序運行結果
第21章 內存管理單元MMU
21.1 內存管理單元MMU概述
21.2 Cache——協處理指令
21.3 DMA含義
第22章 音頻AC97/IIS、視頻、USB接口、SD卡原理
22.1 音頻AC97/IIS
22.2 視頻
22.3 USB接口
22.4 SD卡原理
第23章 KEIL集成開發環境介紹及應用
23.1 及時步:新建工程
23.2 第二步:新建文件,自己寫c程序(用戶程序)
23.3 第三步:添加c文件到工程
23.4 第四步:COPY 2~4個配置文件
23.5 第五步:配置
23.6 仿真、調試、運行
第24章 Cisco TFTP Server下載指南
24.1 軟件簡介
24.2 TFTP簡介
24.3 操作步驟
24.4 思科服務器常見問題
第25章 H-JTAG仿真調試器的使用
25.1 安裝軟件
25.2 打開H-JTAG Server軟件
25.3 打開H-Flasher軟件
25.4 運行下載完程序
25.5 H-JTAG擦除Nor Flash操作
第26章 JLINK仿真調試器的使用
第27章 μC/OS操作系統簡介
27.1 嵌入式操作系統簡介
27.2 μC/OS——微控制器操作系統
27.3 μC/OS-II圖書
27.4 μC/OS-II提供的系統服務
第28章 μC/OS操作系統移植實例
28.1 μC/OS II成功移植的條件
28.2 μC/OS II移植的相關工作
28.3 用戶實時任務編寫
第29章 嵌入式系統工程設計、ARM電子項目開發實戰案例1
29.1 項目管理知識
29.2 ARM項目范例講解
第30章 嵌入式系統工程設計、ARM電子項目開發實戰案例2
30.1 ARM9項目功能介紹——可視觸摸屏門禁機項目
30.2 可視門禁機主界面
30.3 ARM9項目功能介紹——裸機計算器項目
30.4 ARM9項目功能介紹——手寫板項目
30.5 ARM9項目功能介紹——RTC實時時鐘項目
第31章 ARM11硬件介紹
31.1 ARMv6體系結構
31.2 目標應用
31.3 特點
31.4 性能
31.5 ARM11處理器的內核特點
31.6 S3C6410 硬件開發指南
第32章 ModBus RTU模式CRC16校驗
32.1 CRC概念
32.2 工業總線 ModBus
參考文獻
封面后面居然爛了!!!!差勁
ARM9裸奔書籍,市面比較少呢類書,要讀下!!
適合有一定嵌入式基礎的同仁閱讀。