定 價:44 元
叢書名:21世紀全國本科院校電氣信息類創(chuàng)新型應用人才培養(yǎng)規(guī)劃教材
- 作者:邢吉生 ,等 編
- 出版時間:2011/9/1
- ISBN:9787301194515
- 出 版 社:北京大學出版社
- 中圖法分類:TP311.1
- 頁碼:348
- 紙張:膠版紙
- 版次:1
- 開本:16開
《嵌入式系統(tǒng)設計及應用》以ARM9系列微處理器ARM920T為基礎,系統(tǒng)介紹了嵌入式系統(tǒng)的基本概念、開發(fā)的基本技能、簡單驅動電路及其程序的設計方法。通過對《嵌入式系統(tǒng)設計及應用》的學習,讀者能夠掌握嵌入式系統(tǒng)開發(fā)設計的基礎知識和基本技能,達到快速入門的效果,而且可以較全面地掌握嵌入式系統(tǒng)的整個開發(fā)流程。
《嵌入式系統(tǒng)設計及應用》共分為3篇:第1篇介紹了嵌入式系統(tǒng)基礎,主要講述硬件基本結構和指令系統(tǒng):第2篇介紹了嵌入式Linux基礎開發(fā),主要講述系統(tǒng)內核的基本知識和開發(fā)編譯工具的使用;第3篇介紹了嵌入式Linux應用開發(fā),主要講述設備驅動程序、文件管理、圖形界面等設計的方法和流程!肚度胧较到y(tǒng)設計及應用》從最簡單的點亮LED開始,由淺入深地講解,引領學生步入嵌入式Linux開發(fā)的大門。從Linux的理論介紹到Linux內核開發(fā)、驅動開發(fā)及應用程序開發(fā)的整個學習過程,《嵌入式系統(tǒng)設計及應用》始終遵循理論和實踐相結合的教學理念。
《嵌入式系統(tǒng)設計及應用》由淺入深,循序漸進,不僅適合剛接觸嵌入式Linux的初學者,還可作為大、中專院校嵌入式系統(tǒng)應用及其相關專業(yè)本科生、研究生的教材,也可供相關工程技術人員參考。
《嵌入式系統(tǒng)設計及應用》主要介紹:嵌入式系統(tǒng)基礎,領你熟悉硬件基本結構和指令系統(tǒng),Linux基礎開發(fā),帶你掌握內核基本知識和編譯工具,嵌入式應用開發(fā),為你打開驅動和圖形等設計的大門。
第1篇 嵌入式系統(tǒng)基礎篇
第1章 嵌入式系統(tǒng)開發(fā)與應用概述
1.1 嵌入式系統(tǒng)簡介
1.1.1 嵌入式系統(tǒng)的基本概念
1.1.2 嵌入式系統(tǒng)的體系結構
1.2 基于ARM的嵌入式開發(fā)環(huán)境概述
1.2.1 交叉開發(fā)環(huán)境
1.2.2 模擬開發(fā)環(huán)境
1.2.3 評估電路板
1.3 各種ARM開發(fā)工具簡介
1.3.1 ARM ADS
1.3.2 Multi 2000
1.3.3 RealView WMDK
1.3.4 0PENice32-A900仿真器
1.3.5 Multi-ICE仿真器
1.3.6 ULINK2仿真器
1.4 如何學習基于ARM嵌入式
系統(tǒng)開發(fā)
思考與練習
第2章 嵌入式處理器
SAMSUNG S3C2410概述
2.1 嵌入式ARM處理器
2.1.1 ARM處理器的特點
2.1.2 ARM微處理器系列
2.1.3 ARM微處理器的寄存器結構
2.1.4 ARM微處理器的指令結構
2.1.5 ARM微處理器的編程模型
2.1.6 ARM體系結構的存儲器格式
2.1.7 ARM微處理器的應用領域
2.2 SAMSUNGS3C2410處理器
2.2.1 特性
2.2.2 處理器工作模式
2.2.3 寄存器
2.3 SAMSUNGS3C2410模塊接口
2.3.1 時鐘與電源管理
2.3.2 內存控制器
2.3.3 基本I/O接口
2.3.4 中斷控制
思考與練習
第3章 ARM微處理器的指令系統(tǒng)
3.1 ARM微處理器的指令集概述
3.1.1 ARM微處理器指令的分類與格式
3.1.2 指令的條件域
3.2 ARM指令的尋址方式
3.2.1 立即尋址
3.2.2 寄存器尋址
3.2.3 寄存器間接尋址
3.2.4 基址變址尋址
3.2.5 多寄存器尋址
3.2.6 相對尋址
3.2.7 堆棧尋址
3.3 ARM指令集
3.3.1 跳轉指令
3.3.2 數(shù)據(jù)處理指令
3.3.3 乘法指令與乘加指令
3.3.4 程序狀態(tài)寄存器訪問指令
3.3.5 加載,存儲指令
3.3.6 批量數(shù)據(jù)加載/存儲指令
3.3.7 數(shù)據(jù)交換指令
3.3.8 移位指令(操作)
3.4 Thumb指令及應用
思考與練習
第4章 基于S3C1410處理器的裸機開發(fā)
4.1 嵌入式系統(tǒng)開發(fā)環(huán)境構建
4.1.1 硬件環(huán)境構建
4.1.2 軟件環(huán)境構建
4.2 Realview MDK的使用
4.2.1 uVision IDE主框架窗口
4.2.2 工程管理
4.2.3 工程基本配置
4.2.4 編譯、鏈接與調試
4.3 LED控制設計實例
4.3.1 LED驅動原理及功能
4.3.2 LED驅動軟件設計
4.3.3 操作步驟
4.3.4 實例測試,
4.4 D/A功能應用開發(fā)實例
4.4.1 D/A轉換器原理
4.4.2 電路設計
4.4.3 D/A轉換器驅動軟件設計
4.5 S3C2410的串行通信設計實例
4.5.1 串口通信原理
4.5.2 RS232接口電路
4.5.3 S3C2410的UART模塊軟件設計
4.5.4 案例測試
思考與練習
第2篇 嵌入式Linux基礎開發(fā)篇
第5章 嵌入式操作系統(tǒng)Linux概述
5.1 Linux的誕生與發(fā)展
5.1.1 Linux的誕生與版本歷史
5.1.2 Linux在嵌入式領域的延伸
5.2 Linux內核結構
5.2.1 Linux內核概述
5.2.2 存儲與進程管理
5.2.3 內核源代碼目錄結構
5.3 Linux存儲管理
5.3.1 進程虛存空間的管理
5.3.2 虛存空間的映射和虛存區(qū)域的建立
5.3.3 Linux的分頁式存儲管理
5.3.4 物理內存空間的管理
5.3.5 內存的分配與釋放
5.4 Linux進程管理
5.4.1 Linux進程管理介紹
5.4.2 進程及作業(yè)
5.4.3 啟動進程
5.4.4 進程管理
5.5 Linux內核啟動和初始化進程
5.5.1 引導程序Bootloader
5.5.2 Kemel引導入口
5.5.3 核心數(shù)據(jù)結構初始化——內核引導第一部分
5,5.4 外設初始化——內核引導第二部分
5.5.5 init進程和inittab引導腳本
5.5.6 rc啟動腳本
5.5.7 getty和login
5.5.8 baSh
思考與練習
第6章 嵌入式Linux開發(fā)基礎
6.1 搭建嵌入式Linux開發(fā)環(huán)境
6.1.1 常用的Linux發(fā)行版
6.1.2 Ubuntu的安裝與運行
6.1.3 嵌入式環(huán)境的配置與源碼的安裝
6.1.4 常用軟件的配置
6.2 Linux準備知識
6.2.1 常用的Linux命令與使用方法
……
第7章 嵌入式Linux系統(tǒng)開發(fā)
第3篇 嵌入式Linux應用開發(fā)篇
第8章 嵌入式Linux設備驅動程序開發(fā)
第9章 嵌入式應用程序開發(fā)
第10章 嵌入式GUI設計
參考文獻
編寫驅動的第一步是定義驅動將要提供給用戶程序的能力(機制)。因為“設備”是計算機內存的一部分,用戶可自由地做其想做的事情。它可以是一個順序的或者隨機存取的設備,一個或多個設備,等等。
為使scull作為一個模板來編寫真實設備的真實驅動,下面將展示如何在計算機內存上實現(xiàn)幾個設備抽象,每個有不同的特性。
scul源碼實現(xiàn)下面的設備,模塊實現(xiàn)的每種設備都被引用做一種類型。
(1)從scull 0到scu113這4個設備,每個由一個全局永久的內存區(qū)組成。全局意味著如果設備被多次打開,設備中含有的數(shù)據(jù)由所有打開它的文件描述符共享。永久意味著如果設備關閉又重新打開,數(shù)據(jù)不會丟失。這個設備可以用慣常的命令來存取和測試,如cp、cat以及I/O重定向。
(2)scullpipe 0到scullpipe3這4個FIFO(先入先出)設備,它們的行為像管道。一個進程讀的內容來自另一個進程所寫的。如果多個進程同時讀同一個設備,它們競爭數(shù)據(jù)。scullpipe的內部將展示阻塞讀寫和非阻塞讀寫如何實現(xiàn),而不必采取中斷。盡管真實的驅動使用硬件中斷來同步它們的設備,阻塞和非阻塞操作的主題是重要的并且與中斷處理是分開的。
……