首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在两种状态之间切换

在两种状态之间切换
EN

Stack Overflow用户
提问于 2021-08-11 11:43:36
回答 1查看 42关注 0票数 0

我正在使用mplab并用C编写代码。我已经设置了我的程序,所以它有两个状态。我想要能够双击一个按钮,它在状态1和2之间切换。我用一种非常简单的方法来实现,而不是使用切换语句等。

我已经完成了所有的设置和工作,但由于我的编码方式,它将从状态1返回到状态1。

有没有一种方法可以说,如果双击按钮,则进入相反的状态?而不是:

代码语言:javascript
运行
复制
if (state == 1)
{
state = 2;
}

if (state == 2)
{
state = 1;
}

当然,以这种方式,它将进入状态2,但随后跳转到下面的代码,该代码再次将其更改回状态1。

我知道我可以设置: state = ~ state;但是我如何设置它,让它知道只有一个状态1和2?

下面是我的一些代码:

代码语言:javascript
运行
复制
if (RC1 == 0) // if button is pressed
{
ButtonPressCounter++; // add 1 to counter
}
__delay_ms(250);
if (RC1 == 0) // if button is pressed again
{
ButtonPressCounter++; // add 1 to counter
}

while (ButtonPressCounter == 2)
{
if (state == 1)
{
state = 2;
}
if (state == 2)
{
state = 1;
}
ButtonPressCounter = 0;
}
EN

Stack Overflow用户

发布于 2021-08-11 12:04:00

您可以使用else来阻止在执行state == 1时执行if (state == 2)

代码语言:javascript
运行
复制
if (state == 1)
{
    state = 2;
}
else if (state == 2) /* add "else" here */
{
    state = 1;
}
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68741348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档