找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 750|回复: 7
收起左侧

51单片机检测高电平输入

[复制链接]
ID:1123034 发表于 2024-5-30 16:42 | 显示全部楼层 |阅读模式
楼主用的是stc89c52单片机,现在想用RF模块实现无线通信。当P32引脚从接收端接收到高电平(这个高电平是5V),单片机会控制后级电路完成下一个任务。
但是我发现51是默认高电平的,无法成功识别到这个高电平。请问该如何解决呢?
之前已经尝试过在代码中先置0了,以及先令引脚为1。但都没效果。
楼主是学32的,没有51的基础,望见谅。


回复

使用道具 举报

ID:1109793 发表于 2024-5-30 17:57 | 显示全部楼层
接一个下拉电阻
回复

使用道具 举报

ID:161164 发表于 2024-5-30 21:06 | 显示全部楼层
加反相器或加NPN管拉低引脚
回复

使用道具 举报

ID:65956 发表于 2024-5-31 08:22 | 显示全部楼层
加一个NPN或是光耦进行反向检测,通过这电路转换,那边输出高电平时,单片机得到的是低电平,反之,这样就可检测到相应状态了
回复

使用道具 举报

ID:823831 发表于 2024-5-31 10:43 | 显示全部楼层
代码中置0置1没效果,说明程序对这个引脚没有配置到位,是否有初始化?
回复

使用道具 举报

ID:1080935 发表于 2024-5-31 16:50 | 显示全部楼层
看看逻辑是不是对的,模块的输出是不是正常,如果不对端口初始化,默认情况单片机的IO是可以被外界影响改变的,也就是说P32不做初始化是准双向,模块给他高他就是高,模块给他是低他就是低。
回复

使用道具 举报

ID:402383 发表于 2024-6-1 09:26 | 显示全部楼层
stc89c52单片机上电默认I/O口高电平;解决办法之一是:增加下拉电阻,1K-4.7K左右。
回复

使用道具 举报

ID:517951 发表于 2024-6-1 10:43 | 显示全部楼层
设置STC51单片机的IO口为准双向口, 输出IO=1, 然后就能读IO口的高低电平了.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表