999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

雙機通訊設計

2015-02-04 22:38:51李槐生
科技與創新 2015年1期
關鍵詞:信號

李槐生

摘??要:用匯編語言編寫了一個雙機通訊程序,即用中斷的方式實現從發送方鍵盤上輸入一個字符,接收方收到該字符后,將其顯示在微機屏幕上的過程。

關鍵詞:雙機通訊程序;雙機串行通訊;8250芯片;Modem

中圖分類號:TP273+.5????????????文獻標識碼:A???????????????DOI:10.15913/j.cnki.kjycx.2015.01.013

1??雙機通訊

雙機串行通訊如圖1所示。

圖1??雙機串行通訊

雙機通信時,通常采用串行方式。串行通訊是指只需要1條數據線就可以傳送數據,且數據各數位按照規定順序傳送的通訊方式。從圖1中看以看出,用串行通信線將2臺計算機連接起來,再調用BIOS中斷指令,可利用中斷方式實現串行通信。在串行方式中,通信接口每次由CPU中獲得8位數據,并串行通過1條線路,每次發送1位數據。

2??8250芯片和接口電纜

2.1??可編程串行通訊接口8250

8250芯片是各種微機系統和計算機網絡中被使用最多的一種異步通信接口芯片,是異步通信卡的核心部件。該芯片主要包括總線緩沖器、芯片內部選擇控制邏輯、接收控制電路、發送控制電路、傳輸速度控制電路、調制解調控制電路和中斷控制電路。該芯片具有以下6種性能:①僅適用于異步串行通信方式,可選擇每字符的數據位數為5~8位;②內裝可編程波特率發生器,允許數據傳輸的波特率為50~9?600?bps,且具有獨立的接收器時鐘信號輸入;③接收和發送均具有雙重緩沖;④具有優先權中斷管理系統,可對發送、接收、錯誤和通信線路狀態進行中斷檢測;⑤可提供通信線路和Modem的全部運行狀態;⑥能檢測假起始位,產生和檢測終止符,且具有自診斷測試功能。

2.2??8250引腳

2.2.1??數據總線D0~D7

CPU與8250之間的信息通過數據總線D0~D7交換。

2.2.2??地址和地址控制線

地址線A0~A2尋址8250內部寄存器。3個片選線為CS0、CS1和CS2都有效時,才可選中8250芯片。地址選通信號ADS(非)低電平有效時,鎖存上述地址線和片選線的輸入狀態,并保證讀寫期間的地址穩定。另外,當3個片選線都有效,且片選輸出引腳CSOUT輸出高電平時,證明8250已被選中。具體如圖2所示。

2.2.3??讀寫控制線

8250讀寫控制信號有2對,每對信號的作用完全相同,只有有效點不同。當8250被選中時,當數據輸入選通信號DISTR和DISTR(非)中只有一個信號有效時,CPU從被選擇的內部寄存器中讀出數據;當數據輸出選通信號DOSTR和DOSTR(非)中只有一個信號有效時,CPU會將數據寫入8250被選擇的內部寄存器。另外,CPU從8250讀取數據時,8250輸出驅動器禁止信號DDIS為低電平,議禁止外部收發器對系統總線的驅動,且DDIS為高電平信號。

圖2??8250引腳圖

其中,輸入信號的引腳如下:①CS0、CS1、CS2為片選信號。當這3個片選信號同時有效時,芯片被選中,經地址選通信號ADS鎖存后,8250才可以與CPU通信。②ADS為地址選通。當該信號有效時,鎖存片選信號(CS0、CS1、CS2)和寄存器選擇信號(A0、A1、A2)。只有當寄存器選擇信號在讀操作或寫操作期間不穩定時,才需要有效的?ADS輸入;不需要此信號時,需要將其接入低電平。③DISTR、DISTR為數據輸入選通。當該芯片被選中,且DISTR為高電平或DISTR為低電平時,允許CPU從8250中某一被選中的寄存器讀取狀態信息或數據。④DOSTR、DOSTR為數據輸出選通。當該芯片被選中,且DOSTR為高電平或DOSTR為低電平時,允許CPU從8250中某一被選中的寄存器寫入數據或控制字符。⑤A0、A1、A2為寄存器選擇。這3個信號用于在讀操作或寫操作期間,選擇8250中的一個讀寄存器或寫寄存器。⑥MR為主復位。當MR為高電平時,除接收數據寄存器、發送保持寄存器和數鎖存寄存器外,其余寄存器和控制邏輯均被復位,SOUT、INTRPT、OUT1、OUT2、RTS和DTR輸出信號也會受到影響,MR一般接入系統的復位信號線。⑦RCLK為接收時鐘。接16倍接收波特率的時鐘信號。⑧SIN為串行輸入。由外設或數據設備發送的串行數據接收端。

輸出信號引腳如下:①DTR為數據終端是否準備好。當DTR為低時,則通知Modem8250可開始通信。將Modem控制寄存器的第0位(DTR)設置成1,DTR引腳就會變為低電平。②RTS為請求發送。當RTS為低時,則通知Modem8250可發送數據。將Modem控制寄存器的第1位(RTS)設置成1,RTS引腳就會變為低電平。③CSOUT為片選輸出。當該信號為高電平時,表示8250已被CS0、CS1和CS2信號選中。只有該信號為高電平時,才能開始傳送數據。④BAUDOUT為波特率輸出。該信號是8250發送器所使用的傳輸速率16倍頻的時鐘信號。如果將該信號與RCLK相連,則此信號也可作為8250接收器的時鐘信號。⑤INTRPT為當下列任意一種中斷類型出現有效狀態,并通過中斷允許存器允許中斷時,此信號為高電平。中斷類型包括接收器錯誤標志、接收數據就緒、發送保持寄存器空和Modem改變狀態。⑥SOUT為串行輸出。它是串行數據的輸出端。

2.2.4??復位線MR

該引腳接至系統的復位信號Reset.當其有效時,8250復位,控制部分寄存器和輸出信號的狀態如圖3所示。

圖3??8250的復位狀態

2.2.5??中斷請求線INTRPT

8250內部有4種類型的中斷源,當任意一個未被屏蔽的中斷源有請求時,INTRPT輸出高電平會向CPU

請求中斷。適當的中斷服務或復位MR有效都可使INTRPT變為低電平。

2.2.6??時鐘信號

外部晶體振蕩器電路產生的時鐘信號送至時鐘輸入引腳XTAL1,并作為8250的基準工作時鐘。

2.2.7??串行數據輸入線SIN

由串行數據輸入線SIN接收設備送來的串行數據。

2.2.8??串行數據輸出線SOUT

8250由串行數據輸出線SOUT發送串行數據給通信設備。

2.2.9??調制解調器控制線

調制解調器控制線包括數據終端DTR(非)、數據設備DSR(非)、發送請求RTS(非)、允許請求CTS(非)、接收線路檢測RSLD(非)和振鈴指示RI(非),均為低電平時有效。

2.2.10??輸出線

OUT1(非)和OUT2(非)是2個一般用途的輸出信號,調制解調器控制寄存器中的D2和D3可使其輸出低電平的有效信號,并能使其復位恢復為高電平。

2.3??RS-232-C串行接口標準

RS-232-C接口既可用于同步通信,又可用于異步通信,它是一種在數據終端設備DTE與數據通信設備DCE之間的聯接標準。在短距離通信時,可直接通過RS-232-C接口在計算機與計算機之間實現相連,具體如圖4所示.

圖4??通過RS-232-C接口連接計算機

3??編程思路

第一步,設傳輸波特率——寫入除數寄存器。應確定傳輸速率、接收時鐘和發送時鐘,由此計算出分頻系數,并將其寫入除數寄存器。下面是第一個通信接口COM1工作在1?200波特率的設置程序段:

MOV????????AL,80H

MOV????????DX,3FBH

OUT?????????DX,AL?????????;寫入通信線路控制寄存器,使DLAB=1

MOV????????AL,60H?????????;分頻系數:1.834?2?MHz/(1?200×16)=96=60H

MOV????????DX,3F8H

OUT?????????DX,AL?????????;寫入寄存器低8位

MOV????????AL,0

INC?????????DX

OUT????????DX,AL??????????;寫入寄存器高8位

第二步,設置字符格式——寫入線路寄存器。根據起止式協議,假使我們用7個數據位、2個停止位,采用奇校驗的方式,則程序段如下:

MOV????????AL,00001110?B

MOV????????DX,3FBH

OUT?????????DX,AL??????;寫入通信線路控制寄存器

這段程序同時使DLAB=0,以方便下述初始化過程。

第三步,設置中斷工作方式的程序段。調制解調器控制寄存器的最低位兩位通常為1,即使系統中沒有使用調制解調器,也可建立數據終端準備好DTR(非)和請求發送RTS(非)的有效信號。設置中斷工作方式的程序段為:

MOV????????AL,0BH?????????????;控制OUT2為低,允許INTRPT產生請求

MOV????????DX,3FCH

OUT?????????DX,AL

第四步,設置中斷允許或屏蔽位——寫入中斷允許寄存器。其程序段為:

MOV???????AL,0??????????;禁止所有中斷

MOV???????DX,3F9H

OUT????????DX,AL????????;寫入中斷允許寄存器(應保證此時DLAB=0)

第五步,讀取通信線路的狀態,判斷是否可通信。

第六步,送出或讀入一個字符。

第七步,重復第二步和第三部,直至通信結束。

當允許中斷時,CPU送出(或讀入)一個字符。在8250收到一個字符或將一個字符送出后,會通過IRQ4(或IRQ3)向CPU申請中斷,識別8250的中斷類型,并作出相應的處理(送出或讀入一個字符等)。

4??程序設計

具體的程序設計如下:

DATA?SEGMENT

SHOWMESS?DB?100?DUP(?)

DATA?ENDS

CODE?SEGMENT

ASSUME?CS:CODE,DS:DATA

START:MOV?AX,DATA

MOV?DS,AX??????????;數據段基值裝入(通過AX)

LEA?DX,SHOWMESS????????;字符串有效地址裝入DX寄存器

MOV?AH,09H

INT?21H????????????;?DOS顯示字符串功能調用

MOV?DX,1

MOV?AL,8EH

INT?14H??????????????;初始化串口COM2

FORE:MOV?AH,03H

MOV?DX,1

INT?14H???????????????;讀串口2狀態字

TEST?AH,01H?????????;數據準備好?

JNZ?RECE?????????????;準備好轉接收程序

TEST?AH,20H?????????;發送移位寄存器空

JZ?FORE???????????????;不空轉FORE,繼續檢測

MOV?AH,1

INT?16H????;否則利用BIOS鍵盤中斷調用,輸入字符

JZ?FORE???????????????;沒有按鍵,繼續

MOV?AH,0

INT?16H???????????????;?BIOS鍵盤輸入

CMP?AL,1BH

JZ?QUIT???????????????;是否是ESC鍵,是否退出

MOV?AH,1

MOV?DX,1

INT?14H???????????????;是否則發送字符

CMP?AL,0DH

JNZ?RECE

MOV?AH,02H

MOV?DL,0AH

INT?21H?????????;如果發送的為回車符,則顯示換行

MOV?DL,0DH

INT?21H

RECE:MOV?AH,3

MOV?DX,1

INT?14H???????????????;讀串口2狀態字

TEST?AH,01H?????????;數據準備好?

JZ?FORE???????????;數據位準備好轉FORE繼續檢測

MOV?AH,01H

MOV?DX,1

INT?14H????????????????;否則讀入字符

MOV?DL,AL

AND?DL,7FH??????????;屏蔽校驗位

MOV?AH,02H

INT?21H????????????????;DOS中斷顯示字符

JMP?FORE??????????????;接受方發送字符

QUIT:MOV?AH,4CH??????????;退出程序,返回DOS

INT?21H

CODE?ENDS??????????????????;代碼段結束

END?START??????????????;程序結束

〔編輯:張思楠〕

Dual-machine?Communication?Design

Li?Huaisheng

Abstract:?Written?in?assembly?language?a?two-machine?communication?program,?which?uses?interrupts?a?way?that?a?character?input?from?the?keyboard?on?the?sender,?the?recipient?received?after?the?character,?which?is?displayed?on?a?computer?screen?process.

Key?words:?two-machine?communication?program;?dual?serial?communication;?8250?chip;?modem

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 99国产在线视频| www.99在线观看| 亚洲啪啪网| 这里只有精品免费视频| 亚洲黄色高清| 亚洲成aⅴ人在线观看| 亚洲欧洲日韩久久狠狠爱| 国产91无码福利在线| 亚洲永久色| 国产午夜福利在线小视频| 国产手机在线观看| 福利在线不卡一区| 色首页AV在线| 沈阳少妇高潮在线| 午夜成人在线视频| 国产精品99一区不卡| 2021国产乱人伦在线播放| 国产精品亚欧美一区二区三区| 97成人在线观看| 亚洲AV无码精品无码久久蜜桃| 亚洲国产高清精品线久久| 精品撒尿视频一区二区三区| 日本高清免费不卡视频| 成人中文字幕在线| 欧美va亚洲va香蕉在线| 黄色在线不卡| 久久精品aⅴ无码中文字幕| 婷婷综合亚洲| 日韩精品中文字幕一区三区| 午夜免费小视频| 亚洲中文无码h在线观看| 999国产精品永久免费视频精品久久 | 欧美一级高清免费a| 漂亮人妻被中出中文字幕久久| 露脸国产精品自产在线播| 日本手机在线视频| 国产a网站| 亚洲天堂777| 久久一色本道亚洲| 欧美精品二区| 免费高清自慰一区二区三区| 欧美午夜视频| 国产日本欧美在线观看| 91欧美在线| www.国产福利| 男人的天堂久久精品激情| 99九九成人免费视频精品| 欧美一区二区人人喊爽| 国产精品久久久久久久久| 免费人欧美成又黄又爽的视频| 欧美特黄一级大黄录像| 亚洲国产欧美国产综合久久 | 亚洲欧洲日韩综合色天使| 国产精品太粉嫩高中在线观看| 最新精品国偷自产在线| 五月婷婷亚洲综合| 欧美亚洲日韩中文| 久久久久青草线综合超碰| 国产视频 第一页| 亚洲永久免费网站| 成人小视频网| 黄片一区二区三区| 亚洲乱伦视频| 99久久这里只精品麻豆| 一级在线毛片| 国产凹凸视频在线观看| 成人一区专区在线观看| 欧美一级专区免费大片| 久久青草热| 国产特级毛片| 国内精品免费| 国产农村妇女精品一二区| 高清乱码精品福利在线视频| а∨天堂一区中文字幕| 亚洲午夜片| 中文字幕天无码久久精品视频免费| 国产a网站| 51国产偷自视频区视频手机观看| 国产一线在线| 日韩在线网址| 国产一区二区三区免费| 国产激情第一页|