I/O 裝置與界面電路 I/O 裝置 輸入裝置 輸出裝置 輸入 / 輸出裝置 I/O 埠一般可以分成三種 : 資料埠 (data port) 狀態埠 (status port) 控制埠 (control port) 林銘波編著 --- 全華科技圖書公司 11.1 簡單的輸入埠例 接往 CPU 模組 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A14 A15 RD Vcc G Q0 D0 Q1 D1 Q2 D2 Q3 D3 Q4 D4 Q5 D5 Q6 D6 Q7 D7 OE GND 74LS373 SDB (a) 電路 林銘波編著 --- 全華科技圖書公司 11.2 I/O 埠位址解碼2 2. k 8 DIP 開關 7 6 5 4 3 2 1 0 (b) 規劃模式
解碼器 簡單的輸出埠例 接往 CPU 模組 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A14 A15 WR D0 D1 D2 D3 D4 D5 D6 D7 Vcc 74LS373 G OE Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND DDB (a) 電路 解碼器I/O 埠位址解碼16 進制對七 段解碼器 7 6 5 4 3 2 1 0 MSD LSD (b) 規劃模式 林銘波編著 --- 全華科技圖書公司 11.3 輸入 / 輸出埠 ( 雙向 I/O 埠 ) 例 I/O 匯流排 7 6 5 4 3 2 1 0 接往 I/O 裝置 ( 例如解碼器與顯示器 ) 輸出埠 輸入埠 輸出埠 輸入埠規劃模式 7 6 5 4 3 2 1 0 MSD LSD 輸出埠規劃模式 (b) 規劃模式 (a) 電路結構 林銘波編著 --- 全華科技圖書公司 11.4
獨立式 I/O 結構 CPU I/O 位址 I/O 資料 I/O 控制 I/O 匯流排 記憶器匯流排 記憶器 I/O 界面 I/O 裝置............ I/O 界面 I/O 裝置 特殊的資料與控制線 林銘波編著 --- 全華科技圖書公司 11.5 獨立式 I/O 結構 0 1 M 0 I/O 位址空間記憶器 64 k 位址空間 (M / IO = 0) (M / IO = 1) 林銘波編著 --- 全華科技圖書公司 11.6
記憶器映成 I/O 結構 CPU 位址 資料 控制 0 記憶器 記憶器 I/O 界面... I/O 界面...... I/O 裝置... I/O 裝置 系統匯流排(a) 系統結構 (b) I/O 位址空間例 特殊的資料與控制線 64 k I/O 位址空間記憶器 林銘波編著 --- 全華科技圖書公司 11.7 I/O 資料轉移方式 轉移類型 由程式設定的初值 程式動作 設定裝置界面暫存器初 值 CPU 啟動轉移 條件性又稱輪呼式 I/O 或程式 I/O) 裝置啟動轉移 中斷 I/O DMA( 即區段資料轉移方式 ) 1. 設定裝置初值, 備妥以中斷方式轉移資料 ; 2. 致能中斷 1. 設定裝置初值 ; 2. 設定 DMAC 暫存器 : 位元組計數器 位址 3. 啟動 DMAC 測試裝置狀態直到該裝置備妥, 然後轉移資料 1. 當中斷發生時, 轉移資料 ; 2. 在轉移資料後, 清除中斷要求 處理其它事情, 在區段資料轉移完畢後, 才接受 DMAC 的中斷要求 林銘波編著 --- 全華科技圖書公司 11.8
輪呼式 ( 程式 )I/O 輪呼式 I/O 動作流程 1. 自周邊裝置讀取狀態資訊 ; 2. 測試該資訊以決定周邊是否已經備妥資料轉移 ; 若是, 則進行步驟 3, 否則, 回到步驟 1 ; 3. 執行實際的資料轉移 林銘波編著 --- 全華科技圖書公司 11.9 中斷式 I/O 主程式的動作流程 : 1. 設定中斷要求的初值 ( 例如致能中斷要求與設定中斷要求的中斷向量 ); 2. 設定界面電路相關位元, 以備妥中斷 I/O 資料轉移 ; 3. 微處理器處理其正常的程式 中斷服務程式 (ISR) 的動作流程 : 1. 讀取 I/O 裝置的狀態 ; 2. 若狀態顯示有錯誤發生, 則執行錯誤處理程式, 否則, 轉移資料 ; 3. 清除中斷要求狀態旗號, 然後回到被中斷的程式中, 繼續執行 林銘波編著 --- 全華科技圖書公司 11.10
直接記憶器存取 (DMA) CPU CPU ACC 記憶器 ACC 記憶器 界面電路 界面電路 (a) CPU 控制方式 (b) DMA 控制方式 林銘波編著 --- 全華科技圖書公司 11.11 DMA 資料轉移的控制信號 CPU 接往 DMAC 匯流排要求 INT 匯流排持住認知 HOLD INTR HLDA 位址匯流排 資料匯流排 IOR IOW MEMR MEMW 在 HLDA = 1 時為高阻抗狀態 林銘波編著 --- 全華科技圖書公司 11.12
典型的 DMA 控制器 (DMAC) 方塊圖 資料匯流排 資料匯流排緩衝器 位址匯流排緩衝器 位址匯流排 位址暫存器 CS A0 A1 MEMR MEMW HOLD HLDA 界面與控制邏輯RESET INT 位元組計數器 控制暫存器內部資料匯流排DREQ DACK IOR IOW 林銘波編著 --- 全華科技圖書公司 11.13 DMAC 與 CPU 界接使用 CPU AD D7~D0 位址匯流排 資料匯流排 AD D7~D0 INTR INT MEMW MEMR HLDA HLDA IOR IOW HOLD HOLD MEMW AD MEMR DMAC 位址解碼 CS D7~D0 WR RD 記憶器系統資料匯流排 DREQ DACK IOR I/O 裝置界面 IOW 林銘波編著 --- 全華科技圖書公司 11.14
數位信號微處理器系統類比信號 資料觸取系統 類比信號轉換器轉換器轉換器促動器促動器促動器工廠A A 類比多工器A A A A 類比解多工器類比信號 S/H 數位信號 ADC DAC 數位信號微處理器系統類比信號 類比信號 放大器 林銘波編著 --- 全華科技圖書公司 11.15 資料觸取系統 類比信號轉換器轉換器轉換器促動器促動器促動器工廠A A 數位多工器A A A A 數位解多工器類比信號 ADC ADC ADC DAC DAC DAC 數位信號 類比信號 放大器 林銘波編著 --- 全華科技圖書公司 11.16
典型的 S/H 電路 輸入 模式控制 (1: 取樣 ; 0: 保持 ) - + A1-15 V +15 V 開關 - + C A2 +15 V -15 V 輸出 林銘波編著 --- 全華科技圖書公司 11.17 典型的 S/H 電路參數 參數 經濟型 高性能型 參數 經濟型 高性能型 孔徑時間 100 ns 10 ns 觸取時間 15 µs 350 ns 下降率 1 µv/s 0.1 µv/s (0.01% 誤差 ) 穿透率 ±0.01% ±0.001% 林銘波編著 --- 全華科技圖書公司 11.18
邏輯電壓位準的匹配 0 V 輸入 +12 V 22 k 3.3 k +1.56 V +12 V - OP + -12 V 輸出 +12 V -12 V 10 k 輸入 +12 V -12 V 5 k 輸出 +0 V (a) 轉換 TTL 位準為 +12 V/-12 V (b) 轉換 +12 V/ -12 V 為 TTL 位準 林銘波編著 --- 全華科技圖書公司 11.19 電流信號與電壓信號的轉換 TTL 輸出 光耦合器 (a) 轉換電流信號為 TTL 電壓 電流信號輸入 TTL 輸入 光耦合器 (b) 轉換 TTL 電壓為電流信號 電流信號輸出 林銘波編著 --- 全華科技圖書公司 11.20
重負載 ( 大電流 ) 的驅動 + V S ( 30 V) + V S ( 30 V) R LOAD I LOAD 40 ma 保護電路 電感性負載 I/O 埠位元線 7406 (a) 電阻負載 I/O 埠位元線 7406 I LOAD (b) 電感性負載 40 ma 林銘波編著 --- 全華科技圖書公司 11.21 重負載 ( 大電流 ) 的驅動 + V S ( 30 V) 1 k 保護電路 電感性負載 I/O 埠位元線 I LOAD 4 A 7406 8 k 60 林銘波編著 --- 全華科技圖書公司 11.22
AC 負載的驅動 負載 120 Vac I/O 埠位元線 7406 DIP 磁簧繼電器 林銘波編著 --- 全華科技圖書公司 11.23 AC 負載的驅動 330 負載 I/O 埠位元線 7406 CdS 光耦合器 120 Vac 林銘波編著 --- 全華科技圖書公司 11.24
數位對類比轉換器 (DAC) V ref D 3 D 2 D 1 D 0 I 3 I 2 I 1 I 0 R 2 R 4 R 8 R I OUT R OUT V OUT - + 林銘波編著 --- 全華科技圖書公司 11.25 R-2R 梯形電路的 DAC 電路原理 1 ma 0.5 ma 0.25 ma 0.125 ma I ref R R R 1 ma 0.5 ma 0.25 ma 0.125 ma 2 R 2 R 2 R D 3 D 2 D 1 D 0 2 ma 2 R 2 R I out 林銘波編著 --- 全華科技圖書公司 11.26
DAC0800 的等效電路 V+ 13 V LC 1 B7 B6 B5 B4 B3 B2 B1 B0(LSB) 5 6 7 8 9 10 11 12 V REF ( + ) 14 偏壓網路 電流開關 4 2 I out I out V REF ( ) 15 16 COMP V- 3 林銘波編著 --- 全華科技圖書公司 11.27 DAC0800 應用電路 13 5 B7 6 B6 7 B5 8 B4 9 0800 B3 10 數位資料輸入 B2 DAC 11 B1 12 B0 2 1 3 14 R1 15 4 16 R2 2.5 k 2.5 k 0.01µ F I REF = 2 ma 5 k +15 V 2-3 + -15 V V OUT -5 V 林銘波編著 --- 全華科技圖書公司 11.28
類比對數位轉換器 (ADC) V a + - 電壓比較器 MSB 控制電路 LSB 轉換啟動 CLK 轉換完畢 V OUT 8 位元 DAC SAR 緩衝暫存器 D7 D6 D5 D4 D3 D2 D1 D0 林銘波編著 --- 全華科技圖書公司 11.29 ADC0804 接腳分佈圖 1 2 3 4 5 6 7 8 9 10 CS RD WR CLK IN INTR V IN( + ) V IN( ) A GND V ref /2 D GND Vcc CLK R ADC 0804 D0 D1 D2 D3 D4 D5 D6 D7 20 19 18 17 16 15 14 13 12 11 WR INTR 開始轉換轉換完成假設 CS 與 RD均接地 林銘波編著 --- 全華科技圖書公司 11.30
ADC 0804 晶片上的時脈電路 CLK R 19 R CLK IN 4 CLK C ADC 0804 林銘波編著 --- 全華科技圖書公司 11.31 應用實例 --- 溫度控制系統 +15 V +15 V LM35 300 k -15 V 溫度感側器 1 k 7 3 + 2-8 4-15 V 5k +15 V LM308 6 0. 001µF 5.1 k 1 k NC V IN ( + ) V IN ( ) CLK IN V ref/ 2 INTR WR P1.1 P1.2 1 k 14 1 2 3 74HC14 7 0. 001µF 振盪器 4 0. 1µF LM329 2 k 參考電壓 0. 1µF 7 3 LM308 + 6 5.12 V 2 10 k - 4 + 10 k 10 µf A GND V CC D7~D0 CS RD ADC 0804 D GND P2.7~P2.0 P1.0 MCS-51 10 k 10 k 固態繼電器 加熱器 林銘波編著 --- 全華科技圖書公司 11.32