#include "Key.h"
int mode;
int key_val,key_up,key_down,key_old;
int Task_mode;
uint8_t Key_GetValue(void)
{
uint8_t Key_Value = 0;
if(HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_1) == GPIO_PIN_RESET)
Key_Value = 1;//启动按键
if(HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_3) == GPIO_PIN_RESET)
Key_Value = 3;//启动按键
return Key_Value;
}
void Key_Disp(void)
{
key_val=Key_GetValue();
key_down=key_val & (key_val ^ key_old);
key_up=~key_val & (key_val ^ key_old);
key_old=key_val;
if(key_down==1) // 按键1被按,mode加一
{
mode = (mode + 1) % 5; // 通过取余使mode在0, 1, 2之间循环
}
if(key_down==3) // 按键2被按,确定a值
{
switch(mode)
{
case 1:
Task_mode=1;
break;
case 2:
Task_mode=2;
break;
case 3:
Task_mode=3;
break;
case 4:
Task_mode=4;
break;
default:
break; // mode为0时,什么也不做
}
}
}