0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于单片机的按键电路设计(1)

CHANBAEK 来源:LYQ电子工作室 作者: 010 2023-10-31 15:15 次阅读

(21种方案的简单介绍,及部分展示)

按键作为一个输入模块,在单片机开发板中必不可少,本文来讨论按键的设计方案。本文1500字。下篇文章将展示出电路图。

按键的模块的设计,主要内容是:按键数量和需要IO口的数量,当然有些不常见的按键电路,需要一些其他器件,芯片辅助完成。

下表为按键设计的一些方案(占用IO口数量在8个IO口以内,可使用扩展芯片。只列出来一部分,有些专用的按键检测芯片,因为本人没有使用过,所以这里没有列出来,欢迎评论区留言)

表1 一些按键检测方案

图片

表1为我整理的一些按键检测方案,这些方案都是可以实现的。我在这里解释一下,表头内容IO口数量,为实际需要使用的单片机IO口数量,这部分IO口都是要被占用的,按键数量是指这个设计方案中的按键数量,也是可以检测区分出的按键数量。短,长,双击这个是指检测按键的状态,这个都是可以实现检测的,所以都是1,不能检测的标记为0。这里的可以检测出来是指可以通过算法实现,如果你实现不了,那就是你的问题了。2按键同时,这个指的是多个按键同时按下,能否检测出来,这个对按键的算法要求更高了,这个大部分特殊的按键电路都是无法实现的,一般常见的按键电路可以实现。特殊,这一列是描述设计方案存在的特殊之处,一般的独立按键,都是没啥特殊的,所以都标记了0,其他设计方案中,列出了设计方案所用的除了按键之外的器件。一列内容为按键/IO口,这个值越大,表明相同的IO口数量,检测的按键多。

分析表中所有的设计方案:

1, 普通的矩阵按键,8个IO口一般是44矩阵16个按键,33矩阵9个按键,2*2矩阵需要4个IO口,还不如4个独立按键,所以这里没有列出来。普通的矩阵按键检测思路一般是行列扫描,这里就不进行展开描述了。

2, 独立按键。独立按键太常见了,一般我们使用一两个按键,都会选择独立按键,独立按键的话,我们一般设计的数量在1-4个,如果需要更多的按键,再用独立按键就不是很划算了,可以考虑其他方案了,独立按键的检测是学习单片机最基础的程序了。

3, 2IO6按键,3IO21按键,4IO52按键,这几个是比较特殊的按键电路,检测按键的程序也是比较复杂的,当然电路也是有点复杂,前两种方案我都分享过了,第三个,4个IO口检测52个按键,我还没有测试,但是是可行的。这个部分在逐个展开吧,东西太多了。

4, 按键二极管,这个是第三种方案的部分,使用的二极管数量下降了,但是使用IO口数量增加了。程序上会比第三个简单点吧。

5, 剩下的方案,每个都是一个电路,基本都涉及芯片或ADC的使用。

5.1 一个IO口检测两个按键,这个是检测IO口的高电平和低电平区分出按键是哪一个的,需要使用单片机IO口的模式配置,STC89C52单片机是无法实现的,需要使用STC12及之后的系列。

5.2 74HC138译码器+IO口,这个是将8个按键的一端都连接在一起,另一端都连接译码器的输出,单片机控制译码器进行按键扫描,当有按键按下时,按下按键的标号就是此时译码器的输入。

5.3 矩阵按键8*8,这个是我之前设计的电路了,这个涉及两个芯片,这里就不进行展开后,之后详细分析

5.4 一路ADC,16个按键。这个方案不一定非要16个,只是16这个数字比较“完整“,这个是需要ADC的,一般都是使用单片机内置的ADC,同时需要一些电阻,这些电阻的精度,还可能影响按键检测的准确性。

5.5 8路触摸按键,这个是我之前设计的42路触摸按键电路的部分电路。这个触摸按键的实现没有借助专门的芯片,所以电路中的元件可能比较多,但是影响不大。

实物展示(已经做出来的方案实物/电路)

图片

图片

图片

图片

图片

图片

图片

结束语:本文简单介绍了21种按键电路,连原理图都没有贴上,接下来的文章会附上电路图,供有需要的人参考,本文到此结束,你如果有更好的方案,可以评论留言。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电路图
    +关注

    关注

    10215

    文章

    10645

    浏览量

    511060
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620851
  • 开发板
    +关注

    关注

    25

    文章

    4430

    浏览量

    94011
  • IO口
    +关注

    关注

    3

    文章

    164

    浏览量

    23756
  • 按键电路
    +关注

    关注

    1

    文章

    35

    浏览量

    21608
收藏 人收藏

    评论

    相关推荐

    基于单片机按键电路设计(2)

    按键作为一个输入模块,在单片机开发板中必不可少,本文来讨论按键的设计方案。本文1600字。之后可能对按键编程部分进行分析(可能是视频形式,打字的话,太多了)
    的头像 发表于 10-31 15:16 1219次阅读
    基于<b class='flag-5'>单片机</b>的<b class='flag-5'>按键</b><b class='flag-5'>电路设计</b>(2)

    单片机外围电路设计

    单片机外围电路设计
    发表于 04-02 17:51

    单片机外围电路设计

    本帖最后由 eehome 于 2013-1-5 10:00 编辑 分享: 单片机外围电路设计
    发表于 07-10 17:02

    单片机外围电路设计

    本帖最后由 eehome 于 2013-1-5 09:47 编辑 单片机外围电路设计
    发表于 08-16 19:32

    单片机外围电路设计

    本书讲述MCS-51单片机的外围电路设计
    发表于 04-15 01:04

    按键开机电路单片机状态的问题

    如图这个电路,这是一个用按键使单片机上电的电路,当按键按下后,单片机如何判断?key
    发表于 01-08 09:30

    单片机硬件电路设计

    本帖最后由 kevinlam 于 2020-3-6 15:42 编辑 单片机硬件电路设计
    发表于 03-05 19:23

    单片机硬件电路设计

    单片机硬件电路设计
    发表于 03-11 09:10

    【视频教程】单片机系列课程-8(原理图设计之串口电路设计1

    该视频为黄忠老师讲解,本期为第八集内容,欢迎大家观看,也可以留言讨论问题。上期回顾:单片机系列课程-7(原理图设计之按键电路设计计算)
    发表于 07-16 10:48

    基于单片机按键控制LED数码管共阴极动态显示电路设计

    基于单片机按键控制LED数码管共阴极动态显示电路设计报告(毕业论文)物理与电子工程学院2014级课程设计PAGE IV物理与电子工程学院《单片机原理与接口技术》课程设计报告书设计题目
    发表于 07-20 06:30

    单片机独立按键电路分享

    独立按键电路:独立按键编程:一个独立按键单片机的一个I/O口连接,当按键按下时,对应I/O口由
    发表于 11-25 07:25

    单片机外围电路设计(第2版)

    关于单片机使用的一些简单电路设计
    发表于 11-09 16:59 0次下载

    STM32单片机按键电路设计

    以前GPIO上接的电路都是低电平触发的那种,新画了个板子有一个按键设计的是高电平触发,结果IO口设置成上拉输入后,怎么读都不正确,按键电路如图1。无奈只能去调试一下,发现当设置为上拉输
    发表于 01-17 16:05 2.3w次阅读
    STM32<b class='flag-5'>单片机</b><b class='flag-5'>按键</b><b class='flag-5'>电路设计</b>

    STM32单片机按键电路设计资料下载

    电子发烧友网为你提供STM32单片机按键电路设计资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广
    发表于 04-25 08:46 20次下载
    STM32<b class='flag-5'>单片机</b><b class='flag-5'>按键</b><b class='flag-5'>电路设计</b>资料下载

    单片机外围电路设计常出现的问题

    单片机外围电路设计需要注意的点有很多,包括单片机上拉电阻的选择、按键抖动及消除、三极管起到开关作用和电平转换的作用,以及电流电压驱动问题。其中,消除方法有两种:软件除抖和硬件除抖。
    的头像 发表于 11-06 11:14 1036次阅读
    <b class='flag-5'>单片机</b>外围<b class='flag-5'>电路设计</b>常出现的问题