STM32f103------按键处理
(1)按键去抖
/*****************************************
*函数名称:Key_Scan(GPIO_TypeDef*GPIOx,u16 GPIO_pin)
*描  述:检验是否有键按下
*输  入:GPIOx代表端口  GPIO_Pin 代表引脚
*输  出:KEY_OFF,KEY_ON
*****************************************/
u8 Key_Scan(GPIO_TypeDef*GPIOx,u16 GPIO_pin)
{
  if(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==KEY_ON)
	{
	  Delay(10000);//去抖延时
		if(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==KEY_ON)
		{
		while(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin)==KEY_ON);
			return KEY_ON;
		}
		else 
		    return KEY_OFF;
	}
	else 
		  return KEY_OFF;
}
STM32f103------按键处理的更多相关文章
- STM32f103按键检测程序实现长按短按
		
背景 只要使用单片机,按键检测基本上是一定要实现的功能.按键检测要好用,最重要的是实时和去抖.初学者往往会在主循环调用按键检测程序(实时)并利用延时去抖(准确).这种在主循环内延时的做法对整个程序非常 ...
 - (二)stm32f103~~GPIO基本操作二(按键)
		
GPIO基本配置之按键输入操作(通过按键控制小灯的翻转) KEY0 对用端口PE4,KEY1 对用端口PE3,这两个按键是一段接地,另一端接单片机.KEYWKUP 对用端口PA0,这个按键是一段接高电 ...
 - STM32F103外部中断编程
		
STM32F103外部中断编程 中断,顾名思义就是停下手头的活,去干另外一件急活,干完急活然后回来继续干手头的活. 单片机和人一样,有时候也有更急的程序需要执行,执行完之后再回来执行之前正在执行的 ...
 - 【补档STM32】STM32F103俄罗斯方块游戏实现
		
项目地址:https://gitee.com/daycen/stm32-tetris/tree/master 使用Keil uVision5打开即可 一.概述  本文介绍了一个基于STM32的俄罗斯 ...
 - (stm32f103学习总结)—输入捕获模式
		
一.输入捕获介绍 在定时器中断实验章节中我们介绍了通用定时器具有多种功能,输入捕获就是其中一种.STM32F1 除了基本定时器 TIM6 和 TIM7,其他定时器都具有输入捕获功能.输入捕获可以对输入 ...
 - linux输入子系统(input subsystem)之按键输入和LED控制
		
实验现象:在控制台打印按键值,并且通过按键控制相应的LED亮灭. 1.代码 input_subsys_drv.c #include <linux/module.h> #include &l ...
 - STM32 按键输入
		
#include "stm32f10x.h"#include "key.h" //按键初始化函数void KEY_Init(void) { GPIO_InitT ...
 - FPGA与simulink联合实时环路系列——实验三 按键key
		
实验三 按键key 实验内容 在FPGA的实验中,经常涉及到按键的使用,按键是必不可少的人机交互的器件之一,在这些实验中,有时将按键的键值读取显示到数码管.LCD或者是通过串口传送到PC的串口助手上进 ...
 - HTC vive开发:关于手柄按键
		
一.关于左右手柄的对应关系 两个手柄和SteamVR_TrackedObject.EIndex是对应的,一个是EIndex.Device2,另一个是EIndex.Device3(有编号的那个) 在场景 ...
 - STM32f103 定时器之编码器接口模式
		
背景 买了个Arduino的旋转编码器模块,配合STM32定时器的编码器模式实现了旋转角度以及圈数的计数.这种旋转编码器我能想到的实际应用场景暂时只有实体音量旋钮,鼠标的滚轮等,所以只实现了计数.阅读 ...
 
随机推荐
- cookie操作大全
			
JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求. cookie是浏览器 提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由J ...
 - Azkaban2官方配置文档
			
最近工作实在是太忙了,我把之前翻译的官方的文档先放上来吧,希望对大家有所帮助~ 介绍 Azkaban2新功能: 1.Web UI 2.简单工作流上传 3.更容易设置job的依赖关系 4.调度工作流 5 ...
 - Web项目初始化过程
			
在启动Web项目时,容器(比如Tomcat)会读web.xml配置文件中的两个节点<listener>和<contex-param>. 接着容器会创建一个ServletCont ...
 - 在Eclipse工具里创建maven的web工程,在建立src/main/java包出现The folder is already a source folder.解决
			
1. 与创建普通java工程一样,点击右键找到New菜单,在弹出的界面输入maven ---->>点击maven Project------>>点击next 2 进入下一个界 ...
 - SQL随笔
			
多表分页查询: ,; 向表中插入新的字段: ALTER TABLE `Table_name` ) NOT NULL DEFAULT '' AFTER `id`; 更新表数据: UPDATE [LOW ...
 - 遇到sql server的问题时如何排查
			
The First Things I Look At On A SQL Server和Page2介绍了遇到sql server的问题时如何排查问题,Display Code列出了sql代码. 包括如下 ...
 - linux 下 apt命令集详解
			
apt命令用法 packagename指代为软件包的名称 apt-get update 在修改/etc/apt/sources.list或/etc/apt/preferences之後运行该命令.此外您 ...
 - Eclipse中使用git把项目导入到osc@git中
			
方便Eclipse用户使用Git把项目导入到osc@git中进行管理. Eclipse Git osc@git 一.原有项目: 项目名为TestGit 二.在osc@git上面创建一个新项目库. 填 ...
 - JY03-HTML/CSS-京东02
			
---恢复内容开始--- 1. position:absolute 1.1 绝对定位设置定位值为百分比时: 如设置right:50%,即元素右侧外边框距离父盒子右侧始终始终为父盒子宽度的一半. 可以使 ...
 - LINQ:使用Take和Skip实现分页
			
随便找的,还没有试过代码. class Program { static int Main() { //每页大小 ; //页码 ; //源数据 string[] names = { "贤静& ...