數字晶片GPIO一般分為推挽輸出和開漏輸出
數字晶片GPIO一般是推挽輸出(PUSH-PULL),其内部結構如下:
當上面的MOS管導通時,GPIO輸出高電平1,稱為“推”
當下面MOS管導通時,GPIO輸出低電平0,稱為“挽”
TTL也可以構成推挽結構
推挽輸出優缺點
優點:
1.輸出高低電平與電源電壓基本沒有壓差;
2.高低電平驅動能力較強,一般數字晶片推挽
3.輸出IO口驅動電流最大可到20mA;
4.電平切換速度快。
缺點:
不支援線與
線與是指兩個輸出接在一起:
推挽輸出兩個IO如果接在一起可能一個IO上面的MOS導通,另一個IO下面的MOS管導通,這樣會損壞晶片
而推挽輸出的GPIO内部結構如下
當MOS管導通時,輸出為低電平0
當MOS管關閉時,輸出為高阻态
是以為了使開漏輸出有高電平的輸出能力,我們一般需要在外圍加上拉電阻
開漏輸出優缺點
優點:
1.可實作電平轉換,輸出電平取決于上拉電阻電源;
2.可以實作IO的線與;
缺點:
1.高電平驅動能力差,取決于外部上拉電阻;
2.電平切換速率取決于外部上拉電阻,
電阻越小速度越快;
開漏輸出最大的優點就是可以實作線與,兩個開漏輸出的IO口可以接在一起,當有一個IO為低電平時,其輸出就為低電平,隻有當兩個IO全部為高電平時,輸出才為高電平。