學號:14020520011 姓名:孟天玉
【嵌牛導讀】:基于STM32的單片機部分基礎學習
【嵌牛鼻子】:學習筆記垦藏、單片機帽揪、STM32
【嵌牛提問】:STM32有哪些基礎模塊碳胳?能實現(xiàn)什么功能废境?
【嵌牛正文】:
一.GPIO
GPIO中文簡稱“通用I/O口”榛泛,是芯片內(nèi)部資源訪問外界的通道嚎研,I/O口可以通過軟件自定義實現(xiàn)不同的功能復用蓖墅。
STM32F103共有112個通用I/O口,他們分為7組:PA~PG嘉赎,每組16根線置媳。其中一部分I/O口是專用的于樟,但大部分可以進行復用公条。
二.GPIO工作方式
STM32的GPIO非常強大,共有4種輸入和4種輸出方式迂曲。
輸入方式:浮空輸入靶橱,上拉輸入,下拉輸入,模擬輸入
輸出方式:開漏輸出关霸,開漏復用功能传黄,推挽式輸出,推挽式復用功能
STM32大部分I/O口兼容5V的TTL電平队寇,這些引腳可以直接與5V器件相連膘掰,極大地簡化了電路的設計。
一個I/O口主要包含3種電路:輸入佳遣、輸出數(shù)據(jù)寄存器電路识埋,輸入、輸出數(shù)據(jù)驅(qū)動電路零渐,ESD靜電保護電路窒舟。
ESD靜電保護二極管作用:如果二極管的上拉電源接到內(nèi)部的VDD,即內(nèi)部3.3V诵盼,那么該管腳不兼5V TTL電平惠豺;反之如果接的是VDD-FT,即內(nèi)部5V风宁,該管腳兼容5V TTL電平洁墙,這就解釋了帶FT標記的引腳可以兼容5V電平的原因。
下面是各種模式的說明:
1. 浮空輸入模式:
此輸入的最大特點是MCU讀到的引腳狀態(tài)完全隨外部I/O口電平變化戒财,一般用于按鍵輸入扫俺。
2. 上拉輸出模式:
此模式干擾能力強危喉,適合接地信號的輸入栓拜。與浮空模式不同在于I/O端口與TTL施密特觸發(fā)器間接入了30K~50K的上拉電阻,提高了噪聲容限壁晒。
3. 下拉輸入模式
于I/O端口與TTL施密特觸發(fā)器間接入了30K~50K的下拉電阻骂际,適合有效信號為高電平值信號的接入疗琉。
4. 模擬輸入模式:
此模式是將I/O口上的信號作為模擬信號直接輸?shù)絊TM32內(nèi)部的ADC上,進行采樣轉(zhuǎn)換歉铝。
5. 開漏輸出模式
開漏輸出端相當于三極管的集電極盈简,要得到高電平狀態(tài)需要上拉電阻才行,適用于電流型的驅(qū)動太示。此模式下I/O端口可以實現(xiàn)雙向通信口功能柠贤。
此模式有以下特點:
(1)電平匹配:用來匹配外部不同的電平傳輸,只需改變外部上拉電源的電壓类缤,就可以輸出用戶自定義的電平值臼勉。
(2)線與功能:容易實現(xiàn)多個I/O口的“線與”功能,只要將這些I/O口連接在一起餐弱,加上上拉電阻即可宴霸。線與邏輯:即兩個輸出端(包括兩個以上)直接互連就可以實現(xiàn)“AND”的邏輯功能囱晴。
6. 開漏復用輸出模式
此模式與開漏輸出模式不同點在于:“輸入控制電路”的輸入端接的是STM32內(nèi)部的特定功能外設。
7. 推挽式輸出模式
此模式下I/O可以輸出高瓢谢、低電平畸写。本質(zhì)是兩個三極管分別受兩個互補信號控制,同一時刻只有一個三極管導通氓扛,另一個截止枯芬。
8. 推挽復用輸出模式
此模式與推挽模式區(qū)別為:“輸入控制電路”的輸入端接的是STM32內(nèi)部的外設電路。
而開漏輸出與推挽輸出異同可由下圖看出: