0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

p0口為什么接上拉電阻

工程師 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:h1654155205.5246 ? 2018-08-22 17:16 ? 次閱讀

單片機(jī)P0端口的結(jié)構(gòu)及工作原理

P0端口8位中的一位結(jié)構(gòu)圖見下圖:

p0口為什么接上拉電阻

由上圖可見,P0端口由鎖存器、輸入緩沖器、切換開關(guān)、一個(gè)與非門、一個(gè)與門及場(chǎng)效應(yīng)管驅(qū)動(dòng)電路構(gòu)成。再看圖的右邊,標(biāo)號(hào)為P0.X引腳的圖標(biāo),也就是說(shuō)P0.X引腳可以是P0.0到P0.7的任何一位,即在P0口有8個(gè)與上圖相同的電路組成。

單片機(jī)端口上拉電阻的作用

顧名思義,上拉就是把電平拉高(一般到電源),下拉就是拉低(一般到地)。上拉主要是為了提高灌電流驅(qū)動(dòng)能力,相當(dāng)于從電源借點(diǎn)兒功率到IO口,下拉主要是在IO口功率足夠的情況下,為了保護(hù)IO口,靜態(tài)時(shí)為0電平。

對(duì)于不同的單片機(jī)和端口,上拉電阻的作用不同,最常見的由于內(nèi)部結(jié)構(gòu)的問題,不能處于懸空狀態(tài)。我就以51單片機(jī)進(jìn)行敘述,以其P0口為例,P0口是集電極開路輸出,也就是OC門,這種結(jié)構(gòu)沒有輸出高電平的能力就相當(dāng)于一個(gè)一端接地的開關(guān), 按下去就輸出低電平0V,斷開就沒有電壓,是懸空狀態(tài)。至于用不用上拉電阻,取決于外部電路,如果要輸出高電平控制一個(gè)器件,而這個(gè)器件本身又沒有內(nèi)置上拉,就必須自己接一個(gè)上拉電阻,如果要用低電平控制一個(gè)器件,則可以不用加上拉。一般來(lái)講,做板子時(shí)都會(huì)在P0口放一個(gè)排阻,10Kohm就可以了。

P0口作為I/O口輸出的時(shí)候時(shí),輸出低電平為0 輸出高電平為高組態(tài)(并非5V,相當(dāng)于懸空狀態(tài),也就是說(shuō)P0 口不能真正的輸出高電平)。給所接的負(fù)載提供電流,因此必須接上拉電阻(一電阻連接到VCC),由電源通過這個(gè)上拉電阻給負(fù)載提供電流。P0作輸入時(shí)不需要上拉電阻,但要先置1。因?yàn)镻0口作一般I/O口時(shí)上拉場(chǎng)效應(yīng)管一直截止,所以如果不置1,下拉場(chǎng)效應(yīng)管會(huì)導(dǎo)通,永遠(yuǎn)只能讀到0。因此在輸入前置1,使下拉場(chǎng)效應(yīng)管截止,端口會(huì)處于高阻浮空狀態(tài),才可以正確讀入數(shù)據(jù)。

單片機(jī)p0口為什么要加上拉電阻

P0口內(nèi)部沒有上拉電阻,是開漏的,不管它的驅(qū)動(dòng)能力多大,相當(dāng)于它是沒有電源的,需要外部的電路提供,絕大多數(shù)情況下P0口是必需加上拉電阻的。

P0口和其它三個(gè)口的內(nèi)部電路是不同的,如下圖:

p0口為什么接上拉電阻

P0口是接在兩個(gè)三極管D0和D1之間的,而P1-P3口的上部是接一個(gè)電阻的。P0口的上面那個(gè)三極管D0是在進(jìn)擴(kuò)展存儲(chǔ)器或擴(kuò)展總線時(shí)使用MOVX指令時(shí)才會(huì)控制它的導(dǎo)通和截止,在不用此指令時(shí)都是截止的。在平常我們使用如:P0_1=0P0_1=1這些語(yǔ)句時(shí)控制的都是下面那個(gè)三極管D1。

我們先假設(shè)P1口接一個(gè)74HC373,來(lái)看一看它的等效圖

p0口為什么接上拉電阻  

當(dāng)AT89S51的P1口上接了74HC373后就等于接了一個(gè)負(fù)載,如上圖右邊。一般來(lái)說(shuō)這些數(shù)字電路的輸入阻抗都很大,都在幾百K到上兆歐姆,而P1口內(nèi)的電阻R一般在幾十K以內(nèi)。

p0口為什么接上拉電阻

如上圖,當(dāng)我們發(fā)出指令P1=0時(shí),三極管D導(dǎo)通,見中間的等效圖,這時(shí)P1點(diǎn)的電位為0。

當(dāng)發(fā)出P1=1的指令后,三極管D截止,見右邊等效圖,因?yàn)镽x的阻值要比R的阻值大得多,因此P1點(diǎn)的電位是接近電源電壓的。即高電平。

我們?cè)賮?lái)看看P0口接負(fù)載時(shí)的圖

p0口為什么接上拉電阻

當(dāng)P0=0時(shí),等效圖是中間的,三極管D1導(dǎo)通,P0點(diǎn)的電位為0。

而當(dāng)P0=1時(shí),等效圖是右邊的,三極管D1截止,而上面的三極管D0始終是截止的,這樣P0點(diǎn)就等效于懸空了,它處在不穩(wěn)定狀態(tài),P0點(diǎn)又是RX的高阻抗輸入點(diǎn),很容易受到外界和周圍電路的干擾從而直接影響到74HC373的輸出狀態(tài)。因此就得加上個(gè)電阻。如下圖

p0口為什么接上拉電阻

加上電阻Rc后,電路的狀態(tài)就和P1口一樣了,這個(gè)電阻Rc就是上拉電阻。

但你如果只是為了讓P0口驅(qū)動(dòng)個(gè)發(fā)光管,那電路可以直接簡(jiǎn)化成下圖那樣。S51內(nèi)部的電流最好不超過15mA,如果發(fā)光管的電壓為2.2V那電阻就是(5-2.2)÷15=0.18K,也就是180歐姆。

p0口為什么接上拉電阻

當(dāng)P0=0時(shí)P0點(diǎn)為低電位,發(fā)光管亮起,流過D1的電流約為15mA。

當(dāng)P0=1時(shí),P0點(diǎn)為懸空,但發(fā)光管和180歐電阻都是低阻抗元件,P點(diǎn)電位就為高電位,再說(shuō)也無(wú)任何輸出影響,因此這樣電路是可以的

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6026

    文章

    44455

    瀏覽量

    630875
  • 上拉電阻
    +關(guān)注

    關(guān)注

    5

    文章

    356

    瀏覽量

    30515
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    混合動(dòng)力系統(tǒng)構(gòu)型P0P4介紹

    在混合動(dòng)力技術(shù)的不斷演進(jìn)中,不同的動(dòng)力系統(tǒng)構(gòu)型為汽車工業(yè)注入了新的活力。每一種構(gòu)型都具備獨(dú)特的技術(shù)特點(diǎn)和應(yīng)用場(chǎng)景,從P0P4,本文將深入探討每種構(gòu)型的優(yōu)勢(shì)與挑戰(zhàn),為讀者提供全面而深入的了解。 1
    的頭像 發(fā)表于 09-16 12:09 ?420次閱讀
    混合動(dòng)力系統(tǒng)構(gòu)型<b class='flag-5'>P0</b>到<b class='flag-5'>P</b>4介紹

    求助,關(guān)于GPIO4和GPIO5上電阻問題求解

    無(wú)上,其他的 GPIO 均有上。 由于是內(nèi)部配置上,所以如需下拉,需外部加下拉方式或者加一個(gè)三級(jí)管的反相電路。 PS: GPIO不能到5V。 GPIO4/5外接1M
    發(fā)表于 07-19 14:06

    請(qǐng)問SMT8S003F3P的I2C模塊使用時(shí)需要外接上電阻嗎?

    SMT8S003F3P的I2C模塊使用時(shí)需要外接上電阻嗎?
    發(fā)表于 05-08 06:19

    電阻如何實(shí)現(xiàn)低功耗設(shè)計(jì)

    電阻有助于降低系統(tǒng)的總功耗,同時(shí)保持電路的功能性和穩(wěn)定性。那么上電阻如何實(shí)現(xiàn)低功耗設(shè)計(jì)呢? 以下是上
    的頭像 發(fā)表于 05-02 15:00 ?732次閱讀

    電阻的作用是什么

    電阻是一種用于保證輸入信號(hào)為預(yù)期邏輯電平的電阻元件。上電阻的作用在于通過一個(gè)串聯(lián)的電阻器將
    的頭像 發(fā)表于 05-02 14:51 ?3219次閱讀
    上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b>的作用是什么

    stm32G031串口外部不接上電阻,導(dǎo)致stm32進(jìn)入到了硬件中斷怎么解決?

    stm32G031使用串口和另一其他芯片交互,外部直連,未接上電阻,導(dǎo)致stm32進(jìn)入到了硬件中斷
    發(fā)表于 03-13 07:59

    請(qǐng)為cx3的io沒有內(nèi)部上電阻或下拉電阻嗎?

    ,CyU3PGpioSetValue,在配置參數(shù)里CyU3PGpioSimpleConfig_t的結(jié)構(gòu)里,沒有看到此io是否可以配置內(nèi)部上或下拉電阻。請(qǐng)為cx3的io沒有內(nèi)部上
    發(fā)表于 02-28 06:25

    ADUC7061設(shè)置DAC值,P0設(shè)置成GPIO和模擬輸入,為什么會(huì)報(bào)錯(cuò)呢?

    ADUC7061如果我設(shè)置DAC值,P0設(shè)置成GPIO和模擬輸入,本來(lái)是兩個(gè)互相沒關(guān)聯(lián)的功能模塊,居然會(huì)出錯(cuò)。 GP0KEY1 = 0x7; GP
    發(fā)表于 01-11 07:03

    電阻和下拉電阻的用處

    電阻和下拉電阻的用處和區(qū)別? 上電阻和下拉電阻是電子電路中常用的兩種
    的頭像 發(fā)表于 11-22 18:26 ?1616次閱讀

    什么是上電阻?P0上的上電阻有什么用?

    這次簡(jiǎn)單說(shuō)說(shuō)上電阻,那問題來(lái)了,什么是上電阻?上電阻從概念上理解就是一個(gè)
    的頭像 發(fā)表于 11-13 15:33 ?2529次閱讀
    什么是上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b>?<b class='flag-5'>P0</b><b class='flag-5'>口</b>上的上<b class='flag-5'>拉</b><b class='flag-5'>電阻</b>有什么用?

    地址送到P0P2后,程序執(zhí)行的時(shí)序是ALE的脈沖產(chǎn)生的嗎?

    地址送到P0P2后,程序執(zhí)行的時(shí)序是ALE的脈沖產(chǎn)生的嗎
    發(fā)表于 11-09 08:30

    請(qǐng)問51的P0什么時(shí)候要上電阻什么時(shí)候不需要?

    求教大神,51的P0什么時(shí)候要上電阻什么時(shí)候不需要呢?
    發(fā)表于 11-09 08:02

    請(qǐng)問51單片機(jī)的io需要上電阻嗎?

    51單片機(jī)的io需要上電阻嗎?
    發(fā)表于 11-06 06:48

    為什么51的P0是8個(gè)引腳?

    為什么51的P0是8個(gè)引腳,P1也是8個(gè)引腳,為什么都是八個(gè)引腳
    發(fā)表于 11-01 07:51

    89C51P0--P3結(jié)構(gòu)有什么不同?

    P0是開漏的,可以實(shí)現(xiàn)線與功能,可做為地址總線,可以作為地址總線的低八位,P1是普通IO(有些單片機(jī)有特殊功能比如AD,PWM),
    發(fā)表于 10-27 06:32