找回密码
 立即注册
查看: 962|回复: 4

关于STC15无法实现独立按键扫描的问题

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2024-10-01 12:44:17

17

主题

37

回帖

196

积分

注册会员

积分
196
发表于 2023-10-31 13:45:39 | 显示全部楼层 |阅读模式
本帖最后由 电子芯 于 2023-10-31 13:53 编辑

电路如下,扫描按键有效店铺为低电平。到底要设置IO口为什么模式才可以。
不是说默认内部上拉了吗,通过示波器看按键波形根本不是高低电平切换,乱得很。
但是如果外接上拉电阻就OK,不是内部上拉了吗??????????
截图202310311343067883.jpg

这是按键的扫描代码,P55是一颗LED灯

if(P23==0)
{
        delay_ms(250);
        P55=~P55;
        while(P23==0);
}

这是IO口初始化代码

GPIO_InitTypeDef        GPIO_InitStructure;                //结构定义
GPIO_InitStructure.Pin  = GPIO_Pin_All;                //指定要初始化的IO, GPIO_Pin_0 ~ GPIO_Pin_7, 或操作
GPIO_InitStructure.Mode = GPIO_HighZ;                //指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PP
GPIO_Inilize(GPIO_P2,&GPIO_InitStructure);        //初始化


不管什么模式,都不能实现按键的功能。要嘛就是按键没反应,要嘛就是不按都一直有反应。
求解,感谢感谢


回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2023-10-31 19:41:25 | 显示全部楼层
用准双向口,
你如用高阻输入,要加上拉电阻
===否则浮空就是忽高忽低
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:135
  • 最近打卡:2024-12-25 10:15:05

47

主题

1350

回帖

8058

积分

荣誉版主

冲哥视频教程和各种开源资料QQ交流群884047237,可群

积分
8058
QQ
发表于 2023-11-8 13:23:51 | 显示全部楼层
内部有上拉电阻,但是要通过一个寄存器打开,默认为高阻输入,浮空,状态不定。简单点的话直接配置为准双向口
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2024-10-01 12:44:17

17

主题

37

回帖

196

积分

注册会员

积分
196
发表于 2023-11-23 18:11:58 | 显示全部楼层
电子DI*** 发表于 2023-11-8 13:23
内部有上拉电阻,但是要通过一个寄存器打开,默认为高阻输入,浮空,状态不定。简单点的话直接配置为准双向 ...

是的,最后用双向口做的
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:518
  • 最近打卡:2025-05-01 05:52:49
已绑定手机

46

主题

1694

回帖

2540

积分

金牌会员

积分
2540
发表于 2023-12-1 21:34:49 | 显示全部楼层
准双向口就可以了,现在一般默认是高阻
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 04:11 , Processed in 0.133950 second(s), 80 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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