freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計算機(jī)硬件及網(wǎng)絡(luò)]第六章串行通信接口-資料下載頁

2025-01-19 10:25本頁面
  

【正文】 制其發(fā)送與接受 。 何時才能發(fā)送 /接收 ? 這就取決于 8251A的狀態(tài)字 。 只有當(dāng) 8251A進(jìn)入發(fā)送 /接收準(zhǔn)備好的狀態(tài) , 才能真正開始數(shù)據(jù)的傳送 。 8251A的初始化流程 ? ① 芯片復(fù)位以后,第一次向奇地址端口寫入的字節(jié)作為方式控制字進(jìn)入方式寄存器。 ? ②如果方式控制字中規(guī)定了 8251A工作在同步模式,那么, CPU接著往奇地址端口寫入的 1個或 2個字節(jié)就是同步字符,同步字符被送往同步字符寄存器。如果是雙同步方式,則會按先后分別寫入第一個同步字符寄存器和第二個同步字符寄存器。 ? ③在這之后,只要不是復(fù)位命令,不管是同步方式還是異步方式,由 CPU向奇地址端口寫入的字節(jié)將作為工作命令字送到控制寄存器,而向偶地址寫入的字節(jié)將作為數(shù)據(jù)送到數(shù)據(jù)輸出緩沖寄存器。 例 6- 1 異步方式下初始化程序 8251A端口地址為 300H~301H, 1)通信字符采用 8位二進(jìn)制數(shù)表示,帶 1個偶校驗(yàn)位,1個停止位。設(shè)波特率因子為 64。 則方式選擇控制字為 01111111B=7FH。 2)允許發(fā)送和接收,使錯誤位全部復(fù)位 工作命令字為 00010101B=15H。 3)查詢 8251狀態(tài)字,當(dāng)接收準(zhǔn)備就緒時,則從 8251輸入數(shù)據(jù),否則等待 MOV DX, 301H ; 8251A控制口 MOV AL, 7FH ;設(shè)置方式控制字:異步方式,波特率因子為 64; 8個數(shù)據(jù)位; OUT DX, AL ;偶校驗(yàn); 1個停止位。 MOV AL, 15H ;設(shè)置工作命令字:使發(fā)送啟動;接收啟動;出錯標(biāo)志復(fù)位; OUT DX, AL WAIT : IN AL, DX 。讀入狀態(tài)字 AND AL, 02H 。接收準(zhǔn)備好? JZ WAIT 。接收未準(zhǔn)備好則等待 MOV DX, 300H IN AL, DX 。接收已準(zhǔn)備好則讀入數(shù)據(jù) 5 8251A應(yīng)用實(shí)例 ? 試用 8251A為 8086CPU與 CRT終端設(shè)計一個串行通信接口。要求 ? 異步傳送方式,數(shù)據(jù)格式為 1位停止位, 8位數(shù)據(jù)位,奇校驗(yàn); ? 波特率因子為 16 ? CPU用查詢方式將顯示緩沖區(qū)(首地址為 2022H)的字符 ” GOOD“送 CRT顯示。 1)硬件連接 2)軟件設(shè)計 DATA SEGMENT ORG 2022H DISBUF DB 47H, 4FH, 44H, 0DH, OAH。 COUNT DB $DISBUF DATA ENDS ……… MAIN MOV DX, 301H MOV AL, 01011110B OUT DX, AL MOV AL, 00110011B OUT DX, AL MOV BX, OFFSET DISBUF MOV CX COUNT WAIT: MOV DX, 301H IN AL, DX TEST AL, 80H JZ WAIT MOV DX, 300H MOV AL, [BX] OUT DX, AL INC BX DEC CX JNZ WAIT HLT 例 【 810】 通過 8251A實(shí)現(xiàn)兩臺微機(jī)相互通信的硬件連接圖如圖 825所示。利用兩片 8251A通過標(biāo)準(zhǔn)串行接口 RS232C實(shí)現(xiàn)兩臺 8086微機(jī)之間的異步串行通信。設(shè)兩臺微機(jī)中 8251A的命令端口地址為均 3F9H,數(shù)據(jù)端口地址均為3F8H。 分析:設(shè)系統(tǒng)采用查詢方式控制串行通信的過程 。 初始化程序由兩部分組成: ① 將一方定義為發(fā)送方 , 發(fā)送方 CPU查詢到TxRDY有效時 , 則 CPU向 8251A并行輸出一個待發(fā)送的字節(jié)數(shù)據(jù); ② 將對方定義為接收方 , 接收方 CPU查詢到RxRDY有效時 , 則從 8251A輸入一個已接收到的字節(jié)數(shù)據(jù) , 直到全部數(shù)據(jù)傳送完畢為止 。 START: MOV DX, 3F9H MOV AL, 7FH ;異步方式 , 8位數(shù)據(jù) , ;一位停止位 , 偶校驗(yàn) OUT DX, AL 波特率因子為 64, 允許 發(fā)送 MOV AL, 11H ;操作命令字 OUT DX, AL MOV DI, 1000H ;設(shè)置地址指針 MOV CX, 40H ;設(shè)置計數(shù)器初值 發(fā)送程序如下: L1: MOV DX, 3F9H IN AL, DX AND AL, 01H ;查詢 TxRDY是否有效 JZ L1 ;無效則等待 MOV DX, 3F8H MOV AL, [DI] ;向 8251A輸出一個字節(jié)數(shù)據(jù) OUT DX, AL INC DI ;修改地址指針 LOOP L1 ;未傳送完 , 則繼續(xù)下一個 HLT BEGIN: MOV DX, 3F9H MOV AL, 7FH ;異步方式 , 8位數(shù)據(jù) , 1位停止位 OUT DX, AL ;偶校驗(yàn) , 波特率因子 64, 允許接收 MOV AL, 14H ;操作命令字 ( 置 ER, RxE 為 1) MOV DX, AL MOV SI, 2022H ;設(shè)置地址指針 MOV CX, 40H ;設(shè)置計數(shù)器初值 L2: MOV DX, 3F9H IN AL, DX ;讀取狀態(tài)字 接收程序如下: TEST AL, 38H ;查詢接收器是否有錯 。 JNZ ERR ;有錯則轉(zhuǎn)錯誤處理 AND AL, 02H ;無誤則查狀態(tài)位 D1( RxRDY) JZ L2 ;接收未準(zhǔn)備好則等待 MOV DX, 3F8H IN AL, DX ;接受準(zhǔn)備好 , 則接收 1個字 ;節(jié)數(shù)據(jù) MOV [ SI] , AL INC SI ;修改接收數(shù)據(jù)區(qū)地址 LOOP L2 JMP L3 ERR: CALL ERROUT( 略 ) L3: MOV AX, 4C00H ;已接收完 , 返回 DOS INT 21H
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1