線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:3337
推到 Plurk!
推到 Facebook!

8051邏輯準位的問題

答題得分者是:ScottWang
scott123
中階會員


發表:19
回覆:66
積分:52
註冊:2011-08-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-09-07 20:29:02 IP:114.41.xxx.xxx 訂閱
8051邏輯準位的問題
請問8051多少伏特以上算high呢
多少以下算low呢

我現在有一個device 它在某種狀態下會hi變lo
我去量真的也是0伏特
可是我接到51的port1.x,設定為輸入去讀取之後,它還是有2伏特
我51去判斷這一個電壓為hi(照成誤判)

請問有沒有什麼方法可以解決
我目前想到用npn或pnp電晶體當開關來解決看行不行得通
不知道還有什麼方法
我知道有pull high,不知 道有沒有pull down??這一種電路
ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2011-09-12 01:47:33 IP:59.115.xxx.xxx 訂閱
>8051邏輯準位的問題
>請問8051多少伏特以上算high呢
>多少以下算low呢

1. 你可以參考74HC14.
http://www.datasheetcatalog.org/datasheet/philips/74HC_HCT14_CNV_2.pdf

2. 用一個0~5V的電壓,去實測你的8051 Port輸入,看看多少V轉態.
>我現在有一個device 它在某種狀態下會hi變lo
>我去量真的也是0伏特
>可是我接到51的port1.x,設定為輸入去讀取之後,它還是有2伏特
>我51去判斷這一個電壓為hi(照成誤判)

你可否說明一下,你是如何測量的,整個硬體和軟體程序為何,為何實際0V會測有2V的電壓?

當51的Port做為輸入時,要先輸出1到輸入Port,然後才能做讀入的動作,你是否有這樣做?

------
高壓直流電源供應器,高壓模組,測試LED專用AC LED定電流源,全範圍可調電壓電流,
中低壓直流電源供應器,電壓放大器,電流放大器,帶通濾波器,高精度參考電壓,
標準電壓,恆流源(定電流源),恆壓源(定電壓源),大電流電源供應器.
接受訂製,設計生產各種特殊規格,高精度產品,學校實驗室,研究單位實驗設備,
另可接受其它電子專案設計,HV Power,Vmax=20KV,Imax=2000A.
http://hvpower.myweb.hinet.net/
scott123
中階會員


發表:19
回覆:66
積分:52
註冊:2011-08-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-09-14 12:32:54 IP:203.73.xxx.xxx 訂閱

你可否說明一下,你是如何測量的,整個硬體和軟體程序為何,為何實際0V會測有2V的電壓?

當51的Port做為輸入時,要先輸出1到輸入Port,然後才能做讀入的動作,你是否有這樣做?



我先把8051的gnd和我的device gnd接在一起,這時後我device輸出port還沒接到8051
我去量的時後,為0伏特,然後我把device的輸出接到8051去判讀,怎麼沒動作,結果去量,變成了2伏特
這就是我訥悶的地方,why。我在猜,可能是內部阻抗的問題,可能??????

ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2011-09-14 14:22:15 IP:59.115.xxx.xxx 訂閱
如果你原來量Port為0V,接上device後變成2V,應該是你的device將電壓提升,這個要先查查你的device輸入端的電路.

前面提問 : 當51的Port做為輸入時,要先輸出1到輸入Port,然後才能做讀入的動作,你是否有這樣做?



===================引 用 scott123 文 章===================
我先把8051的gnd和我的device gnd接在一起,這時後我device輸出port還沒接到8051
我去量的時後,為0伏特,然後我把device的輸出接到8051去判讀,怎麼沒動作,結果去量,變成了2伏特
這就是我訥悶的地方,why。我在猜,可能是內部阻抗的問題,可能??????

------
高壓直流電源供應器,高壓模組,測試LED專用AC LED定電流源,全範圍可調電壓電流,
中低壓直流電源供應器,電壓放大器,電流放大器,帶通濾波器,高精度參考電壓,
標準電壓,恆流源(定電流源),恆壓源(定電壓源),大電流電源供應器.
接受訂製,設計生產各種特殊規格,高精度產品,學校實驗室,研究單位實驗設備,
另可接受其它電子專案設計,HV Power,Vmax=20KV,Imax=2000A.
http://hvpower.myweb.hinet.net/
編輯記錄
ScottWang 重新編輯於 2011-09-14 00:29:35, 註解 改錯別字‧
scott123
中階會員


發表:19
回覆:66
積分:52
註冊:2011-08-11

發送簡訊給我
#5 引用回覆 回覆 發表時間:2011-09-15 12:11:03 IP:203.73.xxx.xxx 訂閱

===================引 用 ScottWang 文 章===================
如果你原來量Port為0V,接上device後變成2V,應該是你的device將電壓提升,這個要先查查你的device輸入端的電路.

前面提問 : 當51的Port做為輸入時,要先輸出1到輸入Port,然後才能做讀入的動作,你是否有這樣做?


沒有,剛好相反,我是量device是0V,接上51的port之後量變2V

有,我有先設定1為輸入
ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2011-09-15 13:00:06 IP:218.161.xxx.xxx 訂閱
你在8051的Port和device之間,分別串接100Ω,470Ω,1KΩ,4.7KΩ,再去分別測量兩邊的電壓.
若無適合的電阻,可以用VR 5K或 10K去調,接上後再測.
------
高壓直流電源供應器,高壓模組,測試LED專用AC LED定電流源,全範圍可調電壓電流,
中低壓直流電源供應器,電壓放大器,電流放大器,帶通濾波器,高精度參考電壓,
標準電壓,恆流源(定電流源),恆壓源(定電壓源),大電流電源供應器.
接受訂製,設計生產各種特殊規格,高精度產品,學校實驗室,研究單位實驗設備,
另可接受其它電子專案設計,HV Power,Vmax=20KV,Imax=2000A.
http://hvpower.myweb.hinet.net/
scott123
中階會員


發表:19
回覆:66
積分:52
註冊:2011-08-11

發送簡訊給我
#7 引用回覆 回覆 發表時間:2011-09-15 21:06:58 IP:118.170.xxx.xxx 訂閱
所以s大認為可能是輸入阻抗的問題

嗯,明天試

不過我找到了解決辦法,用一個pnp電晶體當成開關來切換

但是我還是會把結果報告上來
kib72377
高階會員


發表:1
回覆:217
積分:238
註冊:2004-11-12

發送簡訊給我
#8 引用回覆 回覆 發表時間:2011-09-16 08:37:56 IP:125.233.xxx.xxx 未訂閱
51t的port:
Port 0 is an 8-bit open-drain bi-directional I/O port.
Port 1 is an 8-bit bi-directional I/O port with internal pullups
Port 2 is an 8-bit bi-directional I/O port with internal pullups
Port 3 is an 8-bit bi-directional I/O port with internal pullups

ScottWang
版主


發表:32
回覆:486
積分:688
註冊:2009-04-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2011-09-16 12:13:41 IP:218.161.xxx.xxx 訂閱
有辦法自行解決,當然是好事.
加了電晶體產生了隔離效果,因此你說的可能是阻抗的問題消失了.
你可以試試用Port 0,看看有沒有這個問題.

89S52內部 I/O Port結構圖.
http://www.ikalogic.com/part-3-basic-inputoutput-operations/
http://ikalogic.cluster006.ovh.net/wp-content/uploads/pin.jpg


因為8051之類的MCU,其內部有提升電阻,但是為了做雙向,所以在I/O端,並沒用Hi,Lo都有推動輸出的結構,也就是只做Lo單邊的推動,Hi的電壓位準是以電阻來代替.

CMOS IC 內部Hi,Lo都有推動輸出,page 7,
http://www.ti.com/lit/an/scla011/scla011.pdf

以下是我的推論:

而你的device可能是以PNP做Hi輸出,Lo的部份則以電阻接地,這也是以單邊推動的方式,所以當其輸出Lo時,仍存有接地的內阻,而這個內阻與8051的I/O Port的Hi內阻,行成一個分壓狀態,所以當兩個接在一起時,才會有2V電壓的產生.

Device 輸出Lo,電阻接地 → 8051 I/O Port 輸出Hi時,提升電阻拉為Hi → 因為分壓而有2V的電壓產生.

另外前面提到的MCU邏輯準位問題,原先我是想說用74HC14,其實應該用74HC04會較準,因為常用74HC14習慣了,忘了它不能當做一般的邏輯準位.

看以下資料可能更清楚.
The voltage of the Logic's level.
http://www.interfacebus.com/voltage_threshold.html
------
高壓直流電源供應器,高壓模組,測試LED專用AC LED定電流源,全範圍可調電壓電流,
中低壓直流電源供應器,電壓放大器,電流放大器,帶通濾波器,高精度參考電壓,
標準電壓,恆流源(定電流源),恆壓源(定電壓源),大電流電源供應器.
接受訂製,設計生產各種特殊規格,高精度產品,學校實驗室,研究單位實驗設備,
另可接受其它電子專案設計,HV Power,Vmax=20KV,Imax=2000A.
http://hvpower.myweb.hinet.net/
編輯記錄
ScottWang 重新編輯於 2011-09-15 22:15:15, 註解 無‧
ScottWang 重新編輯於 2012-05-20 17:20:39, 註解 修補89S52內部 I/O Port結構圖死連結.‧
scott123
中階會員


發表:19
回覆:66
積分:52
註冊:2011-08-11

發送簡訊給我
#10 引用回覆 回覆 發表時間:2011-09-20 16:19:13 IP:203.73.xxx.xxx 訂閱
我在device和8051 port中間串了一個電阻,還是一樣結果
我在猜 應該跟s大說的一樣
device的port內部應該也有電阻,所以輸出為0的時後,剛好跟8051的提升電阻變成分壓

系統時間:2024-04-20 16:44:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!