OpenEdv-开源电子网

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

请教一个独立按键的问题,求大佬帮助!

[复制链接]

8

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2019-3-14
在线时间
24 小时
发表于 2019-11-7 00:00:38 | 显示全部楼层 |阅读模式
1金钱
我想实现按一下独立按键k1(无中断通道)让流水灯循环起来,再按一下让它立刻灭掉,然后反复按,反复亮,暗。我想了好久还是没想出来,这是我目前写的,感觉是不是不能实现立刻熄灭呀?因为你一旦流水灯亮起来执行到while里面他多少都会等while执行一遍后才能执行下一步,请大佬们帮看看,谢谢!

批注 2019-11-06 235042.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165369
金钱
165369
注册时间
2010-12-1
在线时间
2110 小时
发表于 2019-11-8 02:21:52 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

37

主题

595

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1572
金钱
1572
注册时间
2017-7-17
在线时间
308 小时
发表于 2019-11-8 08:40:08 | 显示全部楼层
你这编程思路不清晰啊,很明显要分成两个任务,一个任务检测按键,设置标志。另一个任务根据标志执行亮灭嘛。
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2019-11-17
在线时间
1 小时
发表于 2019-11-17 13:32:32 | 显示全部楼层
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit k1=P2^0;
sbit k2=P2^1;
uchar aa;
uchar  num=0;
void delay(uint x)
{
        uint i,j;
        for(i=x;i>0;i--)
                for(j=110;j>0;j--);

}

void   crol()
{
//aa=P0=0x7f;
                   P0=aa;
                delay(500);
                aa=_crol_(aa,1);
}

void   cror()
{
//aa=P0=0xfe;

                   P0=aa;
                delay(500);
                aa=_cror_(aa,1);
}

void keyscan()
{
        if(k1==0)
        {
                delay(5);
                if(k1==0)
                {
                        while(!k1);
                        num=1;

                }
        }

                if(k2==0)
        {
                delay(5);
                if(k2==0)
                {
                        while(!k2);
                        num=2;

                }
        }
}


void main()
{
        aa=0xfe;
        while(1)
        {
                keyscan();
                if(num==1)
                crol();

                if(num==2)
                cror();
        }

}
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-1 05:00

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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