- 准备工程,此例程在以下链接的例程的基础上添加的按键扫描功能
https://blog.csdn.net/mygod2008ok/article/details/106954917
- 新建BSP_key.c和BSP_key.h并加入到工程
- BSP_key.c的内容如下
/**
* @file BSP_key.c
* @author jzhou
* @version V1.0
* @date 11-Nov-2019
* @copyright Chileaf LTD
* @brief 按键扫描模块
* 实现单按键或多按键的短按,长按,短按松开,长按松开等键值
*/
#include "BSP_key.h"
#include "BSP_pwm.h"
//###############################################################################################################################
/** @file
*
* @defgroup BSP_key file:BSP_key文件
* @{
* @ingroup BSP_key file
* @brief 按键扫描模块
* @details 按键功能处理,主要是产生按键键值
*/
//###############################################################################################################################
//-----------------------以下为按键引脚配置及初时化--------------------------
/**
*
* @brief 按键引脚配置信息初时化
*/
static const SCAN_KEY_INFO scan_key[] = {
{GPIOA,GPIO_PIN_12},
{GPIOA,GPIO_PIN_11},
};
/**
* @brief 获取键值
*/
static KEY_TYPE_VAR get_key_value(void)
{
KEY_TYPE_VAR KeyTemp = 0;
// 读按键IO电平状态
for(KEY_TYPE_VAR i=0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?