67 lines
921 B
C
67 lines
921 B
C
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
#include "delay.h"
|
|||
|
|
#include "gpio.h"
|
|||
|
|
|
|||
|
|
#include "key.h"
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief KEY1 KEY2 <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
void KEY_Init(void)
|
|||
|
|
{
|
|||
|
|
GPIO_E3_C5_Init();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>µļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷź<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @retval NO_KEY KEY1 KEY2
|
|||
|
|
*/
|
|||
|
|
uint8_t KEY_GetKey(void)
|
|||
|
|
{
|
|||
|
|
if (KEY1_Val == 0)
|
|||
|
|
{
|
|||
|
|
Delay_ms(10);
|
|||
|
|
|
|||
|
|
if (KEY1_Val == 0)
|
|||
|
|
{
|
|||
|
|
while (KEY1_Val == 0)
|
|||
|
|
;
|
|||
|
|
|
|||
|
|
return KEY1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else if (KEY2_Val == 0)
|
|||
|
|
{
|
|||
|
|
Delay_ms(10);
|
|||
|
|
|
|||
|
|
if (KEY2_Val == 0)
|
|||
|
|
{
|
|||
|
|
while (KEY2_Val == 0)
|
|||
|
|
;
|
|||
|
|
|
|||
|
|
return KEY2;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return NO_KEY;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>²<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷź<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @retval KEY1 KEY2
|
|||
|
|
*/
|
|||
|
|
uint8_t KEY_GetKeyWait(void)
|
|||
|
|
{
|
|||
|
|
uint8_t key = NO_KEY;
|
|||
|
|
|
|||
|
|
while (key == NO_KEY)
|
|||
|
|
{
|
|||
|
|
key = KEY_GetKey();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
return key;
|
|||
|
|
}
|