51上拉電阻(P1)的由來


目錄

一、HMOS型MCS-51單片機P1口

  (1)P1作為普通I/O發送0數據時

  (2)P1作為普通I/O發送1數據時

   (3)總結

二、CHMOS型MCS-51單片機P1口

  (1)P1作為普通I/O發送數據0時

  (2)P1作為普通I/O發送數據1時

  (3)P1作為普通I/O接收數據0

  (4)P1作為普通I/O接收數據1

一、HMOS型MCS-51單片機P1口

Q1和Q2均為N型增強型MOS管,Vg-s>0時管子導通,Vg-s=0時管子截止,圖中Q1源極串聯Q2漏極。

Q3為耗盡型nMOS管,Vg-s>Voff  (Voff 為夾斷電壓,小於0)  ,管子導通,當Vg-s>=0時,Is>=Idss >0;

對於Is和Idss看不懂的小伙伴要補一補模電呀 嘻嘻。

(1)作為普通I/O發送0數據時:

當想往引腳外部發送數據0時,數據先到達鎖存器使得鎖存器=1, 圖中

 

 

 為D點處;這時Q2管導通,端口引腳被拉低接地,此時外部端口引腳即為輸出0數據,跟內部想要發送的0數據一致;

Q3耗盡管nMOS的柵極與源極電平相等,也即電壓差Vg-s=0,管子導通,但是源極接地了,所以對端口引腳沒啥影響;

或非門輸出點C處等於0(圖中),使得Q1管截止;

(2)作為普通I/O發送1數據時:

當想往引腳外部發送數據1時,=0,Q2的柵極處迅速等於0,Q2截止;但是,由於延時線和反相器的影響,數據在2個震盪器周期內或非門的上端輸入並沒有刷新數據,A點保持上一次數據,即A=0,或非門的兩輸入端均為0使得或非門的輸出點C=1;此時Q1管導通,Vcc迅速接到端口引腳,即此時端口引腳為1;

此時Q3管的柵極和源極電壓差為0,Q3管導通,但由於Q2截止,Q1導通迅速從0提高Q1源極的電壓到達VCC,Q3管此時也導通,端口引腳數據已經由0變為VCC;

 等2個震盪器周期的時間過了之后,數據終於刷新了,=0的數據終於到達反相器,取反后輸入到或非門,此時或非門的上端輸入為1,下端輸入為0,所以或非門輸出點C=0,Q1截止,但是Q3的導通狀態並沒有停止,因為Q3的柵極電壓並沒有那么快下降,這使得Q3的柵極減去源極電壓的壓差仍然為VCC-VCC=0, 又因為Q3的源極又迅速源源不斷補充Q3的柵極,所以Q1就算截止撤去,端口引腳仍然等於1; (這有點類似電流鏡像的原理)

由此,內部發送的數據1經過一系列流通后,端口引腳處也輸出了1;

(3)總結:

  從(2)看出,P1輸出1時,外部的端口引腳並不需要人為加  上拉電阻  也具有輸出1的能力,表明P1內部具有上拉功能,而內部上拉電阻就是Q3提供,為20KΩ~40KΩ

二、CHMOS型MCS-51單片機P1口

 P1、P2、P3均為P溝道增強型MOS管,當正邏輯1加到P溝道增強型MOS管的柵極時,管子截止;記 P1、P2、P3為pFET1、pFET2、pFET3;

N為N溝道增強型MOS管,當正邏輯1加到N溝道增強型MOS管的柵極時,管子導通;記N為nFET;

(1)P1作為普通I/O發送數據0時:

設原始穩定狀態下,端口上的數據為0,即端口引腳應該為0,那么內部穩定狀態下的0數據在內部如何往外部引腳流通使得外部端口引腳也保持為0?

內部發送的0數據到達鎖存器變為1,即圖中D=1,

nFET導通,pFET2截止,端口引腳短接到nFET的源級地,即端口引腳的數據為0;

端口引腳0經過反相器到達pFET3,此時pFET3的柵極變為1,pFET3截止;

=1經過反相器、或門並最終使得反相器的輸出點C出為1,pFET1截止;  此時A=0,B=1, C=1,pFET1截止;

所以,發送0時,端口引腳上的數據也為0.

(2)P1作為普通I/O發送數據1時:

在平時,總是保持穩定輸出0,即端口引腳總是保持0,此刻當要往外部發送1數據時,數據由0翻轉為1;

所以內部數據1到達鎖存器后,=0,圖中D處即為

nFET截止,pFET2導通,pFET2源極等於1,端口引腳也等於1,端口引腳1數據經反相器到達nFET3的柵極電壓為0,所以nFET3導通,VCC又經過nFET3加到端口引腳上,所以端口引腳仍然是1,輸出電流非常強;

但是,在這2個振盪器周期內,或門的上端輸入端A點仍未刷新,即=0時本該有A=1,但是此刻A仍為0,所以或門上端輸入0、下端輸入0使得或門的輸出點C=0,pFET1導通;

這樣,pFET1、pFET2、pFET3全部導通使得端口引腳快速上升到高電平;

其實pFET2導通時,端口引腳並不是一下子就上升到VCC,而是緩慢升起,當端口引腳升到2V以上時,才認為是高電平,把這高電平經反相器轉換到達pFET3柵極變成低電平,pFET3這才導通。而pFET1加速了端口引腳的電壓上升速度

接着講,

當2個震盪器周期過了之后,或門的上端輸入端A處開始刷新數據,此刻,A=1;=0;或門的下端輸入點B=0,或門的端輸出C=1;所以pFET1截止,相當撤去pFET1;

最后,為端口引腳提供數據1的只剩下pFET2和pFET3,而pFET3又是最主要的,pFET2只提供輔助小的電流,pFET1只是起到pFET3加快導通的作用。

所以,P1的內部上拉就是這么得來,而且是針對發送數據1的情況下。

(3)P1作為普通I/O接收數據0:

當51作為接收模式的時候,仍然需要預先從51內部往外部引腳發送1數據,使得端口引腳保持上面的發送1數據模式狀態,當外部設備發送一個低電平給51的時候,端口引腳上的電平變為低電平,此時端口引腳的低電平(低於2V以下)通過反相器后使得pFET3截止,而端口引腳的低電平經過兩個反相器輸入到單片機內部完成51的讀操作。

pFET3截止,導致大電流不會流給外部設備造成損壞,而pFET2雖然還保持內部上拉作用,並對外部設備輸出1,但是對51單片機的讀操作沒影響,pFET2的電流非常小(弱上拉)被外部設備拉低,pFET2的小電流流入外部設備因為太小也不會造成外部設備的損壞。所以51內部讀到外部設備數據也將為0;

(4)P1作為普通I/O接收數據1:

當51作為接收模式的時候,內部仍然預先發送1;

此刻,外部設備給端口引腳一個高電平,送到51內部,這沒什么問題,但是假如外部設備是由0變1給端口引腳,此刻pFET2導通,pFET3還在截止(端口電壓沒上升到2V以上的原因),由於外部設備高電平的上升電壓過慢時,pFET2給端口引腳提供的從0到1電壓的上升過程非常慢,這就導致51內部讀取外部設備有延遲。

當端口引腳的電壓上升到2V以上后,pFET3重新導通,大電流的pFET3加速了端口引腳的的電壓的上升速度,把延遲降低;而外部設備的電流是輸出的,和pFET3的大電流一同輸入到51內部,所以對外部設備沒影響,

側面來看,當作為51輸入模式時,應該格外注意外部設備的電流,過大會燒壞51芯片


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM