微機原理-第07章-常用接口器件(車向泉)課件_第1頁
微機原理-第07章-常用接口器件(車向泉)課件_第2頁
微機原理-第07章-常用接口器件(車向泉)課件_第3頁
微機原理-第07章-常用接口器件(車向泉)課件_第4頁
微機原理-第07章-常用接口器件(車向泉)課件_第5頁
已閱讀5頁,還剩100頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

微機原理及接口技術第7章常用接口器件概述:微機應用系統的接口模型1微機原理及接口技術概述:微機應用系統的接口模型1微機應用系統的接口模型

一、單機接口模型接口的作用接口模型接口硬件設備驅動程序2微機應用系統的接口模型

一、單機接口模型接口的作用接微機應用系統的接口模型

一、單機接口模型單機系統中的接口模型3微機應用系統的接口模型

一、單機接口模型單機系統中的微機應用系統的接口模型

二、多機接口模型微機接口:用于實現一臺主機與多臺前端機間的連接,它實際解決的是一個多機通信的問題。常規的解決方案:采用點-點通信方式采用多端口存貯器方式4微機應用系統的接口模型

二、多機接口模型微機接口:用微機應用系統的接口模型

二、多機接口模型多機系統中的

接口模型典型的主從式多機系統結構;點—點通信方式的微機接口示意圖;多端口存貯器方式的微機接口5微機應用系統的接口模型

二、多機接口模型多機系微機應用系統的接口模型

三、網絡接口模型網絡設備網絡電纜網絡接口卡(適配器)PIO方式共享內存方式DMA方式智能控制方式網絡操作系統(NOS)6微機應用系統的接口模型

三、網絡接口模型網絡設備6微機應用系統的接口模型

三、網絡接口模型網絡基本模型①②③④7微機應用系統的接口模型

三、網絡接口模型網絡基本模型微機原理及接口技術第7章常用接口器件典型接口芯片7.1

8255:可編程并行接口7.2

8253:可編程定時器7.38250/16550:可編程串行通信接口8微機原理及接口技術典型接口芯片7.18255:可編程并行7.1可編程并行接口8255

一、內部結構及外部引線97.1可編程并行接口8255

一、內部結構及外部引線9圖7.28255的內部結構框圖輸入、輸出、雙向輸入、輸出輸入、輸出、控制/狀態信號復位后,A、B、C口均為輸入D0~D7有鎖存能力無鎖存能力有鎖存能力有鎖存能力10圖7.28255的內部結構框圖輸入、輸出、雙向輸入、控制字控制字11控制字控制字117.1可編程并行接口8255

二、8255的工作方式工作方式0:基本輸入輸出方式A口(PA0~PA7):輸入或輸出B口(PB0~PB7):輸入或輸出C口(PC4~PC7):輸入或輸出C口(PC0~PC3):輸入或輸出無鎖存能力有鎖存能力可按位置位/復位控制字127.1可編程并行接口8255

二、8255的工作方式工7.1可編程并行接口8255

二、8255的工作方式工作方式1:選通輸入輸出方式A口(PA0~PA7):輸入或輸出

C口(PC3、PC4、PC5/PC6、PC7):

控制、狀態信號B口(PB7~PB0):輸入或輸出

C口(PC0、PC1、PC2):控制、狀態信號C口(不用作控制/狀態信號的位):輸入或輸出137.1可編程并行接口8255

二、8255的工作方式工7.1可編程并行接口8255

二、8255的工作方式工作方式1:選通輸入輸出方式方式1下A口、B口均為輸出147.1可編程并行接口8255

二、8255的工作方式工8255→外設CPU→82558255→CPU外設→82558255→外設PC6PC20控制字158255→外設CPU→82558255→CPU外7.1可編程并行接口8255

二、8255的工作方式工作方式1:選通輸入輸出方式方式1下A口、B口均為輸入167.1可編程并行接口8255

二、8255的工作方式工外設→8255CPU→82558255→CPU外設→82558255→外設PC4PC2控制字17外設→8255CPU→82558255→CPU外方式1下,A口、B口一個為輸入,另一個為輸出:控制字18方式1下,A口、B口一個為輸入,另一個為輸出:控制字187.1可編程并行接口8255

二、8255的工作方式工作方式2:雙向輸入輸出方式(僅A口)

PC3~PC7:A口方式2下的控制線

PC0~PC2:輸入

輸出

B口方式1下的控制線

B口:方式0

方式1197.1可編程并行接口8255

二、8255的工作方式工PC6PC4PA7~PA0為三態輸出,受ACKA控制控制字20PC6PC4PA7~PA0為三態輸出,受ACKA控制控IOW在ACK之前發出,STB在IOR之前發出A口在STB鎖存數據后,外設即可撤除A口的數據A口在ACK有效時輸出數據21IOW在ACK之前發出,STB在IOR之前發出27.1可編程并行接口8255

三、8255的方式控制字及狀態字控制字227.1可編程并行接口8255

三、8255的方式控制字圖7.98255的控制字格式(方式選擇字)圖7.10C口的按位操作

控制字格式10AB23圖7.98255的控制字格式(方式選擇字)圖7.107.1可編程并行接口8255

三、8255的方式控制字及狀態字狀態字

當8255的A口、B口工作在方式1或A口工作在方式2時,通過讀C口的狀態,可以檢測A口和B口的狀態。247.1可編程并行接口8255

三、8255的方式控制字A組B組A組B組A組B組圖7.11A、B口均為方式1輸入時的狀態字圖7.12A、B口均為方式1輸出時的狀態字圖7.13A口在方式2工作時的狀態字方式1輸出方式1輸入方式225A組B組A組B組A組B組圖7.11A、B口均為方式1輸入7.1可編程并行接口8255四.8255的尋址及連接使用圖7.14PC機中8255的連接267.1可編程并行接口8255四.8255的尋址及7.1可編程并行接口8255

五、8255的初始化及應用舉例:方式0-打印機接口圖7.16方式1下8255

與打印機的連接

數據STROBEBUSYACK圖7.17

打印機的工作時序

277.1可編程并行接口8255

五、8255的初始化及應7.1可編程并行接口8255

五、8255的初始化及應用舉例:方式0-打印機接口8255地址:380H~383H初始化程序:

INIT55: MOV DX,0383H MOV AL,10000011B ;方式選擇 OUT DX,AL MOV AL,00001101B ;C口位操作 OUT DX,AL287.1可編程并行接口8255

五、8255的初始化及應PRINT: MOV AL,BLAK MOV CL,AL ;循環次數 MOV SI,OFFSETDATAGOON: MOV DX,0382H ;C口地址PWAIT:IN AL,DX AND AL,02H ;測試PC1是否為1 JNZ PWAIT ;等待不忙 MOV AL,[SI] MOV DX,0380H ;A口地址 OUT DX,AL ;送數據 MOV DX,0382H ;C口地址 MOV AL,00H OUT DX,AL ;PC6=0 CALLDelay_1us ;延時1μs MOV AL,40H OUT DX,AL ;送STROBE脈沖(PC6=1) INC SI DEC CL JNZ GOON RET忙?(Busy=1?)

則等待29PRINT: MOV AL,BLAK忙?(Busy=1?7.1可編程并行接口8255

五、8255的初始化及應用舉例:方式1-打印機接口圖7.188255與打印機的另一種連接方式1-輸出打印機時序307.1可編程并行接口8255

五、8255的初始化及應7.1可編程并行接口8255

五、8255的初始化及應用舉例:方式1-打印機接口8255地址:380H~383H初始化程序:

MOVDX,0383H MOVAL,10100000B ;方式選擇 OUTDX,AL MOVAL,00001101B ;C口位操作 OUTDX,AL方式1-輸出控制字格式1010

0

00

0 00001101A口方式1、輸出B口方式0、輸出C口高4位C口低4位(輸出)PC6置1317.1可編程并行接口8255

五、8255的初始化及應7.1可編程并行接口8255

五、8255的初始化及應用舉例:方式1-打印機接口利用8255方式1以程序控制(查詢)方式

實現打印機接口:327.1可編程并行接口8255

五、8255的初始化及應POLLPRINT:MOVAL,BLAKMOVCL,ALMOVSI,OFFSETDATAGOON:MOVDX,0382HPWAIT:INAL,DXANDAL,80H ;檢測 JZPWAITMOVAL,[SI]MOVDX,0380HOUTDX,AL ;送數據INCSIDECCLJNZGOONRET電路圖33POLLPRINT:MOVAL,BLAK電路圖337.1可編程并行接口8255

五、8255的初始化及應用舉例:方式1-打印機接口利用8255方式1以中斷方式實現打印機接口:將圖7.18中8255的PC3(INTRA)引腳接至圖6.36中8259的IR0,采用與6.5.4節中相同的對8259及中斷向量表進行初始化的程序,則當8255的INTRA有效時,在中斷允許的情況下,CPU將執行以下中斷處理程序(設要打印輸出的數據存于SI指針指示的存儲單元中,CL中記錄將要輸出的數據個數,執行一次中斷,輸出一個數據到打印機):347.1可編程并行接口8255

五、8255的初始化及應OUTPRINT:PUSHDXPUSHAXMOVDX,0380HMOVAL,[SI]OUTDX,ALINCSIDECCLMOVDX,0FF00H ;8259的地址A0=0MOVAL,20H ;設置一般EOI命令OUTDX,AL ;寫OCW2(Page280) POPAXPOPDXIRET電路圖35OUTPRINT:PUSHDX電路圖35微機原理及接口技術第7章常用接口器件典型接口芯片7.18255:可編程并行接口7.2

8253:可編程定時器7.38250/16550:可編程串行通信接口36微機原理及接口技術典型接口芯片7.18255:可編程并行7.2可編程定時器8253

一、外部引線及功能功能:①計數;②產生定時信號;③外部可控圖7.20可編程定時器8253內部結構框圖16bit16bit16bit377.2可編程定時器8253

一、外部引線及功能功能:①7.2可編程定時器8253

一、外部引線及功能寫讀高阻內部寄存器尋址:387.2可編程定時器8253

一、外部引線及功能寫讀高阻1.方式0:計數結束產生中斷7.2可編程定時器8253

二、工作方式391.方式0:計數結束產生中斷7.2可編程定時器8253計數結束禁止計數允許計數允許計數40計數結束禁止計數允許計數允許計數402.方式1:可編程單穩7.2可編程定時器8253

二、工作方式412.方式1:可編程單穩7.2可編程定時器8253

二計數結束啟動計數42計數結束啟動計數423.方式2:頻率發生器7.2可編程定時器8253

二、工作方式不影響當前計數初始化計數禁止計數并置OUT為高允許計數433.方式2:頻率發生器7.2可編程定時器8253

二4.方式3:方波發生器GATE為低電平:禁止計數,強迫OUT輸出高電平;GATE為上升沿:初始化計數;GATE為高電平:允許計數(OUT輸出對稱方波)。7.2可編程定時器8253

二、工作方式444.方式3:方波發生器7.2可編程定時器8253

二5.方式4:軟件觸發選通7.2可編程定時器8253

二、工作方式455.方式4:軟件觸發選通7.2可編程定時器8253

禁止計數允許計數允許計數46禁止計數允許計數允許計數466.方式5:硬件觸發選通7.2可編程定時器8253

二、工作方式計數結束啟動計數476.方式5:硬件觸發選通7.2可編程定時器8253

的6種工作方式時序圖825348的6種工作方式時序圖825348二進制計數:0000H~FFFFH

BCD計數:0000~9999計數初值為0000時,對應最大計數值計數值寄存器

減1計數器

計數鎖存器7.2可編程定時器8253

三、8253的控制字CPU發鎖存命令×減149二進制計數:0000H~FFFFH

BCD計數:0000~9圖7.228253的控制字格式50圖7.228253的控制字格式50寫計數值:根據控制字中RL1和RL0的編碼。讀計數值:在計數器停止計數(可利用GATE信號控制)時讀計數值。在計數過程中讀計數值:寫入控制字(鎖存命令):SC1SC0

00xxxx讀計數器:兩條輸入指令。7.2可編程定時器8253

四、8253的尋址及連接1.

尋址51寫計數值:根據控制字中RL1和RL0的編碼。7.2可編程2.連接7.2可編程定時器8253

四、8253的尋址及連接522.連接7.2可編程定時器8253

四、8253的圖7.238253與8088系統總線的連接01000011……FF04H~FF07H53圖7.238253與8088系統總線的連接0100圖7.24PC機中8253的連接簡圖A9A8A7A6A5A4A3A2A1A000010XXX040H~043H54圖7.24PC機中8253的連接簡圖A9A圖7.24PC機中8253的連接簡圖A9A8A7A6A5A4A3A2A1A000010XXX040H~043H55圖7.24PC機中8253的連接簡圖A9A初始化順序:【方法1】

逐個對計數器進行初始化。【方法2】

先寫所有計數器的方式字,再裝入各計數器的計數值。7.2可編程定時器8253

五、8253的初始化及應用56初始化順序:7.2可編程定時器8253

五、8253的圖7.26另一種初始化編程順序圖7.25一個計數器的初始化順序57圖7.26另一種初始化編程順序圖7.25一個計數器在IBM公布的軟件BIOS中,對8253初始化的程序:MOV AL,36H ;計數器0,雙字節,方式3,二進制計數OUT 43H,AL ;寫入控制寄存器,00

11

011

0MOV AL,0OUT 40H,AL ;寫低字節OUT 40H,AL ;寫高字節 ;計數值:65536 ;輸出對稱方波7.2可編程定時器8253

五、8253的初始化及應用電路圖ver1控制寄存器電路圖ver258在IBM公布的軟件BIOS中,對8253初始化的程序:7.2在IBM公布的軟件BIOS中,對8253初始化的程序:MOV AL,54H ;計數器1,只寫低字節,

;方式2,二進制計數OUT 43H,AL ;寫入控制寄存器,01

01

010

0MOV AL,18OUT 41H,AL ;寫低字節 ;計數值:18

;頻率發生器PCLK經二分頻后,頻率為1.19318MHz,則負脈沖間隔時間:18×(1/1.19318)μs=15μs →DRAM刷新7.2可編程定時器8253

五、8253的初始化及應用電路圖ver1控制寄存器電路圖ver259在IBM公布的軟件BIOS中,對8253初始化的程序:7.2在IBM公布的軟件BIOS中,對8253初始化的程序:MOV AL,0B6H ;計數器2,寫雙字節,方式3,二進制計數OUT 43H,AL ;寫入控制寄存器,10

11

011

0MOV AX,533HOUT 42H,AL ;寫低字節MOV AL,AHOUT 42H,AL ;寫高字節 ;計數值:533H

;方波發生器 ;OUT2經驅動和濾波,接揚聲器7.2可編程定時器8253

五、8253的初始化及應用電路圖ver1控制寄存器電路圖ver260在IBM公布的軟件BIOS中,對8253初始化的程序:7.2MOV DX,0FF07HMOV AL,36H ;控制字00110110OUT DX,AL ;Timer0,雙字節,方式3,二進制計數MOV AL,71H ;控制字01110001OUT DX,AL ;Timer1,雙字節,方式0,BCD計數MOV AL,0B5H ;控制字10110101OUT DX,AL ;Timer2,雙字節,方式2,BCD計數MOV DX,0FF04HMOV AL,0A8HOUT DX,ALMOV AL,61HOUT DX,AL ;Timer0,61A8HMOV DX,0FF05HMOV AL,00HOUT DX,ALMOV AL,02HOUT DX,AL ;Timer1,0200HMOV DX,0FF06HMOV AX,0050HOUT DX,ALMOV AL,AHOUT DX,AL ;Timer2,0050HSET8253:圖7.26控制寄存器61MOV DX,0FF07HSET8253:圖7.26控制寄【例】電源掉電檢測。我們目前使用的220V電源為50Hz交流電(國外通常使用110V、60Hz交流電),它通常作為微機系統的系統電源。當系統電源因各種原因出現故障時,為了保護系統的工作狀態,需要在備用電源的支持下對重要信息進行保護等處理,以便系統恢復正常供電后能夠繼續原來的工作,這就需要進行電源掉電檢測。7.2可編程定時器8253

五、8253的初始化及應用62【例】電源掉電檢測。7.2可編程定時器8253

五、8【例】電源掉電檢測。利用8253實現電源掉電檢測的設計思想:利用電源信號經檢波、整流生成8253的GATE,這樣GATE信號每20ms/16.67ms(對應50Hz/60Hz)產生一次脈沖。使計數值N取得足夠大,在方式1下,使得計數器在20ms(16.67ms)內始終不能減到0,這樣,不斷出現的GATE脈沖上升沿就會使8253計數器不斷被重啟計數,使OUT輸出一直維持為0,從而不能對8086CPU產生NMI。當電源出現故障時,GATE信號不再產生,計數器最終會計數到0,從而使OUT輸出為1,產生對8086CPU的掉電中斷NMI。7.2可編程定時器8253

五、8253的初始化及應用63【例】電源掉電檢測。7.2可編程定時器8253

五、8【例】電源掉電檢測7.2可編程定時器8253

五、8253的初始化及應用電源掉電檢測電路

64【例】電源掉電檢測7.2可編程定時器8253

五、82【例】電源掉電檢測若CLK為2.4576MHz,GATE在20ms內產生一個觸發信號,即GATE信號周期為49152個時鐘周期(0.02s×2457600Hz),則應取計數值N>49152(C000H)。8253初始化程序:(設8253的I/O地址為200H~207H中的偶地址)7.2可編程定時器8253

五、8253的初始化及應用65【例】電源掉電檢測7.2可編程定時器8253

五、82【例】電源掉電檢測8253初始化程序:(設8253的I/O地址為200H~207H中的偶地址)7.2可編程定時器8253

五、8253的初始化及應用MOVDX,0206HMOVAL,00110010B;選計數器0,16位計數長度,

;方式1,二進制計數OUTDX,ALMOVDX,0200HMOVAL,02H;取計數值N=C002HOUTDX,ALMOVAL,C0HOUTDX,AL66【例】電源掉電檢測7.2可編程定時器8253

五、82計數器2初始化為頻率發生器,其輸出作為計數器1的時鐘輸入構建32位計數器:67計數器2初始化為頻率發生器,其輸出作為計數器1的時鐘輸入構建微機原理及接口技術第7章常用接口器件典型接口芯片7.18255:可編程并行接口7.28253:可編程定時器7.38250/16550:可編程串行通信接口68微機原理及接口技術典型接口芯片7.18255:可編程并行串行通信的特點:使用的傳輸線數少傳送距離遠傳送速率低串行通信的方式:同步通信異步通信7.3可編程串行通信接口8250/16550

一、異步串行通信及數據格式69串行通信的特點:7.3可編程串行通信接口8250/1651)同步通信:在約定波特率下,發送端和接收端頻率保持一致(同步)。7.3可編程串行通信接口8250/16550

一、異步串行通信及數據格式通常一次通信傳送幾十到幾百個字節。發送器、接收器復雜,成本高。701)同步通信:7.3可編程串行通信接口8250/1655常見的幾種同步通信格式(a)單同步格式;(b)雙同步格式;(c)SDLC格式;(d)外同步格式;(e)HDLC格式71常見的幾種同步通信格式712)異步通信:在約定波特率下,發送端和接收端不需要嚴格的同步。→兩邊的頻率差別在1/10以內7.3可編程串行通信接口8250/16550

一、異步串行通信及數據格式每傳送一個字符,要增加約20%的附加信息位→降低了傳送速率可靠,易實現。圖7.28異步串行通信數據格式722)異步通信:7.3可編程串行通信接口8250/165516550是8250的改進型,與8250的結構基本相同。16550內部具有的接收和發送FIFO:16450:1字節FIFO,與8250結構相同,僅傳輸速率更高16550:16字節FIFO16650:32字節FIFO16750:64字節FIFO16950:128字節FIFO速度8250:最大9600b/s16550:最大1.5Mb/s7.3可編程串行通信接口8250/16550

二、串行通信接口8250/1655016550與8250之比較:功能描述7316550是8250的改進型,與8250的結構基本相同。7.7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550(一)引線及功能825016550747.3可編程串行通信接口8250/16550

二、串行fsig_in×16串行in(RxD)串行out(TxD)鎖存fsig_out×16外部時鐘輸入或

外接晶體振蕩器IOWIOR中斷產生條件:1.8250/16550中斷允許2.接收錯誤或接收數據寄存器滿或發送數據寄存器空或

MODEM狀態或DB驅動器方向控制通用輸出

端口,

由用戶

編程指定復位數據載波檢測振鈴指示請求發送清除發送DTE就緒DCE就緒片選輸出RXRDYTXRDY(16550)(16550)RDRDWRWRXINXOUTFIFO錯75fsig_in×16串行in(RxD)串行out(TxD發送數據接收數據7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (二)工作過程76發送數據7.3可編程串行通信接口8250/16550

可編程串行通信接口8250的內部結構框圖發送數據77可編程串行通信接口8250的內部結構框圖發送數據77可編程串行通信接口8250的內部結構框圖接收數據78可編程串行通信接口8250的內部結構框圖接收數據787.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器線路控制寄存器:LineControlRegister,LCR波特率產生器:BaudRateGenerator,BRG線路狀態寄存器:LineStatusRegister,LSRFIFO控制寄存器:FIFOControlRegister,FCR中斷控制(允許)寄存器:InterruptControlRegister/InterruptEnableRegister,ICR/IER中斷標識(狀態)寄存器:InterruptIdentificationRegister/InterruptStatusRegister,IIR/ISR調制解調器控制寄存器:ModemControlRegister,MCR調制解調器狀態寄存器:ModemStatusRegister,MSR發送保持寄存器:TransmitHoldingregister,THR接收緩沖寄存器:ReceiveBufferRegister,RBR高速暫存寄存器:ScratchPadRegister,SPR797.3可編程串行通信接口8250/16550

二、串行高速暫存寄存器又稱便箋式寄存器,用作一個便箋本,即一個臨時存儲寄存器,可以讓主機存儲一個8位數據字節。7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器80高速暫存寄存器又稱便箋式寄存器,用作一個便箋本,即一個臨時存FIFO控制寄存器

81FIFO控制寄存器811.

線路控制寄存器LineControlRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器P327,圖7.30821.線路控制寄存器LineControlReg2.

線路狀態寄存器

LineStatusRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器P329,圖7.318250/16550發線路狀態錯中斷ERFIFO無錯FIFO有錯ERFIFO錯(16550專用)832.線路狀態寄存器

LineStatusReg3.

發送數據寄存器TransmitterHoldingRegister4.

接收數據寄存器ReceiverBufferRegister5.

除數鎖存器(16位)DivisorLatchRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器外部時鐘頻率8250要求的波特率寫入順序:在通信控制字中將D7置1;先寫低8位,后寫高8位。輸入時鐘頻率1.8432MHz,要使用1200波特率傳送數據,則除數=1843200÷(1200×16)=96

=60H,因此DLL =01100000DLM =00000000(波特率產生器)843.發送數據寄存器TransmitterHold6.

中斷控制寄存器InterruptEnableRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器圖7.33中斷控制寄存器856.中斷控制寄存器InterruptEnable7.

中斷標識寄存器InterruptIdentificationRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器圖7.34中斷標識寄存器825016550867.中斷標識寄存器InterruptIdentif7.

中斷標識寄存器InterruptIdentificationRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器8250877.中斷標識寄存器InterruptIdentif7.

中斷標識寄存器InterruptIdentificationRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器16550887.中斷標識寄存器InterruptIdentif8.

MODEM控制寄存器MODEMControlRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器圖7.35MODEM控制寄存器SOUT SINRTS CTSDTR DSROUT1 DCDOUT2 RI898.MODEM控制寄存器MODEMContro9.

MODEM狀態寄存器MODEMStatusRegister7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (三)內部寄存器圖7.36MODEM狀態字變化變化變化909.MODEM狀態寄存器MODEMStatus7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (四)尋址及連接0123456017通信控制字D7,除數鎖存位917.3可編程串行通信接口8250/16550

二、串行圖7.37

5250與8088系統的連接3F8F~(DCD)92圖7.37

5250與8088系統的連接3F8~(DCD)9圖7.37

16550與8088系統的連接3F8F~93圖7.37

16550與8088系統的連接3F8~937.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550 (四)尋址及連接0123456017通信控制字D7,除數鎖存位3F83F83F93FA3FB3FC3FD3FE3F83F93FF3FA947.3可編程串行通信接口8250/16550

二、串行7.3可編程串行通信接口8250/16550

二、串行通信接口8250/16550

(五)初始化及應用圖7.38初始化順序825016550957.3可編程串行通信接口8250/16550

二、串行INT50: MOV DX,3FBH MOV AL,80H OUT DX,AL ;將線路控制寄存器 ;D7=1即DLAB=1 MOV DX,3F8H MOV AL,60H OUT DX,AL ;鎖存除數低8位 INC DX MOV AL,0 OUT DX,AL ;鎖存除數高8位,除數:0060H,即96 MOV DX,3FBH MOV AL,0AH ;00001

0

10 OUT DX,AL ;初始化線路控制寄存器 MOV DX,3FCH MOV AL,03H ;00000011 OUT DX,AL ;初始化MODEM控制寄存器 MOV DX,3F9H MOV AL,0 ;不允許中斷 OUT DX,AL ;寫中斷允許寄存器

寄存器尋址奇校驗1位停止位7位數據線路控制寄存器RTS低電平DTR低電平Modem

控制

寄存器引腳中斷允許寄存器1843200/(16×96)=1200OUT2高電平,禁止中斷圖7.37初始化FIFO96INT50: MOV DX,3FBH寄存器尋址奇校驗1位初始化程序:MOV DX,3FAHMOV AL,07HOUT DX,AL;初始化FIFO控制寄存器16550在初始化時,與8250比較,需增加初始化FIFO控制器部分:…………寄存器尋址FIFO控制寄存器圖7.3797初始化程序:16550在初始化時,與8250比較,需增加初始采用查詢方式發送數據,且要發送數據的字節數放在BX中,要發送的數據順序存放在以SEDATA為首地址的內存區中。 MOV DX,3FDH ;通信狀態寄存器 LEA SI,SEDATA IN AL,DX TEST AL,20H ;發送數據寄存器空? JZ WAITSE PUSH DX MOV DX,3F8H ;發送數據寄存器(寫) MOV AL,[SI] OUT DX,AL POP DX ;通信狀態寄存器地址 INC SI DEC BX JNZ WAITSESEDPG:WAITSE:線路狀態寄存器寄存器尋址98采用查詢方式發送數據,且要發送數據的字節數放在BX中,要發送采用查詢方式接收數據:REVPG: MOV DX,3FDH ;線路狀態寄存器WAITRE: IN AL,DX TEST AL,1EH ;00011110 JNZ ERROR ;有錯?→ERROR TEST AL,01H ;接收數據寄存器滿? JZ WAITRE MOV

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論