51微控制器怎麼識別高電平,51微控制器怎麼識別乙個高電平?

時間 2022-06-08 22:55:12

1樓:匿名使用者

首先確認在p21已經有上拉為高的情況下,接在339輸出口,是不是為低,然後讓339為高後,p21口是否為高,用表測下,再寫程式。 p2=0,是不能這樣寫的,做為輸入口,之前都得送1。除非可用沒有內部上接的p0口,做這些,硬體狀態很重要,先確認339一定有輸出哦。

2樓:

首先,你要確定輸入到微控制器引腳的電平是高電平或低電平(用萬用表可以測得),然後確定微控制器在執行狀態(這個你可以寫乙個閃燈程式確認微控制器能執行).確定了這兩步再輸入以上程式應該沒有問題

3樓:超齡x學生

你這樣寫程式,p2.0接收不到訊號的,p2口用做輸入口前,應該先賦值ff才行,用個非門,把訊號改成當a==0時,執行下一步。你試試,我沒試

4樓:匿名使用者

有可能是你輸入的電壓不夠,微控制器識別2v以上才認為是高電平

微控制器識別高電平最低需要多少伏

5樓:匿名使用者

可以使用開關三極體或者光耦或者使用ttl轉cmos電平晶元(如14504 不過驅動能力很差)~ 上面的說得很對·ttl電平是這個樣子

看你拉高電壓做什麼用了~

6樓:匿名使用者

微控制器採用的是ttl電平,標準ttl輸入高電平最小2v,輸出高電平最小2.4v,典型值3.4v,輸入低電平最大0.

8v,輸出低電平最大0.4v,典型值0.2v。

各個廠家生產的器件會有一些差異,高低電平的極限值會在標準值附近有一定的浮動。

直接在io口加上拉電阻,就可以拉高吧。

51微控制器 如何檢測某個引腳是否為高低電平 求乙個c源程式例項

7樓:匿名使用者

用led指示引腳狀態。要求:乙個51最小系統版,乙個led,乙個1k~10k的電阻(4.7k)。專

+5v電源接到led的正極,串聯乙個屬4.7k電阻,接到微控制器的引腳上(如p0.1口)。

該電路功能:當微控制器輸出低電平時,小燈亮;微控制器輸出高電平時,小燈不亮。程式設計序觀察現象。

程式:void main()

while(1)

}你若想單純的去檢測正在執行微控制器的io口的電平狀態的話,直接用led接到該io口觀察led的狀態即可。如果事先知道該io口的電平時固定的,拿更好辦了,直接用萬用表測。

8樓:匿名使用者

sibt p1.1=p1^1;

void main()

9樓:

判斷埠是1還是0.

51微控制器如何檢測高電平輸入?

10樓:做而論道

51微控制器,把引腳設定為輸入狀態,方法就是輸出乙個1。

這是微控制器的設計者、生產廠家所規定的。

在這個前提下,外界,只有輸入低電平,才會改變引腳的狀態。

輸入高電平,是沒有反應的。

如果,外設,一定要送來高電平,那就必須加上乙個反相器,再連線到微控制器的引腳。

11樓:

這個電路和功能是可以實現的

c2放完電p1.0,p1.1,p1.2處為低電平p1.0,p1.1,p1.2拉高後,由於51微控制器拉高電流只有200多微安

通過電阻給電容充電很緩慢(r1,rt,rk,c都要選稍大值),不會一下就變為高電平的

所以是可以測到時間t1和t2的

12樓:17我小時候很帥

把引腳設定為輸入狀態,輸出乙個1就行。這是微控制器的設計者、生產廠家所規定的。

在這個前提下,外界,只有輸入低電平,才會改變引腳的狀態;輸入高電平,是沒有反應的。如果,外設一定要送來高電平,那就必須加上乙個反相器,再連線到微控制器的引腳即可。

13樓:匿名使用者

你的想法比較奇特?

理論上說可以實現,但是實際過程中,p1.0 口的高電平能拉高 p1.1、p1.2 口嗎

這個只能靠實際硬體電路來驗證了!!

14樓:匿名使用者

電壓表或者示波器測量引腳電壓

15樓:小巫冬天不太冷

你加了反相器能實現嗎

51微控制器引腳檢測高電平輸入的問題

16樓:做而論道

在網上看到這樣bai的一句

du話 「51微控制器的i/o 口檢測高低電zhi平是需要首dao先讓該埠置為內1的。此時容這個引腳才被設定為輸入」,

--正確。

也就是說如果上面的設計可以做到的話,那麼就需要一開始的時候給高電平嗎?

--必須先給埠置一。

--你的電路,是做不到的。

--你的電路,按鍵、不按鍵,送到引腳的訊號,都是高電平。

--你的電路,設計的不對,不符合微控制器的特點。

--按鍵,另一端,應該接地。

17樓:匿名使用者

51微控制器的引腳檢測到各個引腳的電壓高於1.8v就認為是有高電平輸入,低於0.7v就認為是低電平輸入,在0.7~1.8v之間,是乙個未知區域,既不是高電平也不是低電平。

18樓:匿名使用者

51微控制器引腳檢測高電平輸入的問題,是什麼問題?看不見,怎麼回答?

19樓:匿名使用者

設計存在缺陷:復「51微控制器的制i/o 口檢測高低電平是需要首先讓該埠置為1的。此時這個引腳才被設定為輸入」 正確,此操作在io口初始化時設定;但是你的電路圖,讀取的始終為「1」;原因:

當設定為輸入時,微控制器內部有上啦電阻,把其io口引腳拉高;

改進:io口連線一下拉電阻 6.8k~10k之間即可

20樓:

大家常用的是,按鍵一端接地,另一端接io口 檢測,檢測端加上拉電阻。

21樓:匿名使用者

微控制器baiio與外部相連是線與的du關係,所以你的方法不行。單zhi

片機io口為高的時候你

dao讀取內的相應io口電平才是外部電平。

容如果你把相應io口置0,無論外部是0或1你讀取的永遠是0。所以你只有把io口置1,判斷if( p1^6==0)才能判斷是否鍵按下(當然你的按鍵得接地)。

51微控制器怎麼讀取p0,p1口的值,是要先給乙個高電平才能讀取嗎?c程式怎麼寫?

22樓:匿名使用者

為了保險一般需要先給送乙個「高」,再讀取io口,這是針對那些沒有加上拉電阻的io口而採取的辦法,如果加了上拉電阻,是不用這麼麻煩的,可以直接讀取io口的值。

uncsigned char dat0,dat1;

//p0=0xff;p1=0xff;

dat0=p0;

dat1=p1;

23樓:

是的可以先在初始化寫一句

p1=1;

就可以讀了

p0記得接上拉電阻

51微控制器中ACC怎麼用,51微控制器中ACC怎麼用??

a和acc的實質是一樣的,對應位址都是0e0h,只是彙編在使用時,在格式上取了兩個名字。你看看它們的使用方法,有的地方用a,有的地方用acc,會發現有一定的規律。當其要進行位表示時,必須用acc,比如要寫成acc.7,而不能寫成a.7 但當其作為8位二進位制數時,acc和a都能用 但還是有區別 比如...

51微控制器裡TMOD設定問題,51微控制器裡TMOD設定問題

問題1 工作方式0 0x00 工作方式1 0x01 工作方式2 0x02 工作方式3 0x03 問題2 當你選擇好工作方式後,接下來就是設定初始值,方式0 16位加法計數器用了13位,也就是說,可以計算2 13 要想計數更大,使用迴圈即可。同理方式1 16位加法計數器用了16位,方式2是8位的。以上...

51微控制器按鍵怎麼才能不打斷,51微控制器按鍵怎麼才能不打斷IO

我建議一種按鍵的寫法,不需要延時來消抖。不過請注意,這種寫法造成的後果是,例如在設定電子時鐘的時間加減時,你按下按鍵,無論按多久,只有在你鬆開手之後,對應的資料才加 減1.這樣寫 if key 0 另外就是,可以用外部中斷來觸發操作,接法一般是這樣 key1 io p10 key2 io p11 k...