首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

关于单片机温度控制系统C语言程序中的按键设置程序,请求详细的介绍下按键的输入过程。while(1) { if(KeyFl

发布网友 发布时间:2022-04-23 14:54

我来回答

3个回答

热心网友 时间:2023-10-03 06:24

keyflag应该是判断某个按键按了几次,不安的时候为0
if(KeyFlag == 0)
{
}
按一次时执行
else if(KeyFlag == 1)
{
if(BUTTON_add == 0 && KeyLock ==0)
{
}
if(BUTTON_rece == 0 && KeyLock ==0)
{
}
按二次时执行
else if(KeyFlag == 2){
if(BUTTON_add == 0 && KeyLock ==0)
{
}
if(BUTTON_rece == 0 && KeyLock ==0)
{
}
一楼正解,主要按键扩展标志是用来节省资源的,用最少的按键实现最多的功能!

热心网友 时间:2023-10-03 06:25

if(keypress==true)检测有键按下
{delay_us(50); 延迟50us,软件滤波防抖动
if(keypress==true) 检测有键被按下
key_value=P1;提取键值
{switch(key_value) 识别是那个键被按下了
case 0x01: XXX;break;
case 0x02:XXX;BREAK;进入对应工步或者动作即可。
......
}
}
}追问您好,能帮我分析下下面的程序按键的过程吗,主要按键扩展标志起什么样子?由于输入字体有限,我删除了部分程序。
if(KeyFlag == 0)
{
}
else if(KeyFlag == 1)
{
if(BUTTON_add == 0 && KeyLock ==0)
{
}
if(BUTTON_rece == 0 && KeyLock ==0)
{
}
else if(KeyFlag == 2){
if(BUTTON_add == 0 && KeyLock ==0)
{
}
if(BUTTON_rece == 0 && KeyLock ==0)
{
}

追答标志扩展的目的就是增加在不同情况下,使用少量的键盘,得到多功能的组合之效果而已,比如您的程序,如果使用KeyFlag作为标志,如果因为某种情况可以改变这个标志值,则不同的标志值下,加键与锁定键就可以实现不同的功能啊。
if(KeyFlag == 0) 这个的意思是,如果没有键盘按下,则不动作
{
}
else if(KeyFlag == 1)否则如果有按键按下,且标志为1时
{
if(BUTTON_add == 0 && KeyLock ==0) 如果按键+与锁定按键同时按下时,进行{}中的处理。
{
}
if(BUTTON_rece == 0 && KeyLock ==0)如果按键-减与锁定键同时按下时,则处理()中。。。
{
}
else if(KeyFlag == 2){
if(BUTTON_add == 0 && KeyLock ==0)
{
}
if(BUTTON_rece == 0 && KeyLock ==0)
{

热心网友 时间:2023-10-03 06:25

你把程序具体部分都删除了,只剩下个框架 分析什么啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com