## 按键(Key) * * ### 全局变量
| 全局变量 | 类型 | 注释 |
|---|---|---|
| g_key1_long_press | uint16_t | 记录按键1的长按计时 |
| 宏定义 | 值 | 注释 |
|---|---|---|
| KEY1_GPIO_PORT | GPIOA | 按键1的GPIO端口 |
| KEY1_GPIO_PIN | GPIO_Pin_8 | 按键1的GPIO引脚 |
| KEY1_GPIO_CLK | RCC_APB2Periph_GPIOA | 按键1的GPIO时钟 |
| KEY_PRESS | 1 | 按键被按下 |
| KEY_RELEASE | 0 | 按键被松开 |
| KEY_MODE_ONE_TIME | 1 | 按下一次返回1 |
| KEY_MODE_ALWAYS | 0 | 持续按下返回1 |
| 参数 | 类型 | 注释 |
|---|---|---|
| GPIOx | GPIO_TypeDef* | GPIO端口 |
| GPIO_Pin | uint16_t | GPIO引脚 |
| 返回值 | 类型 |
|---|---|
| 按键状态 | uint8_t |
| 返回值 | 类型 |
|---|---|
| 无 | void |
| 返回值 | 类型 |
|---|---|
| 无 | void |
| 参数 | 类型 | 注释 |
|---|---|---|
| mode | uint8_t | 设置模式,0:持续按下返回1,1:按下只返回一次1 |
| 返回值 | 类型 |
|---|---|
| 按键状态 | uint8_t |
| 参数 | 类型 | 注释 |
|---|---|---|
| timeout | uint16_t | 长按时间,单位为秒 |
| 返回值 | 类型 |
|---|---|
| 1:已达到长按状态,0:未达到 | uint8_t |
| 返回值 | 类型 |
|---|---|
| KEY_PRESS:按下,KEY_RELEASE:松开 | uint8_t |