在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32的GPIO結(jié)構(gòu)圖分析

            STM32的GPIO結(jié)構(gòu)圖分析

            作者: 時(shí)間:2018-09-13 來源:網(wǎng)絡(luò) 收藏

              1、結(jié)構(gòu)圖

            本文引用地址:http://www.biyoush.com/article/201809/391839.htm

              共有8中設(shè)置模式:輸入浮空、輸入上拉、輸入下拉、模擬輸入、開漏輸出、推挽式輸出、推挽式復(fù)用功能,開漏復(fù)用功能,共4種輸入,2種輸入,2種復(fù)用功能。

              2、模式說明

             ?、俑】蛰斎?/p>

              圖中施密特觸發(fā)器是開啟的,IO口的狀態(tài)可以直接送到輸入寄存器中,CPU可以直接讀取輸入寄存器;

              在上圖中,陰影的部分處于不工作狀態(tài),尤其是下半部分的輸出電路,實(shí)際上是與端口處于隔離狀態(tài)。

              黃色的高亮部分顯示了數(shù)據(jù)傳輸通道,外部的電平信號(hào)通過左邊編號(hào)1的IO端口進(jìn)入,經(jīng)過編號(hào)2的施密特觸發(fā)器的整形送入編號(hào)3的輸入數(shù)據(jù)寄存器,在輸入數(shù)據(jù)寄存器的另一端編號(hào)4,CPU可以隨時(shí)讀出IO端口的電平狀態(tài)。

             ?、谏侠斎?/p>

              上圖是帶上拉輸入模式的配置。與前面的浮空輸入模式相比,僅僅是在數(shù)據(jù)通道上部,接入了一個(gè)上拉電阻,根據(jù)STM32的數(shù)據(jù)手冊(cè),這個(gè)上拉電阻阻值介于30K~50K。

              同樣,CPU可以隨時(shí)在輸入數(shù)據(jù)寄存器的另一端,讀出IO端口的電平狀態(tài)。

             ?、巯吕斎?/p>

             ?、苣M輸入

              施密特觸發(fā)器是關(guān)閉的,信號(hào)直接到ADC輸入;

              STM32的模擬輸入通道的配置則更加簡(jiǎn)單,信號(hào)從左邊編號(hào)1的端口進(jìn)入,從右邊編號(hào)2的一端直接進(jìn)入ADC模塊。

              這里我們看到所有的上拉、下拉電阻和施密特觸發(fā)器,均處于斷開狀態(tài),因此輸入數(shù)據(jù)寄存器將不能反映端口上的電平狀態(tài),也就是說,模擬輸入配置下,CPU不能在輸入數(shù)據(jù)寄存器上讀到有效的數(shù)據(jù)。

             ?、蓍_漏輸出模式

              當(dāng)CPU在編號(hào)1端通過“位設(shè)置/清楚寄存器”或“輸出數(shù)據(jù)寄存器”寫入數(shù)據(jù)后,該數(shù)據(jù)位通過編號(hào)2的輸出控制電路傳送到編號(hào)4的IO端口。

              如果CPU寫入的是邏輯1,則編號(hào)3的N-MOS管將處于關(guān)閉狀態(tài),此時(shí)IO端口的電平將由外部的上拉電阻決定,如果CPU寫入的是邏輯0,則編號(hào)3的N-MOS管將處于開啟狀態(tài),此時(shí)IO端口的電平被編號(hào)3的N-MOS管拉到了VSS的零電位。

              在上圖的上半部,施密特觸發(fā)器處于開啟狀態(tài),這意味著CPU可以在“輸入數(shù)據(jù)寄存器”的另一端,隨時(shí)監(jiān)控IO端口的狀態(tài);通過這個(gè)特性,還實(shí)現(xiàn)了虛擬的IO端口雙向通信,只要CPU輸出邏輯1,由于編號(hào)3的N-MOS管處于關(guān)閉狀態(tài),IO端口的電平將完全由外部電路決定,因此,CPU可以在“輸入數(shù)據(jù)寄存器”讀到外部電路的信號(hào),而不是它自己輸出的邏輯1。

              GPIO口的輸出模式下,有3種輸出速度可選(2MHz、10MHz和50MHz),這個(gè)速度是指GPIO口驅(qū)動(dòng)電路的響應(yīng)速度,而不是輸出信號(hào)的速度,輸出信號(hào)的速度與程序有關(guān)(芯片內(nèi)部在IO口的輸出部分安排了多個(gè)響應(yīng)速度不同的輸出驅(qū)動(dòng)電路,用戶可以根據(jù)自己的需要選擇合適的驅(qū)動(dòng)電路)。通過選擇速度來選擇不同的輸出驅(qū)動(dòng)模塊,達(dá)到最佳的噪聲控制和降低功耗的目的。高頻的驅(qū)動(dòng)電路,噪聲也高,當(dāng)不需要高的輸出頻率時(shí),請(qǐng)選用低頻驅(qū)動(dòng)電路,這樣非常有利于提高系統(tǒng)的EMI性能。當(dāng)然如果要輸出較高的頻率的信號(hào),但卻選用了較低頻率的驅(qū)動(dòng)模塊,很可能會(huì)得到失真的輸出信號(hào)。

              ⑥開漏輸出復(fù)用功能

             ?、咄仆燧敵瞿J?/p>

             ?、嗤仆鞆?fù)用輸出模式

              GPIO推挽復(fù)用輸出模式,編號(hào)2的輸出控制電路的輸入,與復(fù)用功能的輸出端相連,此時(shí)輸出數(shù)據(jù)寄存器被從輸出通道斷開了,并和片上外設(shè)的輸出信號(hào)連接。我們將GPIO配置成復(fù)用輸出功能后,如果外設(shè)沒有被激活,那么它的輸出將不確定,其它部分與前述模式一致,包括對(duì)“輸入數(shù)據(jù)寄存器”的讀取。

              3、應(yīng)用場(chǎng)合

             ?、偕侠斎?、下拉輸入可以用來檢測(cè)外部信號(hào);例如,按鍵等;

             ?、诟】蛰斎肽J?,由于輸入阻抗較大,一般把這種模式用于標(biāo)準(zhǔn)通信協(xié)議的I2C、USART的接收端;

              ③普通推挽輸出模式一般應(yīng)用在輸出電平為0和3.3V的場(chǎng)合。而普通開漏輸出模式一般應(yīng)用在電平不匹配的場(chǎng)合,如需要輸出5V的高電平,就需要在外部一個(gè)上拉電阻,電源為5V,把GPIO設(shè)置為開漏模式,當(dāng)輸出高阻態(tài)時(shí),由上拉電阻和電源向外輸出5V電平。

             ?、軐?duì)于相應(yīng)的復(fù)用模式,則是根據(jù)GPIO的復(fù)用功能來選擇,如GPIO的引腳用作串口的輸出,則使用復(fù)用推挽輸出模式。如果用在IC、SMBUS這些需要線與功能的復(fù)用場(chǎng)合,就使用復(fù)用開漏模式。

             ?、菰谑褂萌魏我环N開漏模式時(shí),都需要接上拉電阻。



            關(guān)鍵詞: STM32 GPIO

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉