STM32 (4) GPIO(1)

1.芯片的引腳分布

2.普通IO引腳的命名規則

3.IO復用

IO引腳身兼數職的現象叫做IO復用,可以使芯片擁有更多的功能,例如:

PA9和PA10既可以用于GPIO的引腳,也可以用于串口或定時器的引腳

通用:CPU直接控制IO引腳的輸入輸出(如GPIO)

復用功能:CPU通過片上外設間接控制IO引腳(如串口,定時器)

4. IO重映射

將某個片上外設的復用功能移動到其他IO引腳上

5.最小系統板引腳圖

說明:例如想同時使用STM32的串口1和定時器1,但用到的IO口都是PA9和PA10,就可用重映射將串口1的引腳引到PB6和PB7,這樣同時使用兩個外設時,引腳就不會沖突了。

6.GPIO

6.1 GPIO的寄存器組

6.2 GPIO的8種工作模式

6.2.1 輸入和輸出

輸入:通過IO引腳讀取外部輸入電平的高或低

輸出:通過IO引腳向外輸出高電平或低電平

6.2.2 通用和復用 (只針對于輸出模式)

見 3.1

6.2.3 推挽和開漏

當給MOS管的G極施加一個合適的電壓時,D和S之間就會導通,否則就會斷開

? ? 在推挽模式下,向ODR寄存器寫0時,P-MOS斷開,N-MOS導通,接VSS,會輸出低電壓;向ODR寄存器寫1時,N-MOS斷開,P-MOS導通,接Vdd,會輸出高電壓(3.3V)。

? ? 在開漏模式下,P-MOS始終斷開,IO口連接的是N-MOS的漏極,當寫0時,N-MOS閉合,接VSS,輸出低電壓;當寫1時,N-MOS斷開,引腳懸空,輸出高阻抗。

6.2.4 上拉,下拉和浮空(只針對于輸入模式)

在輸入模式下,引腳的內阻是無窮大。

? ?當輸入高電平時,引腳的電平就是高電平;當輸入低電平時,引腳的電平就是低電平。

? ? 但如果外部輸入信號斷開,則IO引腳就會懸空,相當于一個天線,會不斷接收外部的電磁波,接收到的信號會雜亂無章。

? ?當上拉電阻閉合時,當引腳懸空時,電壓全被無窮大電阻分走,則引腳的電平會被上拉電阻上拉到3.3V,會有一個默認的高電平,對應上拉輸入。

同理,當下拉電阻閉合時,當引腳懸空時,引腳會有一個默認的低電平,對應下拉輸入。

注:兩個電阻只能同時閉合一個,當都不閉合時,對應浮空輸入。

? ? ? ?單片機復位后,IO引腳會處于浮空輸入模式(省電,安全)

6.2.5 模擬輸入

當需要使用STM32的ADC功能時,需要將引腳配置為模擬輸入模式,用于接收外部的模擬信號。

6.3 8種模式的英文名稱

6.4 IO的最大輸出速度

最大輸出速度:IO允許輸出電平的最大切換頻率

?STM32的IO引腳的輸出速度:

6.5 GPIO的內部結構

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

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

相關文章

Linux:用戶格式顯示進程

簡介 在Linux系統中,ps 命令用于查看當前系統中的進程。ps -aux 是該命令的一個常用選項組合,用于以用戶格式顯示所有進程。 ps -aux 輸出的信息內容及含義: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND r…

【OpenGL編程手冊-04】詳細解釋著色器

著色器 目錄 一、說明二、著色器語言GLSL2.1 典型的著色器代碼2.2 數據類型2.2.1 向量 2.3 輸入與輸出2.3.1 頂點著色器2.3.2 片段著色器 2.4 Uniform2.5 函數后綴含義2 .6 更多屬性! 三、我們自己的著色器類四、從文件讀取五、 編譯著色器練習 一、說明 在Hello T…

shopee、美客多、敦煌、國際站賣家如何掌握測評補單的核心要素

對于賣家而言,測評補單是一種經濟高效的推廣策略,它對于提升商品流量、優化轉化率、增強關鍵詞質量分以及加強鏈接權重都起到了積極的推動作用。然而,要實現自養號測評,需滿足以下條件: 首要之務,建立一個穩…

jenkins插件下載失敗bug

如果遇到安裝jenkins插件經常失敗并報以下類似錯誤,很可能是因為jenkins國外官方插件地址下載速度非常慢,我們可以修改為國內插件地址。 java.io.IOException: Failed to load: SCM API Plugin (scm-api 676.v886669a_199a_a_) - Jenkins (2.361.4) or h…

詳細分析Java類調用Service接口失效的注意事項(附Demo)

目錄 前言1. 問題所示2. 原理分析3. 解決方法 前言 試錯了一小時&#xff0c;發現接口返回null&#xff01;&#xff01; 最后梳理其知識點并總結其原理 1. 問題所示 接口類如下&#xff1a; public interface IInfoService extends BaseService<Info> {錯誤方式一&a…

【Zookeeper】ZooKeeper的一些重要功能和作用

&#x1f34e;個人博客&#xff1a;個人主頁 &#x1f3c6;個人專欄&#xff1a;日常聊聊 ?? 功不唐捐&#xff0c;玉汝于成 目錄 前言 正文 結語 我的其他博客 前言 隨著分布式系統的普及和應用場景的不斷增加&#xff0c;構建可靠、高效的分布式系統變得愈發重要。然…

Vue 3 中如何遷移從 Vue 2 的項目?

引言 Vue.js 是一個流行的前端框架&#xff0c;它以其響應式數據綁定和組件化系統而聞名。隨著時間的推移&#xff0c;Vue.js 也在不斷發展和改進。Vue 3 是 Vue.js 的一個重大更新&#xff0c;它帶來了許多新特性和改進&#xff0c;包括更好的性能、更小的體積、更強大的組合…

C 嵌入式系統設計模式 19:保護調用模式

本書的原著為&#xff1a;《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》&#xff0c;講解的是嵌入式系統設計模式&#xff0c;是一本不可多得的好書。 本系列描述我對書中內容的理解。本文章描述嵌入式并發和資源管理模式之五…

Cesium 3D Tiles 簡介

3D Tiles 是大規模異構 3D 地理空間數據集&#xff08;例如點云、建筑物和攝影測量&#xff09;的開放標準。3D Tiles 基于 glTF 和其他 3D 數據類型構建&#xff0c;是一種可類似二維瓦片模式的流式傳輸的優化格式&#xff0c;旨在適應當今不斷增長的 3D 地理空間數據集的渲染…

編碼規范(前端)

文章目錄 1. 文檔說明1.1 編制說明1.2 名詞解釋 2.前端研發規范2.1 HTML編碼規范2.1.1 文檔類型2.1.2 語言2.1.3 元數據2.1.4 資源加載2.1.5 頁面標題2.1.6 編碼風格2.1.7 標簽2.1.8 屬性2.1.9 語義化 2.2 CSS編碼規范2.2.1 文件引用2.2.2 命名-組成元素 知識點 1. 文檔說明 1…

【數據分享】1979~2020年MSWEP降水數據集

各位同學們好&#xff0c;今天和大伙兒分享的是1979~2020年MSWEP降水數據集。如果大家有下載處理數據等方面的問題&#xff0c;您可以私信或者評論。 Beck, H. E., E. F. Wood, M. Pan, C. K. Fisher, D. G. Miralles, A. I. J. M. van Dijk, T. R. McVicar, and R. F. Adler, …

【軟件設計師】通俗易懂的去了解算法的特性和要求

&#x1f413; 算法 算法是對特定問題求解步驟的一種描述&#xff0c;算法是指令的有限序列。其中每一條指令表示一個或者多個操作。 &#x1f413; 算法的5種屬性 有窮性 一個算法必須總是在執行有窮的步驟后&#xff0c;且在每個步驟執行的過程中時間是有限的 1.有窮性意味…

深度學習 精選筆記(7)前向傳播、反向傳播和計算圖

學習參考&#xff1a; 動手學深度學習2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、請聯系侵刪。 ②已寫完的筆記文章會不定時一直修訂修改(刪、改、增)&#xff0c;以達到集多方教程的精華于一文的目的。 ③非常推薦上面&#xff08;學習參考&#x…

藍橋杯:單詞分析

題目 題目描述 小藍給學生們組織了一場考試&#xff0c;卷面總分為 100 分&#xff0c;每個學生的得分都是一個 0 到 100 的整數。 如果得分至少是 60 分&#xff0c;則稱為及格。如果得分至少為 85 分&#xff0c;則稱為優秀。 請計算及格率和優秀率&#xff0c;用百分數表…

Rstudio-深度學習執行代碼

RStudio是一個開源的集成開發環境&#xff08;IDE&#xff09;&#xff0c;專門用于R編程語言的開發和數據分析。R語言是一種流行的統計計算和數據可視化語言&#xff0c;廣泛用于數據科學、統計學和機器學習領域。 RStudio提供了許多功能強大的工具&#xff0c;包括代碼編輯器…

SQL 基本條件查詢DQL 練習

DQL DQL&#xff08;Data Query Language&#xff09;是SQL語言中的一種類型&#xff0c;用于執行數據查詢操作。它是SQL的一部分&#xff0c;用于從數據庫中檢索數據。DQL語句用于從一個或多個表中選擇、過濾和排序數據。常見的DQL查詢語句包括SELECT、FROM、WHERE、GROUP BY…

U盤無法讀取?輕松掌握正確解決方法!

“為什么我的u盤插入電腦后會顯示無法讀取呢&#xff1f;想查看一些比較重要的文件&#xff0c;但就是無法讀取U盤&#xff0c;想問問大家&#xff0c;我應該怎么操作呢&#xff1f;” U盤作為一種便捷的數據存儲設備&#xff0c;廣泛應用于我們的日常生活和工作中。然而&#…

獨立游戲《星塵異變》UE5 C++程序開發日志2——創建并編寫一個C++類

在本篇日志中&#xff0c;我們將要用一個C類來實現一個游戲內的物品&#xff0c;同時介紹UCLASS、USTRUCT、UPROPERTY的使用 一、創建一個C類 我們在UE5的"內容側滑菜單"中&#xff0c;在右側空白中右鍵選擇"新建C類"&#xff0c;然后可以選擇一個想要的…

python70-Python的函數入門,了解下函數

函數是執行特定任務的一段代碼,程序通過將一段代碼定義成函數,并為該函數指定一個函數名,這樣即可在需要的時候多次調用這段代碼。因此,函數是代碼復用的重要手段。學習函數需要重點掌握定義函數、調用函數的方法。 與函數緊密相關的另一個知識點是lambda表達式。lamda表達…

Spring AOP(Aspect-Oriented Programming,面向切面編程)介紹

Spring AOP&#xff08;Aspect-Oriented Programming&#xff0c;面向切面編程&#xff09;是Spring框架的一個重要模塊&#xff0c;它提供了一種強大的方式來幫助開發者實現橫切關注點&#xff08;cross-cutting concerns&#xff09;的模塊化。橫切關注點是指那些影響多個模塊…