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

正文內容

微機接口第九章8255a-wenkub.com

2025-01-03 03:54 本頁面
   

【正文】 是這一行的鍵按下,轉出判斷列 ADD BL, 04H 。 PC0~PC3為輸出, PC4~PC7為輸入 OUT DX, AL 。 四、 8255A與鍵盤 /LED接口 8255A與鍵盤和 LED連接電路 8255A PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 LED3 LED2 LED1 LED0 +5V D0~ D7 D0~ D7 RD WR A0 A1 RST CS IOR IOW A0 A1 Reset Y1 程序流程如下: 開始 在 CRT上顯示提示信息 寫 8255A控制字 80H 字型碼送 B口 延時且關指示燈 寫 8255A控制字 88H 有鍵按下 行掃描鍵盤 列掃描鍵盤 延時消抖等待釋放 S1~S4按下否 退 出 Y N N Y 流程圖 相應程序如下: DATA SEGMENT disc DB 0BBH, 0A0H, 097H, 0B5H, 0ACH, 3DH DB 3FH, 0A1H, 0BFH, 0BDH, 0AFH, 3EH, 0B6H DB 1FH, 0FH 。顯示代碼表 DB 99H , 92H , 82H , 0F8H DB 80H , 98H , 88H , 83H DB 0C6H , 0A1H , 86H , 8EH BUFDATA DB 8 DUP ( 0 ) 。 指向下一個數碼管 CMP CL , 0FEH 。 BITPORT為位控制端口 OUT DX , AL 。得到顯示代碼 MOV DX , SEGPORT 。指向數字緩沖區(qū) MOV CL , 0FEH 。 還需要建立一個顯示代碼表 TABLE, 依次存放 0~ F對應的七段顯示代碼 。 但是 , 只有位控制碼中為低的位所對應的數碼管才顯示數字 , 其它管子并不發(fā)光 。對于圖 , 當位控制端口的控制碼某位為低電平時 , 經反相驅動 , 便在相應的數碼管的陽極加上了高電平 , 這個數碼管就可以顯示數據 。 圖 , 這是一種常用的方案 。相接的端口地址 OUT DX , AL 。 取出要顯示的數字 MOV BX , OFFSET TABLE 。 軟件譯碼: 在程序設計時 , 將 0~ F這 16個數字 ( 也可為 0~ 9) 對應的顯示代碼 組成一個表 。 編碼的低位為 a, 高位為 g。 LED數碼管的主要部分是七段發(fā)光二極管, 如圖 ( a) 所示 。 對重鍵問題的處理 , 簡單的情況下 ,可以不予識別 , 即認為重鍵是一個錯誤的按鍵 。 利用硬件很容易消除抖動,如圖 消抖電路所示。鍵 1的代碼 … 。鍵 1的行列值 DW 0FBFEH 。 判斷按鍵是否釋放 , 沒有則等待 CALL DELAY 。 相同 , 說明查到 INC SI 。 TABLE為鍵值表 MOV DI , OFFSET CHAR 。 讀取行值 POP BX 。 有閉合鍵 , 保存列值 PUSH AX … 。判斷是否有鍵按下 KEY2: MOV AL , 00H MOV DX , ROWPORT OUT DX , AL 。用這種方法可以方便地解決重鍵問題。 (2) 行反轉法 這樣,當一個鍵被按下時,必定可以讀得一對唯一的行值和列值。 將行線接一個數據端口,先讓它工作在輸出方式;將列線也接到一個數據端口,先讓它工作在輸入方式。準備下一行掃描 LOOP KEY2 。若無,則將掃描初值循環(huán)左移一位,變?yōu)?1111101,同時,計數值減 1,如此下去,直到計數值為 0,或找到按鍵所在行時止,程序段如下: MOV AH , 0FEH ;掃描初值送 AH MOV CX , 8 ;行數送 CX KEY2: MOV AL , AH MOV DX , ROWPORT OUT DX , AL ;輸出行值(掃描值) MOV DX , COLPORT IN AL , DX ;讀進列值 CMP AL , 0FFH 。有 , 則延遲 20ms清除抖動 鍵盤掃描程序的第二步 是逐行掃描以判斷哪一個鍵被按下了。端口地址 IN AL , DX 。ROWPORT為行線 。然后,從輸入端口讀取數據,如果讀得的數據不是 FFH,則說明必有列線處于低電平,從而可斷定必有鍵被按下。將列線與端口 A相連,端口 A設置為輸入。為此,先使所有行線為低,然后檢查列線。此后,再將第 1行接低電平,檢測是否有變?yōu)榈碗娖降牧芯€。 鍵的識別 (1)行掃描法 圖 8行 8列組成的鍵盤。所以,這種簡單結構只用在只有幾個鍵的小鍵盤中。 最簡單的鍵盤如圖 (a)所示,其中每個鍵對應 I/O端口的一位。準備取下一個數據輸出 POP DX 。檢測 OBFA( PC7) 。 取緩沖區(qū)首址 送 BX PRINT1: MOV AL , [ BX ] 。 PRINT PROC PUSH AX ;保護寄存器 PUSH BX PUSH CX PUSH DX MOV DX , 0FFFEH 。 打印機接口的時序與 8255A的選通輸出方式的時序類似,但略有差別,用單穩(wěn)電路 74LS123即可滿足雙方的時序要求,見圖 。 在 AH中 PUSH DX PM: MOV DX , 0FFFCH IN AL, DX ;查詢 PC2 AND AL, 04H ; BUSY=0? JNZ PM 。 輸出工作方式字 MOV AL , 0FH 。 。 主機根據信號 BUSY或信號 ACK決定是否輸出下一個數據 。 目前打印機一般采用并行接口Centronics標準 , 其主要信號與傳送時序如圖 。 ③ 利用輸出指令 , 將工作方式 控制字送 至控制命令寄存器中 。 8255A中端口 A工作在方式 2時 ,允許端口 B工作于方式 0或方式 1, 完成輸入 /輸出功能 。 IBFA: 輸入緩沖器滿信號 , 向外設輸出 ,高電平有效 。 圖 端口 A方式 2控制字 圖 端口 A工作在方式 2的端口狀態(tài) OBFA: 輸出緩沖器滿信號 , 向外設輸出 ,低電平有效 。 INTR:中斷請求信號。 向外設 輸出 , 低電平有效 。 INTE:中斷允許信號 , 它是通過端口 PC4(端口 A)或 PC2(端口 B)的位來編程的內部位 。 圖 1輸入控制字格式 ( a)端口 A方式 1輸入 ( b)端口 B方式 1輸入 圖 1輸入端口狀態(tài) IBF:輸入緩沖器滿信號 , 向外設輸 出 , 高電平有效 。 方式 0中,端口 C被分成兩個 4位 端口,它們可被
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1