标题: STC89C52RC单片机P0口设置输出模式,求解答! [打印本页]

作者: 达菲奇    时间: 2017-8-25 13:46
标题: STC89C52RC单片机P0口设置输出模式,求解答!
用触摸模块3.6V输入到单片机P1脚,至高电平控制P0口的LED亮灭,P0口有10K上拉电阻。然而。
LED共阳极,低电平点亮时。
当控制P0口由高电平至低电平时,电压由4.9V,降到3.8V。(共阳极5V,LED不亮,有些微亮。)

修改电路
LED共阴极,高电平点亮时。
当控制P0口由低电平至高电平时,电压由0V,升到1.2V。(共阴极接地,LED不亮。)

看STC89C52RC单片机用户手册
P0口上电复位后是开漏输出,当P0管脚作IO口时,需要外加10K—4.7K的电阻,当P0口管教做为地址/数据复用线使用时,不用加外加电阻。
和开漏输出有关吗?怎么换成推挽或者高阻输出?

IMG_20170823_084955.jpg (1.83 MB, 下载次数: 168)

IMG_20170823_084955.jpg

作者: 达菲奇    时间: 2017-8-25 14:08
人呢,求解!!!
作者: ahshmj    时间: 2017-8-25 16:53
看着你的文字描述真的很费劲。电路图呢?
作者: 达菲奇    时间: 2017-8-25 17:06
ahshmj 发表于 2017-8-25 16:53
看着你的文字描述真的很费劲。电路图呢?

单片机接led,还需要电路图吗?
作者: yzwzfyz    时间: 2017-8-25 23:27
达菲奇 发表于 2017-8-25 17:06
单片机接led,还需要电路图吗?

楼主:既然你认为简单,不要电路图,为何提出这个问题呢?
自己搞不定,别人想帮你,要个图看看,你看应当如何处理呢?
作者: 达菲奇    时间: 2017-8-26 08:44
yzwzfyz 发表于 2017-8-25 23:27
楼主:既然你认为简单,不要电路图,为何提出这个问题呢?
自己搞不定,别人想帮你,要个图看看,你看应 ...

“工程师”能看看问题?我文字描述已经很清楚了,要是我描述的你都懒得想象,绕道吧
作者: SKYLAR123    时间: 2019-11-8 11:20
P0M0P0M1设置模式10输入仅为高阻,11开漏,01推挽,00准双向
作者: mengzhixinheng    时间: 2019-11-8 11:56
很老的芯片,没推挽功能
作者: CZ1    时间: 2019-11-8 12:21
这款芯片没那么强大只是入门的而已,设置不了I/O口的,还是使用上拉电阻吧
作者: lyl44    时间: 2020-2-15 16:26
p0置1就是高阻输入,但高阻不能输出电流。置0时,电压3.8不正常,检查硬件连接。
作者: da莫寒    时间: 2020-3-8 18:43
用三极管扩流啊
作者: cjamking    时间: 2020-3-8 20:36
寄存器P0M0、P0M1设置P0口的模式:
10高阻仅输入,
11开漏,
01推挽,
00准双向
作者: 一只小龙猫    时间: 2020-3-9 10:05
P0没这功能,硬件上串电阻解决吧
作者: xianming    时间: 2020-3-9 12:31
你好。
1.STC89不能改IO模式。
2.高阻状态无法输出,电流既不能输入,也不能输出。
3.LED如果太暗可以加三极管放大电路。
4.STC单片机下拉能力比上拉能力强,所以LED用共阳比较好。
作者: adject    时间: 2020-3-9 14:15
一般51的单片机io驱动led 都采用灌电流
作者: lmn2005    时间: 2022-2-9 10:36
我看遍了STC89C52RC的芯片手册和STC烧录软件自带的STC89Cxx头文件,根本没有寄存器P0M0、P0M1,所以无法设置其工作模式。
作者: phzpwq    时间: 2022-3-25 20:47
开漏输出口灌电流10mA, 点亮led应该没问题 ,是不是led串的电阻太大了?
作者: zoui546812    时间: 2023-5-24 14:03
如果你的LED上没有加限流电阻,因为LED特性的原因,输出P0会与LED产生分压,所以你检测的电压是对的,想让LED正常你先确认LED电流多大及LED分压电压,用5V减去分压除以电流计算限流电阻,上接电阻建议用10K的,
作者: coody_sz    时间: 2023-5-24 14:43
STC89C52RC是老内核MCU,IO固定不可设置,P0口是开漏输出,输出高电平就是高阻,其余IO都是准双向口。
换STC8、STC32G系列吧。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1