微动按键开关

2024-03-03 11:20
文章标签 开关 按键 微动

本文主要是介绍微动按键开关,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 我们知道一个系统包含有输入和输出,这样才能在必要的时候人为的控制系统。单片机也一样,需要输入、输出,在前面的实验中我们只介绍了单片机的输出功能,现在介绍一下单片机的基本输入功能,首先介绍最简单的利用微动开关控制LED的显示。

微动开关是一个常开型按钮开关元件,其形状如下图



/* */

图 微动开关

       键盘输入实验采用微动开关作为键盘,微动开关的四个脚是两两连接在一起的,元件上面的圆柱状的按钮控制微动开关的通断,当按钮没有按下时微动开关是断开的,但当按钮按下时微动开关处于导通的状态,微动开关实质是两个脚,标号“1”的两个引脚是连接在一起的,相应的标号“2”的两个引脚也是连接在一起的。实验中一个脚连接地,另一个连接在芯片的I/O口。该I/O口被一个上拉电阻接到高电平。设置芯片的连接微动开关的端口为输入模式,没有键按下时,该端口为高电平;当微动开关按下时,“1”引脚就和“2”引脚连接在了一起,芯片端口就会被置为低电平,这样当程序扫描到端口变为低电平时,就会发现有键按下,这样实现了键盘的输入控制。   

       这是最简单的连接键盘的方法,一个微动开关一端连接在芯片的一个I/O口,另外一端接地。我们可以在设置使用单片机内部的上拉电阻,就不需要额外使用上拉电阻。

      当需要很多的按键作为输入控制时,如果采用这样的微动开关,就需要大量的I/O口,对于小小的单片机来说,输入输出端口是很宝贵的。此时,可以采用另一种连接键盘的方法即行列式连接,连接如下图所示



/* */

图 行列式键盘连接法

       行列式键盘的原理就是每一行线与每一列线的交叉地方不相通,而是接上一个按键,通过按键来接通。所以利用这种结构,a 个I/O 口可以接a 个行线,另外的b 个I/O 可以接b 个列线,总共可以组成a×b 个按键的键盘。如图所示,共有4 个行线,4 个列线,可以组成4×4=16 个按键的键盘。可以看出,行列式的键盘结构可以省出不少的I/O

这篇关于微动按键开关的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/769467

相关文章

独立按键单击检测(延时消抖+定时器扫描)

目录 独立按键简介 按键抖动 模块接线 延时消抖 Key.h Key.c 定时器扫描按键代码 Key.h Key.c main.c 思考  MultiButton按键驱动 独立按键简介 ​ 轻触按键相当于一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通与断开。  ​ 按键抖动 由于按键内部使用的是机

3.门锁_STM32_矩阵按键设备实现

概述 需求来源: 门锁肯定是要输入密码,这个门锁提供了两个输入密码的方式:一个是蓝牙输入,一个是按键输入。对于按键输入,采用矩阵按键来实现。矩阵按键是为了模拟触摸屏的按键输入,后续如果项目结束前还有时间就更新为触摸屏按键输入。 矩阵按键开发整体思路: 由于矩阵按键就是GPIO的控制,所以不进行芯片和设备的分层编写,控制写在同一个文件中,最终向应用层提供一个接口。 代码层级关系:

Android Switch开关

Switch相关XML 属性 android:checked="true"android:thumb="@drawable/alert_dialog_icon" //开关android:track="@drawable/img1" //开关滑动轨道android:textStyle="bold"android:typeface="monospace"android:switchM

Android ToggleButton 开关按钮

ToggleButton相关属性,方法android:textOn="On"android:textOff="Off"android:checked="true"setChecked(boolean) package shortcut.song.com.myapplication;import android.support.v7.app.AppCompatActivity;impo

STM32F4按键状态机--单击、双击、长按

STM32F4按键状态机--单击、双击、长按 一、状态机的三要素二、使用状态机原因2.1资源占用方面2.2 执行效率方面:2.3 按键抖动方面: 三、状态机实现3.1 状态机分析3.1 程序实现 百度解析的状态机概念如下 状态机由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成特定操作的控制中心。有限状态机简写为FSM(

JS触发按键事件

<script type="text/javascript" language=JavaScript charset="UTF-8">document.onkeydown=function(event){var e = event || window.event || arguments.callee.caller.arguments[0];if(e && e.keyCode==27){ // 按

学习记录-Qt按键单击后延迟一段时间触发下一个函数执行

<span style="font-family: Arial, Helvetica, sans-serif;">QTimer::singleShot(1000, this, SLOT(on_pushButton_pcba_readfilename_clicked()));</span>项目中,需要按键单击后发送一条指令,等待一段时间后在发另一条指令,看文档发现使用如上方式可以实现

100盏灯开关问题

问题描述: 有100盏灯泡,第一轮点亮所有电灯,第二轮每两盏灯熄灭一盏,即熄灭第2盏,第4盏,以此类推,第三轮改变编号为3的倍数的电灯,第3盏,第6盏,如果原来那盏灯是亮的,就熄灭它,如果原来是灭的,就点亮它,以此类推,直到第100轮。问第100结束后,还有多少盏灯泡是亮的? 解答: 分析可知如果最后某一盏灯是亮着的,那么它一定是被切换了奇数次(第0次的时候全部都关着)。

linux--按键重映射问题

第一:按键重映射可以解决的问题是 ①键盘的某些按键不灵敏,需要把这个坏键重新映射到好的按键上。比如:如果Up按键不灵敏,把Esc按键重新映射成Up按键,这样就可以使用Esc按键代替Up按键。 ②经常使用的按键比较远,需要把常用的较远的按键重映射到距离手指比较近的地方,这样方便使用。 -------------------------------------------------