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