久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: STM32的8種GPIO輸入輸出模式詳細分析 [打印本頁]

作者: xiongying_2001    時間: 2018-2-28 11:34
標題: STM32的8種GPIO輸入輸出模式詳細分析
STM32的8種GPIO輸入輸出模式詳細分析
詳細介紹了stm32的GPIO的輸入輸出各種參數,具有很高的參考價值

浮空,顧名思義就是浮在空中,上面用繩子一拉就上去了,下面用繩子一拉就沉下去了.     
開漏,就等于輸出口接了個 NPN 三極管,并且只接了 e,b.  c 極  是開路的,你可以接一個電阻到 3.3V,也可以接一個電阻到 5V,這樣,在輸出 1 的時候,就可以是5V 電壓,也可以是 3.3V 電壓了.但是不接電阻上拉的時候,這個輸出高就不能實現了.     
推挽,就是有推有拉,任何時候 IO 口的電平都是確定的,不需要外接上拉或者下拉電阻.   


(1)GPIO_Mode_AIN  模擬輸入   
(2)GPIO_Mode_IN_FLOATING  浮空輸入   
(3)GPIO_Mode_IPD  下拉輸入   
(4)GPIO_Mode_IPU  上拉輸入   
(5)GPIO_Mode_Out_OD  開漏輸出   
(6)GPIO_Mode_Out_PP  推挽輸出   
(7)GPIO_Mode_AF_OD  復用開漏輸出   
(8)GPIO_Mode_AF_PP  復用推挽輸出   

推挽電路是兩個參數相同的三極管或 MOSFET,以推挽方式存在于電路中,各負責正負半周的波形放大任務,電路工作時,兩只對稱的功率開關管每次只有一個導通,所以導通損耗小、效率高。輸出既可以向負載灌電流,也可以從負載抽取電流。推拉式輸出級既提高電路的負載能力,又提高開關速度。   

開漏輸出:輸出端相當于三極管的集電極.  要得到高電平狀態需要上拉電阻才行.  適合于做電流型的驅動,其吸收電流的能力相對強(一般20ma以內).   開漏形式的電路有以下幾個特點:   
1.  利用外部電路的驅動能力,減少 IC內部的驅動。當 IC內部MOSFET導通時,驅動電流是從外部的 VCC 流經 R  pull-up  ,MOSFET 到 GND。IC 內部僅需很下的柵極驅動電流。   
2.  一般來說,開漏是用來連接不同電平的器件,匹配電平用的,因為開漏引腳不連接外部的上拉電阻時,只能輸出低電平,如果需要同時具備輸出高電平的功能,則需要接上拉電阻,很好的一個優點是通過改變上拉電源的電壓,便可以改變傳輸電平。比如加上上拉電阻就可以提供 TTL/CMOS 電平輸出等。(上拉電阻的阻值決定了邏輯電平轉換的沿的速度  。阻值越大,速度越低功耗越小,所以負載電阻的選擇要兼顧功耗和速度。)   
3.  OPEN-DRAIN 提供了靈活的輸出方式,但是也有其弱點,就是帶來上升沿的延時。因為上升沿是通過外接上拉無源電阻對負載充電,所以當電阻選擇小時延
時就小,但功耗大;反之延時大功耗小。所以如果對延時有要求,則建議用下降沿輸出。   
4.  可以將多個開漏輸出的 Pin,連接到一條線上。通過一只上拉電阻,在不增加任何器件的情況下,形成“與邏輯”關系。這也是 I2C,SMBus 等總線判斷總線占用狀態的原理。補充:什么是“線與”?:   在 一 個 結 點 ( 線 ) 上 ,  連 接 一 個 上 拉 電 阻 到 電源  VCC  或  VDD  和  n  個  NPN  或  NMOS  晶體管的集電極  C  或漏極  D,  這些晶體管的發射極  E  或源極  S  都接到地線上,  只要有一個晶體管飽和,  這個結點(線)就被拉到地線電平上.  因為這些晶體管的基極注入電流(NPN)或柵極加上高電平(NMOS),晶體管就會飽和,  所以這些基極或柵極對這個結點(線)的關系是或非  NOR  邏輯.  如果這個結點后面加一個反相器,  就是或  OR  邏輯.   其實可以簡單的理解為:在所有引腳連在一起時,外接一上拉電阻,如果有一個引腳輸出為邏輯 0,相當于接地,與之并聯的回路“相當于被一根導線短路”,所以外電路邏輯電平便為 0,只有都為高電平時,與的結果才為邏輯 1。   

由于浮空輸入一般多用于外部按鍵輸入,結合圖上的輸入部分電路,我理解為浮空輸入狀態下,IO的電平狀態是不確定的,完全由外部輸入決定,如果在該引腳懸空的情況下,讀取該端口的電平是不確定的。   上拉輸入/下拉輸入/模擬輸入:這幾個概念很好理解,從字面便能輕易讀懂。   復用開漏輸出、復用推挽輸出:可以理解為 GPIO 口被用作第二功能時的配置情況(即并非作為通用 IO口使用)   
最后總結下使用情況:   
在STM32 中選用IO模式   
(1)  浮空輸入_IN_FLOATING  ——浮空輸入,可以做 KEY識別,RX1   
(2)帶上拉輸入_IPU——IO內部上拉電阻輸入   
(3)帶下拉輸入_IPD——  IO內部下拉電阻輸入   
(4)  模擬輸入_AIN  ——應用ADC模擬輸入,或者低功耗下省電   
(5)開漏輸出_OUT_OD  ——IO輸出0接GND,IO輸出1,懸空,需要外接上拉電阻,才能實現輸出高電平。當輸出為 1時,IO 口的狀態由上拉電阻拉高電平,但由于是開漏輸出模式,這樣 IO 口也就可以由外部電路改變為低電平或不變。可以讀IO輸入電平變化,實現 C51的IO雙向功能   
(6)推挽輸出_OUT_PP  ——IO 輸出 0-接 GND,  IO 輸出 1  -接 VCC,讀輸入值是未知的   
(7)復用功能的推挽輸出_AF_PP  ——片內外設功能(I2C的SCL,SDA)   
(8)復用功能的開漏輸出_AF_OD——片內外設功能(TX1,MOSI,MISO.SCK.SS)   
STM32設置實例:   
(1)模擬I2C使用開漏輸出_OUT_OD,接上拉電阻,能夠正確輸出 0和1;讀值時先 GPIO_SetBits(GPIOB,  GPIO_Pin_0);拉高,然后可以讀 IO 的值;使用GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0);   
(2)如果是無上拉電阻,IO默認是高電平;需要讀取 IO的值,可以使用帶上拉輸入_IPU 和浮空輸入_IN_FLOATING和開漏輸出_OUT_OD;

完整的pdf格式文檔51黑下載地址:
STM32的8種GPIO輸入輸出模式詳細分析.pdf (126.08 KB, 下載次數: 88)

作者: chinalong007    時間: 2018-7-10 16:26
學習一下!
作者: steven_roc    時間: 2018-7-30 08:34
需要學習的東西的很多,知得參考。!!!
作者: Rorschach    時間: 2018-7-30 10:23
剛剛入學32,很有幫助

作者: kauliang    時間: 2018-7-30 12:22
剛剛入學32,學習一下!




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 懂色中文一区二区三区在线视频 | 在线黄 | 欧美成人精品一区二区三区 | 黄色在线免费观看视频 | 国产精品国产三级国产aⅴ无密码 | 欧美久久精品一级黑人c片 91免费在线视频 | 日本久久久久久久久 | 亚洲高清免费观看 | 久久99精品久久久久久国产越南 | 一区二区三区视频免费观看 | 自拍偷拍亚洲一区 | 最新av片| 天堂一区二区三区四区 | 国产日产欧产精品精品推荐蛮挑 | 成人午夜在线视频 | 一区二区三区视频在线免费观看 | 成年人在线视频 | av毛片| 自拍视频国产 | 另类亚洲视频 | 国产精品二区三区 | 国产精品视频在线观看 | 一级看片免费视频 | 亚洲高清成人 | 在线观看视频福利 | 亚洲人在线 | 久久国产精品视频 | 中文字幕亚洲在线 | 日韩欧美手机在线 | 国产伦一区二区三区久久 | 中文字幕精品一区二区三区精品 | 久久精品综合网 | 高清av电影 | 97视频成人 | 免费成人国产 | 狠狠操婷婷| 国产精品网址 | 精品三级在线观看 | 国产欧美日韩视频 | 99久久电影| 伊人网站 |