定 價:49 元
叢書名:21世紀高等學校嵌入式系統(tǒng)專業(yè)規(guī)劃教材
- 作者:賴曉晨,王孝良,任志磊,方圓 著
- 出版時間:2016/6/1
- ISBN:9787302429852
- 出 版 社:清華大學出版社
- 中圖法分類:TP332
- 頁碼:376
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書以ARM處理器為硬件平臺,以應用廣泛的嵌入式Linux操作系統(tǒng)為軟件平臺,全面介紹嵌入式C語言程序設計的概念、思想、方法和技巧。本書還介紹了嵌入式系統(tǒng)的仿真設計方法,以期降低讀者進行嵌入式學習的難度。 本書內容豐富,緊貼新技術;以實例為基礎講解知識點,由淺入深,通俗易懂;書中代碼及配套課件完整、詳盡、嚴謹、風格統(tǒng)一,讀者可直接將代碼應用在自己的工程項目中。 本書適合作為嵌入式專業(yè)方向的高年級本科生教材,也適用于希望轉向嵌入式系統(tǒng)設計的IT從業(yè)人員; 作為學習主流嵌入式系統(tǒng)軟件設計的指導教材, 本書尤其適合學習了嵌入式硬件基礎知識及C語言,但是還沒有形成嵌入式系統(tǒng)設計完整概念的人員。
本書以ARM處理器為硬件平臺,以應用廣泛的嵌入式Linux操作系統(tǒng)為軟件平臺,全面介紹嵌入式C語言程序設計的概念、思想、方法和技巧;本書內容著眼于三星公司和恩智浦公司暢銷的ARM7和ARM9處理器,以及2.4和2.6內核版本的嵌入式Linux操作系統(tǒng),力爭使讀者盡可能多地了解嵌入式系統(tǒng)的主流技術。
為了降低讀者的學習成本和學習難度,本書還介紹嵌入式系統(tǒng)的仿真設計方法,指導讀者通過Proteus仿真軟件設計自己的嵌入式系統(tǒng),并介紹Proteus與其他嵌入式IDE的聯(lián)調方法,使讀者無需購買嵌入式開發(fā)板也可以完成自己的嵌入式系統(tǒng)設計。
本書內容覆蓋廣泛,緊貼新技術,書中提及的各種開發(fā)工具,均采用新版本;以實例為基礎講解各知識點,由淺入深,通俗易懂;書中代碼及配套課件完整、詳盡、嚴謹、風格統(tǒng)一,讀者可直接將書中的工程代碼應用在自己的項目中。
本書適用于嵌入式專業(yè)方向的高年級本科生作為教材使用,也適用于希望轉向嵌入式系統(tǒng)設計的IT從業(yè)人員;尤其適合學習了嵌入式硬件基礎知識及C語言,但是還沒有形成嵌入式系統(tǒng)設計完整概念的人員,作為學習主流嵌入式系統(tǒng)軟件設計的指導教材使用。
第1章緒論
1.1嵌入式系統(tǒng)概述
1.1.1計算機的發(fā)展和分類
1.1.2嵌入式系統(tǒng)概覽
1.1.3嵌入式系統(tǒng)的組成
1.1.4嵌入式系統(tǒng)的發(fā)展
1.2嵌入式系統(tǒng)開發(fā)流程
1.3嵌入式軟件設計
1.3.1嵌入式系統(tǒng)開發(fā)語言
1.3.2嵌入式系統(tǒng)的開發(fā)工具
1.4本書內容簡介
第2章預備知識
2.1ARM體系結構
2.1.1ARM體系結構簡介
2.1.2ARM指令集
2.1.3S3C44B0X嵌入式處理器
2.1.4LPC2136嵌入式處理器
2.1.5S3C2410X嵌入式處理器
2.2Linux操作系統(tǒng)
2.2.1Linux操作系統(tǒng)的歷史
2.2.2Linux操作系統(tǒng)的特點
2.2.3Linux版本
2.2.4Linux的安裝
2.3Linux操作系統(tǒng)基礎操作
2.3.1shell
2.3.2常用shell命令
第3章嵌入式Linux開發(fā)環(huán)境
3.1交叉開發(fā)環(huán)境
3.2Linux開發(fā)工具鏈
3.2.1Linux開發(fā)工具鏈簡介
3.2.2GNU交叉開發(fā)環(huán)境的建立
3.3編輯器
3.4編譯器
3.4.1gcc簡介
3.4.2gcc的基本用法
3.5鏈接器
3.6調試器
3.7自動化編譯配置文件
3.7.1自動化編譯配置文件簡介
3.7.2Makefile規(guī)則
3.7.3Makefile的變量
3.7.4Makefile的執(zhí)行
3.7.5make內嵌函數(shù)
3.7.6make的常見錯誤信息
第4章嵌入式操作系統(tǒng)平臺構建
4.1嵌入式操作系統(tǒng)的構建
4.2BootLoader
4.2.1BootLoader概述
4.2.2BootLoader框架
4.2.3BootLoader代碼分析
4.2.4vivi
4.3內核編譯
4.3.1μCLinux操作系統(tǒng)簡介
4.3.2μCLinux操作系統(tǒng)內核編譯
4.3.3嵌入式Linux操作系統(tǒng)2.4版本內核編譯
4.3.4嵌入式Linux操作系統(tǒng)2.6版本內核編譯
4.4BusyBox
4.5文件系統(tǒng)
4.5.1Linux系統(tǒng)中常見的文件系統(tǒng)
4.5.2構建YAFFS2文件系統(tǒng)
4.6應用程序設計流程
4.6.1交叉編譯
4.6.2執(zhí)行程序
第5章嵌入式C語言基礎
5.1嵌入式C語言概述
5.1.1C語言的歷史和特點
5.1.2預處理指令
5.1.3位運算
5.1.4函數(shù)指針
5.1.5C程序的移植
5.2GNU C擴展
5.3嵌入式C程序架構
5.3.1嵌入式C程序
5.3.2人機界面
5.3.3指針的使用方法
5.4ARM C程序設計優(yōu)化
5.4.1編譯器的特性
5.4.2數(shù)據(jù)類型對程序效率的影響
5.4.3循環(huán)方式對程序效率的影響
5.4.4指針對程序效率的影響
5.4.5邊界對齊對程序效率的影響
5.5硬件編程
5.6*C語言編程規(guī)范
5.6.1排版
5.6.2注釋
5.6.3命名規(guī)則
5.6.4可讀性
5.6.5變量和結構
5.6.6函數(shù)
5.6.7程序效率
第6章嵌入式Linux程序設計基礎
6.1錯誤處理機制
6.1.1C語言的錯誤處理機制
6.1.2系統(tǒng)日志文件
6.2文件和內存操作
6.2.1文件操作
6.2.2目錄操作
6.2.3內存操作
6.3進程控制
6.3.1創(chuàng)建進程
6.3.2exec系統(tǒng)調用
6.3.3等待進程結束
6.3.4殺死進程
6.4線程控制
6.4.1線程概述
6.4.2多線程程序設計方法
6.4.3線程同步
6.4.4線程屬性
6.4.5線程取消
6.5Linux庫
6.5.1Linux庫概述
6.5.2庫操作工具
6.5.3靜態(tài)庫
6.5.4共享庫
6.5.5動態(tài)鏈接庫
第7章嵌入式Linux程序設計進階
7.1信號
7.1.1信號概述
7.1.2信號相關函數(shù)
7.1.3信號集相關函數(shù)
7.1.4其他信號相關函數(shù)
7.2管道
7.2.1無名管道
7.2.2有名管道
7.3信號量
7.3.1信號量概述
7.3.2信號量相關函數(shù)
7.3.3信號量處理函數(shù)程序示例
7.4共享內存
7.4.1共享內存簡介
7.4.2共享內存操作函數(shù)
7.4.3共享內存程序示例
7.5消息隊列
7.5.1消息隊列簡介
7.5.2消息隊列操作函數(shù)
7.5.3消息隊列程序示例
第8章嵌入式Linux內核驅動程序設計
8.1Linux內核模塊
8.1.1Linux內核模塊概述
8.1.2Linux內核模塊實例
8.1.3Linux內核模塊實現(xiàn)機制
8.2Linux驅動程序工作原理
8.2.1設備驅動程序概述
8.2.2設備驅動程序接口
8.3Linux內核虛擬驅動程序設計實例
8.3.1Linux 2.4內核虛擬驅動程序
8.3.2Linux 2.6內核虛擬驅動程序
8.4ARM7/μCLinux驅動程序設計實例
8.5ARM9/Linux 2.4內核驅動程序設計實例
8.5.1蜂鳴器驅動程序設計實例
8.5.2ADC驅動程序設計實例
8.5.3中斷驅動程序設計實例
8.6ARM9/Linux 2.6內核驅動程序設計實例
8.6.1按鍵驅動程序設計實例
8.6.2PWM驅動程序設計實例
第9章基于Proteus的硬件仿真
9.1LED流水燈
9.1.1工作原理
9.1.2電路介紹
9.1.3軟件設計
9.1.4Proteus仿真
9.2蜂鳴器與繼電器
9.2.1工作原理
9.2.2電路介紹
9.2.3軟件設計
9.2.4Proteus仿真
9.3鍵盤與數(shù)碼管
9.3.1工作原理
9.3.2電路介紹
9.3.3軟件設計
9.3.4Proteus仿真
9.4LED點陣
9.4.1工作原理
9.4.2電路介紹
9.4.3軟件設計
9.4.4Proteus仿真
9.5PWM音樂播放
9.5.1工作原理
9.5.2電路介紹
9.5.3軟件設計
9.5.4Proteus仿真
9.6UART
9.6.1工作原理
9.6.2電路介紹
9.6.3軟件設計
9.6.4Proteus仿真
9.7中斷
9.7.1工作原理
9.7.2電路介紹
9.7.3軟件設計
9.7.4Proteus仿真
9.8點陣型LCD
9.8.1工作原理
9.8.2電路設計
9.8.3軟件設計
9.8.4Proteus仿真
9.9A/D轉換器
9.9.1工作原理
9.9.2電路設計
9.9.3軟件設計
9.9.4Proteus仿真
參考文獻