OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5687|回复: 4

STM32F103ZET6的WK_UP按键能控制led灯灭么

[复制链接]

5

主题

20

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2022-8-25
在线时间
7 小时
发表于 2023-3-9 11:51:38 | 显示全部楼层 |阅读模式
板子是F103ZET6,用cubMX生成的代码,KEY0按键可以控制led1亮灭,KEY1按键可以控制led0,亮灭,想设置WK_UP键控制两个灯灭,结果没反应PA0口设置的下拉

#define key1 HAL_GPIO_ReadPin(GPIOE,GPIO_PIN_3)
#define key0 HAL_GPIO_ReadPin(GPIOE,GPIO_PIN_4)
#define WK_UP HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0)

void Scan_key()//按键扫描
{
        if(key1 == 0)
        {
                Delay(1000);
                if(key1 == 0)
                {
                        HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
                        while(key1 == 0);//等待按键松下,按键不松开,程序一直停留在上一行反转状态保持不变
                }
        }
        if(key0 == 0)
        {       
                Delay(1000);
                if(key0 == 0)
                {
                        while(key0 == 0)//判断按键是否松开,不松开,不执行下一行代码,即不发生翻转
                        HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_5);
                }
        }
        if(WK_UP == 0)
        {       
                Delay(1000);
                if(WK_UP == 0)
                {
                        HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_SET);
                        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_5,GPIO_PIN_SET);
                        while(WK_UP == 0);
                       
                }
        }
}


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

5

主题

305

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1690
金钱
1690
注册时间
2018-11-28
在线时间
214 小时
发表于 2023-3-10 11:56:41 | 显示全部楼层
改一下,试试
    if(WK_UP == 1)//没按的时候为低电平
        {      
                Delay(1000);
                if(WK_UP == 0)
                {
                        HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_SET);
                        HAL_GPIO_WritePin(GPIOB,GPIO_PIN_5,GPIO_PIN_SET);
                        while(WK_UP == 0);
                       
                }
        }
回复 支持 1 反对 0

使用道具 举报

5

主题

305

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1690
金钱
1690
注册时间
2018-11-28
在线时间
214 小时
发表于 2023-3-10 12:00:30 | 显示全部楼层
确认一下,是不是KEY0和KEY1 接下拉电阻,WK_UP接上拉电阻。
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2022-8-25
在线时间
7 小时
 楼主| 发表于 2023-3-28 17:47:55 | 显示全部楼层
hzhanhai 发表于 2023-3-10 12:00
确认一下,是不是KEY0和KEY1 接下拉电阻,WK_UP接上拉电阻。

感谢,是的
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2022-8-25
在线时间
7 小时
 楼主| 发表于 2023-3-28 17:48:32 | 显示全部楼层
hzhanhai 发表于 2023-3-10 11:56
改一下,试试
    if(WK_UP == 1)//没按的时候为低电平
        {      

好的,谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 12:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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