GPIO的8種工作方式

GPIO的8種工作方式:一、4 種輸入模式1.1? Floating Input? 浮空輸入1.2? Pull-up Input? 上拉輸入1.3? Pull-down Input? 下拉輸入1.4? Analog Input? 模擬輸入二、4種輸出模式2.1? General Push-Pull Output? 推挽輸出2.2? General Open-Drain Output? 開漏輸出2.3? Alternate?General Push-Pull Output? 復用推挽輸出2.4? Alternate?General Open-Drain Output? 復用開漏輸出

4種輸入模式原理及特點


1. 浮空輸入(Floating Input)
電路原理:引腳內部既不接上拉電阻(到 VDD),也不接下拉電阻(到 GND),直接連接到施密特觸發器(數字信號整形電路)。
核心特點:外部信號直接決定引腳電平,無外部信號時,引腳電平隨空間電磁干擾波動(“浮空” 即 “懸浮不定”)。
信號路徑:外部信號 → 施密特觸發器 → 內部數字電路(如寄存器)。
例:外部接按鍵且已串聯上拉電阻時,無需內部電阻,用浮空輸入檢測按鍵狀態。2. 上拉輸入(Pull-up Input)
電路原理:引腳內部通過開關接入上拉電阻(電阻值通常為 30-50kΩ,連接到 VDD),同時連接施密特觸發器。
核心特點:無外部信號時,上拉電阻將引腳 “拉到高電平”(接近 VDD);外部輸入低電平時(如接地),引腳被拉低。
關鍵作用:通過內部電阻消除 “懸空狀態”,確保無外部信號時電平穩定。
例:按鍵一端接引腳,另一端接地,用上拉輸入時,按鍵未按則引腳為高電平,按下為低電平。3. 下拉輸入(Pull-down Input)
電路原理:與上拉輸入對稱,內部接入下拉電阻(連接到 GND),同時連接施密特觸發器。
核心特點:無外部信號時,下拉電阻將引腳 “拉到低電平”;外部輸入高電平時,引腳被拉高。
適用場景:外部信號為高電平有效(如傳感器輸出高電平觸發中斷),避免無信號時電平波動。4. 模擬輸入(Analog Input)
電路原理:引腳直接連接到 ADC(模數轉換器)的模擬信號通道,斷開所有內部上拉 / 下拉電阻和施密特觸發器(數字電路被隔離)。
核心特點:保留外部信號的 “連續電壓特性”(而非轉為 0/1 數字信號),確保 ADC 能采樣到真實的模擬電壓(如 0-3.3V 的漸變信號)。
例:連接光敏電阻(輸出隨光照變化的電壓),用模擬輸入讓 ADC 讀取光照強度。

4種輸出模式原理及特點

5. 推挽輸出(General Push-Pull Output)
電路原理:輸出級由兩個互補晶體管(NPN 和 PNP)組成:
輸出高電平時,NPN 管截止,PNP 管導通,引腳通過 PNP 管連接到 VDD(輸出高電平≈VDD);
輸出低電平時,PNP 管截止,NPN 管導通,引腳通過 NPN 管連接到 GND(輸出低電平≈0V)。
核心特點:能主動輸出高 / 低電平,驅動能力強(拉電流和灌電流較大,通常可達 20mA),無需外部電阻。
例:直接驅動 LED(高電平點亮時,PNP 管提供拉電流;低電平點亮時,NPN 管提供灌電流)。6. 開漏輸出(General Open-Drain Output)
電路原理:輸出級只有 NPN 晶體管,PNP 晶體管被移除:
輸出低電平時,NPN 管導通,引腳接地(低電平≈0V);
輸出高電平時,NPN 管截止,引腳處于 “高阻態”(相當于斷開),需通過外部上拉電阻連接到 VDD 才能輸出高電平。
核心特點:不能主動輸出高電平(依賴外部電阻),但支持 “線與” 功能(多個開漏輸出引腳接同一總線,任一輸出低電平則總線為低)。
例:I2C 總線的 SDA/SCL 線,多個設備通過開漏輸出共享總線,避免信號沖突。7. 復用推挽輸出(Alternate Function Push-Pull)
電路原理:輸出級結構與 “推挽輸出” 相同(互補晶體管),但控制信號來源從 “GPIO 控制器” 切換到 “片上外設”(如定時器、SPI、UART 等)。
核心特點:引腳功能被 “復用” 給外設,由外設直接驅動推挽輸出級,兼顧外設功能和強驅動能力。
例:定時器的 PWM 輸出引腳配置為復用推挽,由定時器直接控制高低電平切換,驅動電機調速。8. 復用開漏輸出(Alternate Function Open-Drain)
電路原理:輸出級結構與 “開漏輸出” 相同(僅 NPN 晶體管),但控制信號來自片上外設,而非 GPIO 控制器。
核心特點:外設通過開漏結構輸出信號,需外部上拉電阻,適合需要線與或電平轉換的外設場景。
例:I2C 外設的引腳配置為復用開漏,由 I2C 控制器控制輸出,通過外部上拉電阻實現多設備通信。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/95165.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/95165.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/95165.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LeetCode算法日記 - Day 29: 重排鏈表、合并 K 個升序鏈表

目錄 1. 重排鏈表 1.1 題目解析 1.2 解法 1.3 代碼實現 2. 合并 K 個升序鏈表 2.1 題目解析 2.2 解法 2.3 代碼實現 1. 重排鏈表 143. 重排鏈表 - 力扣(LeetCode) 給定一個單鏈表 L 的頭節點 head ,單鏈表 L 表示為: L…

算法模板(Java版)_前綴和與差分

ZZHow(ZZHow1024) 💡 差分是前綴和的逆運算。 前綴和 💡 前綴和作用:快速求出 [l, r] 區間的和。 一維前綴和 例題:AcWing 795. 前綴和 import java.util.Scanner;public class Main {public static void main(String[] args)…

openssl使用SM2進行數據加密和數據解密

一、準備工作 1. 安裝依賴 sudo apt-get update sudo apt-get install libssl-dev2. 確認 OpenSSL 版本 openssl version如果是 1.1.1 或 3.0,就支持 SM2/SM3/SM4。二、C 語言示例代碼 這個程序會: 生成 SM2 密鑰對使用公鑰加密一段明文使用私鑰解密恢復…

用滑動窗口與線性回歸將音頻信號轉換為“Token”序列:一種簡單的音頻特征編碼方法

在深度學習和語音處理領域,如何將原始音頻信號有效地表示為離散的“Token”序列,是語音識別、音頻生成等任務中的關鍵問題。常見的方法如Mel頻譜圖向量量化(VQ)、wav2vec等已經非常成熟,但這些模型通常依賴復雜的神經網…

Vue開發準備

vs code VSCode的下載地址https://code.visualstudio.com/Download Node.js node.js的下載地址 https://nodejs.org/zh-cn/download 注意:nodejs安裝路徑不要和vscode安裝到同一個文件夾,兩個應用分別裝到兩個不同的文件夾 npm config set cache &q…

QT6(QFileSystemModel和QTreeView)

QT6QFileSystemModel和QTreeView QFileSystemModel為本機的文件系統提供一個模型,QFileSystemModelt和QTreeView結合使用,可以用目錄樹的形式顯示本機的文件系統,如同Windows的資源管理器一樣使用QFileSystemModel提供的接口函數,…

【開題答辯全過程】以 基于Spring Boot的房屋租賃系統的設計與實現為例,包含答辯的問題和答案

個人簡介一名14年經驗的資深畢設內行人,語言擅長Java、php、微信小程序、Python、Golang、安卓Android等開發項目包括大數據、深度學習、網站、小程序、安卓、算法。平常會做一些項目定制化開發、代碼講解、答辯教學、文檔編寫、也懂一些降重方面的技巧。感謝大家的…

構建下一代智能金融基礎設施

1. 行業背景:從數字支付到可編程金融的范式躍遷全球數字支付市場正以萬億美元的規模持續擴張,但其底層系統仍受限于傳統金融的清算、結算延遲和高昂的中間成本。盡管互聯網技術提升了支付的便捷性,但其核心仍是中心化賬戶體系的延伸。Web3 技…

【C++】深入解析C++嵌套依賴類型與typename關鍵字

什么是嵌套依賴類型?嵌套依賴類型(Nested Dependent Type)是指在一個模板中,一個類型名稱依賴于模板參數,并且是該模板參數內部的嵌套類型。具體來說,當一個類型滿足以下兩個條件時,它就是嵌套依…

管網信息化監測主要的內容

管網信息化監測是指通過現代信息技術手段對管網系統進行實時監控和數據采集的管理方式。其背景源于城市化進程加快以及基礎設施建設規模不斷擴大,傳統的管網管理模式已無法滿足現代化需求。管網信息化監測主要內容包括以下幾個方面:█管網運行狀態監測&a…

數據泄露代價千萬,PII 保護你真的做對了嗎?

一、PII—數據隱私的核心概念解析 在大多數數據隱私法律中,可識別個人信息(PII, Personally Identifiable Information)是指任何可以用來識別個人身份的信息。然而,PII 的定義并非由單一法律統一規定,不同國家和地區的法律對其定義略有差異: 各國對 PII 的定義 美國 20…

【數據結構】八大排序之快速排序:分而治之的藝術

文章目錄快速排序1.hoare版本算法優化三數取中法小區間優化完整代碼如下算法分析時間復雜度空間復雜度2.前后指針法排序過程3.非遞歸(棧模擬)實現思路總結快速排序 快速排序是Hoare于1962年提出的一種二叉樹結構的交換排序方法,其基本思想為…

在ROS中獲取并發布UBS式傳感器的溫濕度

哈嘍大家好,我是鋼板獸! 今天更新一篇和ROS相關的文章,有個項目需求是在ROS中獲取并發布UBS式傳感器的溫濕度,我使用的溫濕度傳感器簡介如下:DL11- MC-S1 溫濕度傳感器通過USB 接口采用標準MODBUS RTU 協議通信&#x…

【圖論】 Graph.jl 操作匯總

文章目錄圖論的集合類操作Base.getindexBase.intersectBase.joinBase.reverseBase.reverse!Base.sizeBase.sumBase.sumBase.union圖生成與轉換Graphs.cartesian_productGraphs.complementGraphs.compute_shiftsGraphs.crosspathGraphs.differenceGraphs.egonetGraphs.induced_s…

【鏈表 - LeetCode】146. LRU 緩存

146. LRU 緩存 題解&#xff1a; class LRUCache {list<pair<int,int>>v;unordered_map<int,list<pair<int,int>>::iterator>idx;int capacity; public:LRUCache(int capacity):capacity(capacity){}int get(int key) {if(idx.count(key) 0) …

Elasticsearch vs Solr vs OpenSearch:搜索引擎方案對比與索引設計最佳實踐

Elasticsearch vs Solr vs OpenSearch&#xff1a;搜索引擎方案對比與索引設計最佳實踐 隨著大數據和實時分析需求的爆發&#xff0c;搜索引擎已成為許多業務系統中的核心組件。本篇文章將從“技術方案對比分析型”角度切入&#xff0c;重點比較三大主流搜索引擎&#xff1a;El…

光頡科技)Viking)的CS25FTFR009 1225 0.009R/9mR 3W電阻介紹-華年商城

“**華年商城”**小編為您介紹&#xff1a;光頡科技&#xff08;Viking&#xff09;的CS25FTFR009 1225 0.009R/9mR 3W電阻 光頡CS25FTFR009合金電阻&#xff1a;0.009Ω/9mΩ 3W 1%精密采樣電阻 光頡科技&#xff08;Viking&#xff09;的CS25FTFR009是一款高性能的電流檢測電…

港科大開放世界長時域具身導航!LOVON:足式機器人開放詞匯目標導航

作者&#xff1a;Daojie Peng1^{1}1, Jiahang Cao1,2^{1,2}1,2, Qiang Zhang1,2^{1,2}1,2, Jun Ma1,3^{1,3}1,3單位&#xff1a;1^{1}1香港科技大學&#xff08;廣州&#xff09;&#xff0c;2^{2}2北京人形機器人創新中心&#xff0c;3^{3}3香港科技大學論文標題&#xff1a;L…

【前端教程】JavaScript 數組對象遍歷與數據展示實戰

在前端開發中&#xff0c;處理數組和對象是日常工作的基礎。無論是篇文章將通過一個具體案例&#xff0c;詳細講解如何使用JavaScript遍歷包含對象的數組&#xff0c;并將數據以清晰的格式展示在頁面上。我們會從基礎語法開始&#xff0c;逐步優化代碼&#xff0c;最終實現一個…

無重復字符的最長子串,leetCode熱題100,C++實現

題目來源&#xff1a;leetCode 3. 無重復字符的最長子串 - 力扣&#xff08;LeetCode&#xff09; 給定一個字符串 s &#xff0c;請你找出其中不含有重復字符的 最長 子串 的長度。 解法 class Solution { public:int lengthOfLongestSubstring(string s) {unordered_set<…