嵌入式(二十):並行接口

1、並行接口:
a、標準51接口
b、x86計算機可編程並行接口
c、STC系列並行接口
d、Cygnal C8051系列並行接口
e、三星S3C44B0 GPIO
f、意法半導體STM32F103XXXX系列 GPIO
2、51並行接口:P0、P1、P2、P3;在CPU看來就是有幾個可以訪問的地址
3、atmel 2051並行接口:P1、P3
4、地址與位一般表示:寄存器名+‘.’
a、P0:80H,P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1(81H) P0.0(80H)
b、P1:90H
c、P2:A0H
d、P3:B0H
e、即這幾位可以用位地址、位名稱、或者上述寄存器名+‘.’的三種方法,但只有有位地址的位纔可以進行位訪問。
5、51的P3口的並口複用功能(第二功能):
a、P3.7(/RD)外部數據存儲器讀選通,輸出,低電平有效
b、P3.6(/WR)外部數據存儲器寫選通,輸出,低電平有效
c、P3.5(T1)定時器/計數器1外部計數脈衝輸入
d、P3.4(T0)定時器/計數器0外部計數脈衝輸入
e、P3.3(INT1)外部中斷1請求
f、P3.2(INT0)外部中斷0請求
g、P3.1(TXD)串行輸出口
h、P3.0(RXD)串行輸入口
6、P0口結構(其中一位):
P0口是一個漏極開路的準雙向口、低8位地址/數據總線口。其中有一個多路開關。
當內部信號置0時,多路開關作爲IO口使用,輸入緩衝輸出緩存,輸出爲漏極開路,與nmos的電路接口時必須用電阻上拉纔能有高電平輸出,輸入時爲懸浮狀態,爲一個高阻抗的輸入口;
當內部信號置1時,作爲地址/數據複用總線,爲一個準雙向口,有兩個上拉電阻。
在這裏插入圖片描述
7、P1口結構(其中一位):
P1口只能作爲I/O口使用,因而輸出控制電路結構同可複用的並口不同。就是一個簡單的D觸發器。
在這裏插入圖片描述
8、P2口結構(其中一位):
P2口既可以作爲雙向IO口,也可以用作高8位地址總線
在這裏插入圖片描述
9、P3口結構(其中一位):
P3口具有第二功能,但不能與雙向IO口混用
在這裏插入圖片描述
10、51的四個並行口均可以作爲雙向IO口使用,輸入時可以緩衝,輸出時可以鎖存;都是鎖存器加引腳的典型結構,注意P0和P1-P3的驅動能力不同:
a、P0:訪問片外擴展存儲器時,複用爲低8位地址線和數據線
b、P1:準雙向口結構,需要先向鎖存器寫‘1’,僅雙向IO端口
c、P2:準雙向口結構,需要先向鎖存器寫‘1’,可複用爲高8位地址線
d、P3:準雙向口結構,需要先向鎖存器寫‘1’,具有第二功能
11、P0,P1,P2,P3每個口主要由四部分構成:端口鎖存器、輸入緩衝器、輸出驅動器和引至芯片外的端口引腳。他們都是雙向通道,都可以獨立的作爲輸入或輸出。
12、P0口和P2口內部各有一個2選1的選擇器,受內部控制信號的控制(可以理解爲P0M和P2M兩組寄存器)。四個接口在進行I/O方式時,特性基本相同:
a、作爲輸出時,內部帶有鎖存器,故可以直接與外設相連
b、作爲輸入時,有兩種方式,即讀端口(寄存器)和讀引腳(IO腳):
①、爲“讀-修改-寫”操作。讀端口實際上不從外部選入數據,而只是吧端口鎖存器中的內容讀入到內部總線,經過某種變換後再寫回到端口鎖存器。
②、爲“僅讀”操作。讀引腳纔是真正地把外部的數據讀入到內部總線。
CPU可以發出這兩種控制信號以完成不同的讀操作。
c、在讀引腳是,要先通過指令吧端口鎖存器置爲1,然後再實行讀引腳操作,否則可能讀入出錯。若不先對端口置1,端口鎖存器中原來的狀態可能爲0,加到輸出的信號爲1,就導通,對外呈現低阻抗。這個時候即便使引腳上輸入的是1信號,也會因端口的低阻抗而使信號變低,使得外加的1信號讀入不一定是1。
所以,這四個端口在用於輸入操作時還必須附加一個準備操作,所以被稱爲準雙向口。也是因爲這個原因,爲了避免出錯,在一開始這四個端口的初始值都已經被設置爲了高電平,以免出現對於高電平信號無法準確輸入輸出的情況。故51的IO引腳用作輸入、或第二功能時,必須先置“1”——準雙向口。
13、由於P0口沒有上拉電阻(內置),所以P0在驅動的時候(作爲輸出口)需要加上上拉電阻(電阻接VCC),就是說,P2能出20mA電流,P0就不能。
14、X86並行接口——8255可編程並行接口:
a、計算機系統的基本功能子系統要求
b、集成電路=>多功能化、通用性、系列化
①、82XX PC微機接口系列可編程芯片
②、8237:可編程DMA控制器
③、8250/1:可編程串行接口
④、8253/4:可編程定時/計數器
⑤、8259:可編程中斷控制器
⑥、8255:可編程並行接口
15、8255結構框圖:
在這裏插入圖片描述
A組的A口和C口的功能可以通過A組控制進行改變。
B組的B口和C口的功能可以通過B組控制進行改變。
A組控制可以控制C口的高4位,B組控制可以控制C口的低4位,由此可以實現可編程的IO口。
基地址由CS譯碼電路確定,而偏移地址通過控制字確定,訪問哪個端口
16、82XX的接口方法基本相同
a、基地址:由系統譯碼電路產生CS信號
b、偏移地址:由芯片地址線(A0、A1、…)確定
c、從PC/AT機系統看:功能部件抽象爲若干個可以訪問的IO寄存器
17、82XX各功能不同
a、工作原理視芯片不同而不同,使用時需要具體理解
b、多功能的編程控制方法:通過寄存器控制
18、STC系列並行接口的四種模式,通過PxM1,PxM0設定:
由於增加了三極管(強,極弱,弱),由於可以選擇是否啓用(兩比特)
a、準雙向口(標準51,默認),只用弱的三極管(灌電流大、拉電流小)
b、推輓輸出(推輓),三個三極管都用(強上拉,可達20mA)
c、僅輸入,四個三極管都不用(用於輸出的也不用),僅作爲輸入(高阻)
d、漏極開路輸出(開漏,OD),三個都不用(內部上拉電阻斷開)
19、STC有六個IO並口,每個都一樣,都有四種模式,僅地址不同。每個IO並口寄存器分別與兩個控制寄存器相關,故總共有6x3=18個並口相關寄存器(一組爲P0,P0M0,P0M1)
20、Cygnal C8051F0XX並口接口的特點:
a、可以通過XBR0,XBR1,XBR2中國的一些bit將IO端口分配到一定引腳
b、並口電氣特性可通過(XBR2中的WEAKPUD位和PRTxCF)設定三種模式:
①、弱上拉,標準51準雙向口
②、推輓
③、開漏OD
21、SAMSUNG S3C44B0 GPIO(也就是並口)的特點:
a、port A、B、C、D、E、F、G共71pin,每個可能不止8bit,每個引腳可以很容易的配置成滿足各種需要和要求
b、每一引腳分配了多功能(功能複用)
c、通過寄存器(PCONx,PDATx,PUPx)配置功能和電氣特性
d、每個端口都不一樣
22、意法半導體STM32F10XXX GPIO(即並口)的特點:
a、系列分高、中、低密度,提供不同數量IO pin產品
①、最少26 GPIO pins(36 pins封裝)
②、最多可達112 GPIO pins(144 pins 封裝)
b、每一引腳分配了多功能、每一功能可分配到多個引腳
c、GPIO電氣特性:8種(用2個寄存器,每個引腳用4bit位配置)
①、端口配置高寄存器(GPIOx_CRH) (x=A…E)
②、端口配置低寄存器(GPIOx_CRL)
d、GPIO其它寄存器:
①、端口輸入數據寄存器(GPIOx_IDR)
②、端口輸出數據寄存器(GPIOx_ODR)
③、端口位設置/清除寄存器(GPIOx_BSRR)
④、還有很多。每組GPIO多達14個寄存器(每個最少16位,可能有32位),A、B、C、D、E共70個(5x14)
23、STM32F10XXX GPIO的基本結構:
在這裏插入圖片描述
a、上拉下拉電路
b、推輓開漏電路
c、數據輸出寄存器
d、複用功能輸出
e、數據輸入寄存器
f、複用功能開關
g、模擬輸入開關
24、 STM32F10XXX GPIO的基本特性:
a、GPIO控制特性:每組受控IO有十六個可控制通道,既可以單獨控制,也可以整體控制
b、GPIO驅動特性:所有GPIO的驅動特性均可以配置爲推輓或開漏+上拉或下拉模式
c、GPIO輸入特性:所有GPIO的輸入都可以配置爲浮空、上拉、下拉、模擬。
d、GPIO開關特性:所有GPIO的輸入和輸出的開關特性均可設置爲2MHZ\25MHZ\50MHZ\100MHZ
e、GPIO複用特性:當相應的GPIO可以用做他用時就具有了複用特性,可選擇GPIO或複用外設

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章