欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8833|回復: 8
收起左側

51單片機讀i/o口前為什么要先輸入高電平?

[復制鏈接]
ID:613277 發表于 2019-10-8 22:07 | 顯示全部樓層 |閱讀模式
如題
回復

使用道具 舉報

ID:235200 發表于 2019-10-9 07:31 | 顯示全部樓層
因為單片機IO口數據出進是兩條通道,輸出時門是趟開的,輸入時需把另一通首的門打開才可以進去,打開門的方式是先向端口輸出高電平(使端口場效應管關斷)
回復

使用道具 舉報

ID:65956 發表于 2019-10-9 08:14 | 顯示全部樓層
沒這回事吧,讀IO口狀態就是讀就好了,沒有必要先輸入高電平,如果輸入了那還讀他作什么,因為你已經知道它是高電平了
回復

使用道具 舉報

ID:94031 發表于 2019-10-9 08:28 | 顯示全部樓層
這是51單片機i/o口結構決定的。
回復

使用道具 舉報

ID:620877 發表于 2019-10-9 09:13 | 顯示全部樓層
必須先輸出高電平,把輸出驅動電路的場效應管截止,使口線引腳被內部的上拉電阻拉為高電平。其后,若輸入為高,則引腳維持高電平;若輸入為低,引腳被下拉為低電平。讀引腳才能保證正確。
回復

使用道具 舉報

ID:123289 發表于 2019-10-9 16:09 | 顯示全部樓層
51的IO口是復用的(輸入輸出),
如果輸出=1,這時你輸入=0,1會被拉成0,這樣讀到的是0。不錯。
如果輸出=0,這時你輸入=1,1是出不來的,會被原來的0拉低,這樣讀至的只能是0。出錯了。

評分

參與人數 1黑幣 +9 收起 理由
laopihappy123 + 9 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

ID:524818 發表于 2019-10-11 12:14 | 顯示全部樓層
4樓正解:
必須先輸出高電平,把輸出驅動電路的場效應管截止,使口線引腳被內部的上拉電阻拉為高電平。其后,若輸入為高,則引腳維持高電平;若輸入為低,引腳被下拉為低電平。讀引腳才能保證正確
回復

使用道具 舉報

ID:405193 發表于 2019-10-11 18:17 | 顯示全部樓層
我也謝謝各位師傅,我也發現這個問題,在STC單片機里,IO口設置雙向模式,開始賦值低電平0無效,設置成推挽模式就可以,開始設置低電平O就有效。現在明白了,謝謝大家。
回復

使用道具 舉報

ID:622801 發表于 2019-10-12 11:51 | 顯示全部樓層
通常作輸入時,要選置1,但單片機上電后,默認的是置1的,只要你不是做出其它用,再做輸入,就不用置1了。但為保險起見,多置一次1,沒有關系。      作輸出時,不用管它,直接用就行了。    當然這是基本的51,有的增強型的,就不一定了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表