單片機I/O (輸入/輸出)接口是其與外設(shè)交換數(shù)字信息的橋梁。事實上,真正用作I/O口線的只有P1口的8位I/O線和P3口的某些位線。在多數(shù)應(yīng)用系統(tǒng)中,MCS-51單片機都需要外擴I/O接口電路。
一、首先清楚I/O接口(Interface)和I/O端口(Port)的概念。
I/O端口:簡稱I/O口,指具有端口地址的寄存器或
緩沖器。
I/O接口:是指單片機與外設(shè)間的I/O接口芯片。
一個I/O接口芯片可以有多個I/O端口,(1)數(shù)據(jù)口(2)命令口(3)狀態(tài)口
二、I/O端口編址是給所有I/O接口中的寄存器編址。
I/O端口編址兩種方式:獨立編址與統(tǒng)一編址。
1.獨立編址方式
I/O寄存器地址空間和存儲器地址空間分開編址,但
需專門讀寫I/O的指令和控制信號。
2.統(tǒng)一編址方式
I/O寄存器與數(shù)據(jù)存儲器單元同等對待,統(tǒng)一編址。
不需要專門的I/O指令,直接使用訪問數(shù)據(jù)存儲器的指
令進行I/O操作,簡單、方便且功能強。
三、I/O口的擴展主要有以下幾種方法:
1.簡單的I/O口擴展
2.通過可編程通用I/O擴展芯片進行擴展
3.通過串行口擴展
四、簡單I/O擴展
簡單I/O口的擴展是通過系統(tǒng)外總線進行的。簡單的I/O口擴展芯片可選用帶輸出鎖存端的三態(tài)門電路,如74LS373、74LS377、74LS273、74LS245及8282等。
下圖為由74LS373及8282構(gòu)成的8位并行輸入輸出I/O口,其中74LS373用作輸出口,8282用作輸入口,口地址為:BFFFH(輸出口)7FFFH(輸入口)。
I/O擴展
數(shù)據(jù)的輸入與輸出通過下述指令進行:
輸出數(shù)據(jù): MOV DPTR,#0BFFFH ;指向輸出口
MOVX @DPTR,A ;輸出數(shù)據(jù)
輸入數(shù)據(jù): MOV DPTR,#7FFFH ;指向輸入口
MOVX A,@DPTR ;輸入數(shù)據(jù)
-
單片機
+關(guān)注
關(guān)注
6022文章
44375瀏覽量
628236 -
編址技術(shù)
+關(guān)注
關(guān)注
0文章
2瀏覽量
5637 -
IOT
+關(guān)注
關(guān)注
186文章
4095瀏覽量
195072
發(fā)布評論請先 登錄
相關(guān)推薦
評論