- 打卡等级:初来乍到
- 打卡总天数:4
- 最近打卡:2024-10-01 12:44:17
注册会员
- 积分
- 196
|
本帖最后由 电子芯 于 2023-10-31 13:53 编辑
电路如下,扫描按键有效店铺为低电平。到底要设置IO口为什么模式才可以。
不是说默认内部上拉了吗,通过示波器看按键波形根本不是高低电平切换,乱得很。
但是如果外接上拉电阻就OK,不是内部上拉了吗??????????
这是按键的扫描代码,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); //初始化
不管什么模式,都不能实现按键的功能。要嘛就是按键没反应,要嘛就是不按都一直有反应。
求解,感谢感谢
|
|