三態邏輯
1. 概念
三態指其輸出既可以是一般二值邏輯電路,即正常的高電平(邏輯1)或低電平(邏輯0),又可以保持特有的高阻抗狀態。高阻態相當於隔斷狀態(電阻很大,相當於開路)。
三態門結構
高阻態是一個數字電路里常見的術語,指的是電路的一種輸出狀態,既不是高電平也不是低電平,如果高阻態再輸入下一級電路的話,對下級電路無任何影響,和沒接一樣,如果用萬用表測的話有可能是高電平也有可能是低電平,隨它後面接的東西定。
處於高阻抗狀態時,輸出電阻很大,相當於開路,沒有任何邏輯控制功能。高阻態的意義在於實際電路中不可能斷開電路。三態電路的輸出邏輯狀態的控制,是通過一個輸入引腳實現的。
三態門都有一個EN控制使能端,來控制門電路的通斷。 可以具備這三種狀態的器件就叫做三態器件。當EN有效時,三態電路呈現正常的“0”或“1”的輸
出;當EN無效時,三態電路給出高阻態輸出。
GPIO管腳上拉和下拉
GPIOx_PUPDR是GPIO的一個寄存器,即:GPIO port pull-up/pull-down register。翻譯過來就是GPIO端口上拉/下拉寄存器,顧名思義是控制GPIO端口是上拉還是下拉的一個寄存器。那麼什麼是上拉下拉呢?先看看它的值:
00: No pull-up, pull-down
01: Pull-up
10: Pull-down
11: Reserved
即無上拉下拉,上拉,下拉。保留。可以看出可以取00,01,10三個值,11是爲程序設計擴展而保留的值。
百度上拉,下拉可知:
上拉和下拉是指GPIO輸出高電位(上拉)還是低電位(下拉)。
上拉就是輸入高電平,然後接一個上拉電阻(起保護作用),知道上拉就表示該端口在默認情況下輸入爲高電平。
下拉就相反了,指輸入低電平,然後接一個下拉電阻。
那麼,什麼是高電平,什麼是低電平呢?這是電路方面的知識,百度百科講的,表示不太懂。
上拉就是將不確定的信號通過一個電阻鉗位在高電平,電阻同時起限流作用。
下拉同理。也是將不確定的信號通過一個電阻鉗位在低電平。
不過從程序設計的角度講,
上拉就是如果沒有輸入信號則此時I/O狀態爲1,下拉相反。
具體配置爲上拉還是下拉,要看電路圖。看外部有沒有上下拉電阻。
這有個參考,我沒看完,已經暈了,發出來: