单片机一键多功能C语言
比如我上电手动状态就开启,按键S1按1下变自动状态,再按1下再变手动(如果不是上电手动模式写对了,即上电不反应,按键按下才反应)在自动模式按下后就自己向右运行,S2按下变...
比如我上电手动状态就开启,按键S1按1下变自动状态,再按1下再变手动(如果不是上电手动模式写对了,即上电不反应,按键按下才反应)
在自动模式按下后就自己向右运行,S2按下变向左,再按S2向右(如果按下自动不向右即不反应再按S2才运行已经写出来了)
因为我的S1,S2是状态控制的。。。所以不知道怎么写了。。。。 展开
在自动模式按下后就自己向右运行,S2按下变向左,再按S2向右(如果按下自动不向右即不反应再按S2才运行已经写出来了)
因为我的S1,S2是状态控制的。。。所以不知道怎么写了。。。。 展开
4个回答
展开全部
加一个标志位(或者是变量),每当检测到键按下,就将该标志位状态反转一次。然后根据标志位的状态执行相应程序。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上网找一下“状态机”,你这无非是四种状态而已,用switch就可以解决
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(S1==0)
{
auto_run_flag=~autorun_flag; //
}
if(S2==0)
{
direction_flag=~direction_flag;
}
if(auto_run_flag)
{
direction_flag=1;//向右运行
auto_run();//自动运行
}
else
{
run();// 手动
}
大概就这么个框架
{
auto_run_flag=~autorun_flag; //
}
if(S2==0)
{
direction_flag=~direction_flag;
}
if(auto_run_flag)
{
direction_flag=1;//向右运行
auto_run();//自动运行
}
else
{
run();// 手动
}
大概就这么个框架
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询