嵌入式電腦系統與我們的生活息息相關,它就藏身在我們的行動電話、PDA、汽車、電視機、電冰箱、空調器以及許多其他裝置裡。事實上,嵌入式系統是今日電腦工業成長最快速的部分之一。
隨著適合使用嵌入式電腦系統的裝置越來越多,程式員、業餘愛好者以及各類工程師對「如何設計和建構自己的裝置」這件事也越來越感興趣。此外,本書對這些電腦系統所提供的基礎知識,對於有需要評估和應用這些系統的任何人來說,足敷所需。
本書第二版加入了新一代處理器和微控制器(包括新的 MAXQ 處理器)的相關資訊。本書不僅為初學者提供了嵌入式設計的基本知識,也為進階的系統設計者提供了有用的參考資料。
目前市面上可以看到的相關書籍,不是專門探討如何為特定的微處理器撰寫程式,就是只強調嵌入式系統的設計原理而不提供任何實用的資訊,唯有本書採取中間路線,兩者兼顧。本書的作者 John Catsoulis 具有豐富的實務經驗,他將會告訴你如何設計和建構全新的嵌入式裝置與電腦化的小玩意兒,以及如何修改和擴充一個現成的系統。
除了實際的範例,本書還提供了許多提示和警告,讓你得以避免各種錯誤和陷阱。本書的內容涵蓋:
* 嵌入式系統的理論與實務
* 瞭解電路圖與規格表
* 嵌入式系統的電源供給
* 嵌入式系統的製造與除錯
* 處理器:PIC、Atmel 的 AVR 以及 Motorola 的 68000 系列
* DSP(數位訊號處理)的架構
* 用來附加周邊裝置的協定:SPI 和 I2C
* RS-232C、RS-422、RS-485、紅外線通訊以及 USB
* 網路:CAN以及Ethernet
* PWM(脈寬調變)與馬達控制
如果你想要建構自己的嵌入式系統,或是修改現成的系統,你將會發現本書所提供的知識和實務技巧,足敷所需。
目錄
序
第 1 章 電腦架構簡介
1.1 基本概念
1.2 記憶體
1.3 輸入 / 輸出
1.4 DMA
1.5 嵌入式電腦架構
第 2 章 組合語言
2.1 暫存器
2.2 機器碼
2.3 有號數
2.4 定址模式
2.5 組合語言編程
2.6 反組譯
2.7 與位址無關的程式碼
2.8 迴圈
2.9 遮蔽
2.10 索引定址
2.11 堆疊
2.12 指令的執行時間
第 3 章 Forth/Open Firmware
3.1 Forth 簡介
3.2 字串的處理
3.3 堆疊的操作
3.4 建立新詞
3.5 註解
3.6 if ... else
3.7 迴圈
3.8 資料結構
3.9 與硬體與記憶體的互動
3.10 Forth 程式設計的原則
第 4 章 電子學入門
4.1 電壓與電流
4.2 類比訊號
4.3 功率
4.4 了解電路圖
4.5 電阻器
4.6 電容器
4.7 RC 電路
4.8 電感器
4.9 變壓器
4.10 二極體
4.11 石英晶體
4.12 數位訊號
4.13 電氣特性
4.14 邏輯閘
4.15 閱讀規格表的重要性
第 5 章 電源
5.1 來自牆壁上插座的電力
5.2 電池
5.3 低功率的設計
5.4 穩壓器
5.5 LM78xx 穩壓器
5.6 MAX603/MAX604 穩壓器
5.7 MAX1615 穩壓器
5.8 MAX724 穩壓器
5.9 雜訊與干擾
第 6 章 建構硬體
6.1 工具
6.2 焊接
6.3 快速的建構方式
6.4 印刷電路板
6.5 建構 PCB
6.6 JTAG
第 7 章 使用 SPI 介面添加周邊裝置
7.1 序列周邊介面
第 8 章 使用 I2C 介面添加周邊裝置
8.1 I2C 簡介
8.2 使用 I2C 添加即時時鐘
8.3 使用 I2C 添加小型顯示器
第 9 章 序列埠
9.1 UART
9.2 錯誤偵測
9.3 歷史悠久的 RS-232C
9.4 RS-422
9.5 RS-485
第 10 章 IrDA
10.1 IrDA 簡介
第 11 章 USB
11.1 USB 簡介
11.2 USB 的封包
11.3 實體介面
11.4 USB 介面的實作
第 12 章 網路
12.1 CAN
12.2 Ethernet
第 13 章 類比訊號
13.1 放大器
13.2 類比對數位的轉換
13.3 連接外部的 ADC
13.4 溫度感應器
13.5 光線感應器
13.6 加速度計
13.7 壓力感應器
13.8 磁場感應器
13.9 數位對類別轉換
13.10 PWM13.10 PWM
13.11 馬達控制
13.12 大型負載的開關
第 14 章 PIC 微控制器族系
14.1 兩款處理器的故事
14.2 從簡單的例子開始
14.3 較大型的 PIC
14.4 以 PIC 為基礎的環境資料登錄器
14.5 以 PIC 來控制馬達
第 15 章 AVR 微控制器族系
15.1 AVR 的架構
15.2 ATtiny15 處理器
15.3 載入程式碼
15.4 較大型的 AVR
15.5 以 AVR 為基礎的資料登錄器
15.6 介接匯流排
第 16 章 68HC11
16.1 68HC11 的架構
16.2 一個基於 68HC11 的電腦
第 17 章 MAXQ
17.1 MAXQ 的結構
17.2 電路圖
第 18 章 68000 系列處理器
18.1 68000 的架構
18.2 設計一台簡單的 68000 電腦
第 19 章 以 DSP 為基礎的控制器
19.1 DSP56800
19.2 一個以 DSP56805 為基礎的電腦
19.3 JTAG
索引
序
第 1 章 電腦架構簡介
1.1 基本概念
1.2 記憶體
1.3 輸入 / 輸出
1.4 DMA
1.5 嵌入式電腦架構
第 2 章 組合語言
2.1 暫存器
2.2 機器碼
2.3 有號數
2.4 定址模式
2.5 組合語言編程
2.6 反組譯
2.7 與位址無關的程式碼
2.8 迴圈
2.9 遮蔽
2.10 索引定址
2.11 堆疊
2.12 指令的執行時間
第 3 章 Forth/Open Firmware
3.1 Forth 簡介
3.2 字串的處理
3.3 堆疊的操作
3.4 建立新詞
3.5 註解
3.6 if ... else
3.7 迴圈
3.8 資料...