单片机如何实现一个按键切换两个程序

比如程序A和B,按键按下程序A运行,再次按下运行B,再次按下运行B

#include<reg51.h>
sbit key=P1^0;
bit flag=0;
void A(void)
{
.....
}
void B(void)
{
......
}
main()
{
while(1)
    {
    if(key==0)
        {
        while(key==0);
        flag=~flag;
        }
    if(flag)B();
    else A();
    }
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-05-19
这个我做过好多次了,记得,我们上单片机课,老师叫我们做一个六个实验,也就是小型开发板;老师检查时,我是用按键切换给他切换不同的实验,也就是不同功能
每个while(1)就是一个功能
结构就是这样的
变量自己定义如
sbit
pi0=p1^0;
while(1)
{
while(1)
{
if(p10==0)
{delay();
break;
}
}
while(1)
{
if(p10==0)
{
delay();
break;
}
}
}
就是这样的结构,你看看可以用不

80C51单片机怎么用按键选择两个不同的程序?
1. 首先,您需要连接一个按键到80C51单片机的输入引脚上。假设按键连接到P1口的某个引脚(例如P1.0)。2. 设置P1口的引脚为输入模式,以接收按键的状态。您可以使用P1口的寄存器(例如P1CON)来设置引脚的工作模式。3. 在主程序中,使用一个循环来读取按键的状态。您可以使用P1口的寄存器(例如P1)...

单片机如何实现一个按键切换两个程序
include<reg51.h>sbit key=P1^0;bit flag=0;void A(void){...}void B(void){...}main(){while(1) { if(key==0) { while(key==0); flag=~flag; } if(flag)B(); else A(); }}

如何用按键实现单片机中两个不同功能的切换。
很好实现呀,二选一,你可以设一个标志变量,按一下键分别为1和0切换,再根据这个标志变量的值分别调用不同的函数就可以了。

单片机一个按键控制四种模式
1、状态机控制:通过定义不同的状态,按键触发时切换状态,从而实现不同的模式切换。可以使用if-else语句或switch-case语句来实现状态的判断和切换。每个状态对应一个模式,按键触发时切换到下一个状态,循环切换四种模式。2、计数器控制:使用一个计数器变量,按键触发时计数器加1,根据计数器的值来确定...

请问单片机怎么用独立按键按一下实现一个功能,按另一个按键实现另一个...
如果这两个功能都是一个死循环,可以考虑用中断,这样就不必在两个独立的功能中插入按键检测了 while(1){ while(flag==1){死循环1} while(flag==2){死循环2} } 如果这两个功能不是死循环,就 简单了 while(1){ if(key1==0) {延时消抖 功能1} if(key2==0) {延时消抖 功能2} }...

一个按键怎么实现两个Led灯切换,就是按下第一个灯亮松手灯灭,再按一...
按键位置:P0.1;功能:1,当第一次按键按下,第一个灯亮,按键放开灯灭 2,当第二次按键按下,第二个灯亮,按键放开灯灭 3,重复执行前面两个步骤 灯的位置:P2口;\/ include <reg51.h> define uint unsigned int define uchar unsigned char sbit BUTTON=P0^1;\/\/按键的位置 void ...

stm32单片机如何实现一个按键切换两个程序
定义一个标志位 bit flag=0;主各序结构:while(1){ if(flag==0){...程序1 } if(flag==1){...程序2 } } 按键检测可用中断,中断程序中改变flag的值

51单片机如何用一个按键控制一段程序的运行与停止
你需要把判断条件放入while循环里面。以下是修改过的程序。希望能帮到你,望采纳 include <REG51.h> \/\/通用89C51头文件 sbit LED1 = P1^0; \/\/定义闪烁LED sbit LED2 = P1^1; \/\/定义闪烁LED sbit LED3 = P1^2; \/\/定义闪烁LED sbit LED4 = P1^3; \/\/定义闪烁LED sbit K1 = P3^2;v...

51单片机如何用一个按键控制一段程序的运行与停止
首先,你需要为你的项目创建一个新的文件,这是基础步骤,它将承载你的代码逻辑(1、在51单片机项目中,新建一个文件用于存放程序代码。)。接着,配置你的按键和LED。假设你选择的按键S1连接到P3的第2引脚,当按键按下时,可以通过编程使其对应P1的第5引脚点亮LED(2、按键S1的输入设置为P3^2,LED...

单片机一个按键如何同时控制两个C文件的程序执行。。打地鼠游戏的锤子和...
先不说按键的事,就是单片机也不可能同时执行两个C程序。按普通的方法是实现不了的。这要模拟电脑的操作系统才行,即同时执行多个任务,即多个线程。你这能跑操作系统吗?实在不行,自己写个简单的切换系统,即两个程序分时来执行,可以用定时方法,一个程序执行一小段时间后,切换到另一个程序上。真...

相似回答