個(gè)人總結(jié):這八種必須弄懂?。。?!
本文引用地址:http://butianyuan.cn/article/201611/322757.htm
最近在看數(shù)據(jù)手冊(cè)的時(shí)候,發(fā)現(xiàn)在Cortex-M3里,對(duì)于GPIO的配置種類有8種之多:
(1)GPIO_Mode_AIN模擬輸入,應(yīng)用ADC模擬輸入,或者低功耗下省電
(2)GPIO_Mode_IN_FLOATING浮空輸入,可以做KEY識(shí)別,RX
(3)GPIO_Mode_IPD下拉輸入,在沒(méi)有信號(hào)輸入的時(shí)候,下拉電阻能使讀取input值保持為低,類似推挽,主要是為了增強(qiáng)驅(qū)動(dòng)能力
(4)GPIO_Mode_IPU上拉輸入,在沒(méi)有信號(hào)輸入的時(shí)候,上拉電阻能使讀取input值保持為高,類似推挽,主要是為了增強(qiáng)驅(qū)動(dòng)能力,電阻同時(shí)起限流作用!弱強(qiáng)只是上拉電阻的阻值不同,沒(méi)有什么嚴(yán)格區(qū)分。
(5)GPIO_Mode_Out_OD開漏輸出,IO輸出0接GND,IO輸出1,懸空,需要外接上拉電阻,才能實(shí)現(xiàn)輸出高電平。當(dāng)輸出為1時(shí),IO口的狀態(tài)由上拉電阻拉高電平,但由于是開漏輸出模式,這樣IO口也就可以由外部電路改變?yōu)榈碗娖交虿蛔儭?梢宰xIO輸入電平變化,實(shí)現(xiàn)C51的IO雙向功能。適合于做電流型的驅(qū)動(dòng),其吸收電流的能力相對(duì)強(qiáng)(一般20ma以內(nèi)).
(6)GPIO_Mode_Out_PP推挽輸出,IO輸出0-接GND,IO輸出1-接VCC,讀輸入值是未知的
(7)GPIO_Mode_AF_OD復(fù)用開漏輸出片內(nèi)外設(shè)功能(TX1,MOSI,MISO.SCK.SS)
(8)GPIO_Mode_AF_PP復(fù)用推挽輸出片內(nèi)外設(shè)功能(I2C的SCL,SDA)
推挽輸出:可以輸出高,低電平,連接數(shù)字器件;推挽結(jié)構(gòu)一般是指兩個(gè)三極管分別受兩互補(bǔ)信號(hào)的控制,總是在一個(gè)三極管導(dǎo)通的時(shí)候另一個(gè)截止。高低電平由IC的電源低定。
推挽電路是兩個(gè)參數(shù)相同的三極管或MOSFET,以推挽方式存在于電路中,各負(fù)責(zé)正負(fù)半周的波形放大任務(wù),電路工作時(shí),兩只對(duì)稱的功率開關(guān)管每次只有一個(gè)導(dǎo)通,所以導(dǎo)通損耗小、效率高。輸出既可以向負(fù)載灌電流,也可以從負(fù)載抽取電流。推拉式輸出級(jí)既提高電路的負(fù)載能力,又提高開關(guān)速度。
評(píng)論