#include "stm32f10x.h" #include "key.h" #include "stdbool.h" #include "LED.h" int High_temp=500,Low_temp=100; int New_temp=250,Now_temp=250; bool Change_status=false; int main(void) { led_int(); key_init(); while(1) { if(key1_read()==1) { New_temp++; Change_status=true; } if(key2_read()==1) { New_temp--; Change_status=true; } if(key3_read()==1 & Change_status==true) { Now_temp=New_temp; if(New_temp!=High_temp && Low_temp) { led_open(); led_close(); } if(New_temp==High_temp&& Low_temp) { led_open(); } } } }怎么让按键按一次New_temp加一次1
时间: 2023-07-14 19:11:45 浏览: 42
你可以引入一个计数器变量,每次按下按键时让计数器加1,当计数器达到特定值后再让New_temp加1。例如,你可以将代码修改为如下所示:
```
#include "stm32f10x.h"
#include "key.h"
#include "stdbool.h"
#include "LED.h"
int High_temp=500,Low_temp=100;
int New_temp=250,Now_temp=250;
bool Change_status=false;
int key_counter=0; //新增计数器变量
int main(void)
{
led_int();
key_init();
while(1)
{
if(key1_read()==1)
{
key_counter++; //按键1被按下,计数器加1
if(key_counter>=3) //计数器达到3时,New_temp加1
{
New_temp++;
Change_status=true;
key_counter=0; //计数器清零
}
}
if(key2_read()==1)
{
key_counter++; //按键2被按下,计数器加1
if(key_counter>=3) //计数器达到3时,New_temp减1
{
New_temp--;
Change_status=true;
key_counter=0; //计数器清零
}
}
if(key3_read()==1 & Change_status==true)
{
Now_temp=New_temp;
if(New_temp!=High_temp && Low_temp)
{
led_open();
led_close();
}
if(New_temp==High_temp&& Low_temp)
{
led_open();
}
Change_status=false;
}
}
}
```
在这个修改后的代码中,当按下按键1或2时,计数器变量key_counter会加1,如果计数器达到3,则New_temp会加1或减1,并且计数器会被清零。这样就可以实现按一次按键加一次的效果了。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)