-
1 # just_仰望星空
-
2 # 電子電路設計
微控制器IO口輸出一般有準雙向口輸出、 推輓輸出、開漏輸出等。下面介紹這三種輸出模式。
準雙向口輸出:準雙向口輸出就是可作為輸出也可作為輸入口,因此這個口是不定的,是準雙向型別,不用重新I/O口的輸出狀態 。準雙向口有3個上拉電晶體以便根據不同的需要設定表不同的引數。這三個電晶體分別是起到強上拉、極弱上拉、弱上拉功能。
推輓輸出:
推輓輸出是因為它的輸出結構類似於推輓結構,它是一種由兩個三極體(或者其他MOS管等)分別受到一個訊號的控制,這訊號的互補的,就是說只有一個三極體導通,一個三極體導通的時候另一個就要截止。推輓輸出可以輸出高電平,也可以輸出低電平。當鎖存器為“1”時候可以持續提供強上拉,這種輸出結構可以驅動需要很大電流的器件。
開漏輸出:這種結構作為邏輯輸出時候,必須要有外部上拉,上拉電阻要為10K左右比較好,一般是透過電阻加到VCC電源,這樣才可以讀取外部狀態,也就是說此時的開漏輸出的可以作為外部的輸入I/O口。
除了這些有些還附帶PWM輸出功能,晶片內部整合PWM等,用來專門驅動電機、蜂鳴器等需要PWM的訊號。
-
3 # 肖特基
微控制器的IO口是微控制器
與外部器件進行溝通的唯一通道
下面和大家捋一捋微控制器IO口的幾種狀態
IO口分為輸入和輸出功能
輸出功能又分為兩種輸出,一種是推輓的輸出
另外一種是開漏的輸出
推輓輸出是微控制器預設的一種輸出方式
內部兩個電晶體輪流導通,輸出的狀態由內部決定
比如說控制led燈,或者蜂鳴器
開漏輸出,相當於IO接在內部電晶體的漏極
輸出的狀態由外部決定
一般用在IIC通訊上,需要加,上拉電阻
輸入可以分為三種輸入狀態,包括上拉輸入
下拉輸入,懸空輸入
上拉輸入和下拉輸入
顯而易見,在這個管腳作為輸入的時候
有上拉的電阻,或者有下拉的電阻。
IO口懸空的狀態,即高阻的狀態
內部沒有上拉的電阻,也沒有下拉的電阻
對外呈現出一種高阻態
至於IO口怎麼配置,要根據實際應用來搭配
用的時候都是看別人的原理圖,才決定要不要加上拉電阻之類的。51的四種模式看了,理解的不深,很容易就混了,有什麼好的理解辦法嗎?其他更高階的微控制器的IO口還有其他的輸出模式嗎?
回覆列表
我來說說STM32吧,這是意法半導體出的ARM-cortex核心的32位微控制器,功能有多強自己百度吧。其IO也叫GPIO,即通用輸入輸出埠,主要有一下幾種模式,普通輸入,模擬輸入,開漏輸出,推輓輸出,另外還可附加配置浮空,上拉或者下拉,或者複用。普通輸入就是讀取ttl電平的邏輯值,不多解釋;模擬輸入對外表現為高阻,一方面可以在啟用內部adc的時候使用,另一方面降低不用埠的電流,減小功耗;開漏輸出簡單講就是邏輯1輸出高阻態,邏輯0輸出低電平,因此需要外部上拉電阻,看似麻煩但是好處是可以做邏輯電平轉換,天生帶‘線與’的功能;而推完輸出就是強制拉高或拉低電平(不超過IO電流輸出能力的前提下),不需要外部上拉了。上下拉電阻在不同系列STM32裡不太一樣,有的只能輸入才有,有的輸入輸出共用,和外部上下拉差不多,不過阻值不小,上下拉能力有限。複用就不說了,主要是後端與片上外設連線的關係,和IO關係不是太大。