在做单片机项目开发时,经常需要用到键盘,而键盘绝大多时候使用的是单按键或矩阵键盘。矩阵键盘有许多优点,我在这就不多说了,但有一点就是按键稍微多几个就比较浪费口线了,尤其是需要将键盘引出时,那线多而长很是一个不爽。下面我就说说两线式的多按键电路的设计与实现,键盘只需两根导线就搞定,前提是你的单片机系统要有多余的一根AD口线。说到这里有人会问了,我的系统没有用到模拟采集,为了弄这个键盘再加一个AD芯片吧,这不是因小失大吗?我要说的是现在带有AD功能的单片机相当的多,而且价格比没带的也贵不了多少。当然你选了不带AD的就另当别论了。

  我在做一个项目的按键时遇到几个情况:1.产品外设较多,单片机I/O口除键盘就只剩下一个I/O了,再没有多余的了;2.现场情况所限,键盘与主机板要有一段距离;3.键盘需要9个按键。根据以上的情况采用两线键盘最为合适。电路如图所示。

  

  图中 省略了部分按键,可以根据实际需要配置按键。此时就可以通过AD扫描读取,可以根据AD值判断有无按键按下或是那个按键按下。根据上图电阻值(为方便举例,全部取值为1K,可以自行取其它阻值,电压平均分配就最好)可以算出:无按键按下,AD值为VCC;S1按下,AD值为0;S2按下,AD值为1/2VCC;同理,S3=2/3VCC;S4=3/4VCC;S5=4/5VCC;根据AD采集值比较最接近那个键值,则就是该按键。

  使用此方方法需注意几点:1.按键不可太多,这与AD分辨率有关系,否则将会检测不准。以8位分辨率来说,共256点,每个按键的点为25点以上最好。即256/25=10,最多10个按键。具体可以自行实验。

  2.按键选用接触性较好的按键。按键差的使用时间一长,容易产生接触电阻,按键多容易误检测。

两线式键盘(AD按键)电路的设计与实现相关推荐

  1. 【RTD】AD7793两线式铂电阻PT100/PT1000应用

    文章目录 1 前言 2 AD7793 两线式铂电阻测量 2.1 阻值计算 3 小结 1 前言   上一篇文章描述的是RTD驱动芯片AD7793与四线式RTD连接使用方法.本文描述两线式RTD与AD77 ...

  2. 段码式显示屏和背光电路怎么设计?

    全透和半透的段码式显示屏是需要通过点亮背光来使之达到显示清晰的效果,并且液晶和背光是分别两路电源控制的,液晶的电压根据不同的材质以及供电方式可以对应的选择电压,正常是3–5V都可以做,但是背光的电压是 ...

  3. arduino笔记25:arduino用4*4薄膜式键盘

    下图左是一款常见的薄膜按键模块(hex keypad),有4×4或3×4(少了最右边一行的A,B,C,D键),它的内部如同下图右边的电路所示,是由16个按键(开关)交织而成.有些按键模块直接使用按键( ...

  4. 单片机备用电池供电电路_两种实用的电池供电电路分析

    随着信息时代的来临,手持电子产品层出不穷(如PDA.数码相机.手机等).这些产品主要采用电池供电,在此类产品中如何设计电源管理电路,确保产品的实用性.经济性成为产品设计的关键问题.本文从设计手持产品的 ...

  5. 浅谈仪表的两线制、三线制、四线制

    一.传感器与变送器的区别 传感器和变送器本是热工仪表的概念.传感器通常由敏感元件和转换元件组成,能够使非电物理量如温度.压力.液位.物料.气体特性等转换成电信号或把物理量如压力.液位等直接送到变送器的 ...

  6. 三相桥式全控整流电路matlab仿真,三相桥式全控整流电路的matlab仿真

    三相桥式全控整流电路的matlab仿真 - 0 -中北大学朔州校区电力电子技术课 程 设 计 说 明 书专 业 : 电 气 工 程 及 其 自 动 化题 目 : 三相桥式全控整流电路的设计与仿真(阻感 ...

  7. 高速电路EDA设计第一次实验

    一.利用74LS138实现4-16译码器 设计要求: · 用2片3-8 译码器拼接成4-16 译码器 · 仿真验证电路的正确性 · 注意观察输出信号的毛刺(竞争冒险) 设计思路: 如下图所示,我们让最 ...

  8. 两级式光伏并网逆变器,DCDC环节采用boost电路,通过增量电导法实现光伏最大功率跟踪MPPT

    两级式光伏并网逆变器,DCDC环节采用boost电路,通过增量电导法实现光伏最大功率跟踪MPPT. 逆变器采用二电平逆变器,通过双闭环控制,实现并网单位功率因数,并网电流与电网电压同相位,并网电流TH ...

  9. OBC两级式车载电源 Buck+LLC级联型直流变换器电路模型

    OBC两级式车载电源 Buck+LLC级联型直流变换器电路模型 采用双闭环控制 输出电压+电感电流双环,比传统输出电压电流双环动态性更好,鲁棒性更强 matlab simulink仿真模型 ~ ID: ...

最新文章

  1. TokuDB介绍——本质是分形树(一个叶子4MB)+缓存减少写操作
  2. SQL 在OPENQUERY中使用参数
  3. 2013\Province_C_C++_A\4.颠倒的价牌
  4. vue使用@路径引入
  5. Autofac之自动装配
  6. 在知乎上泡了这么久,工作、工资、生活还是没有起色是什么原因?
  7. Homebrew 更换阿里云镜像源
  8. SpringMVC ------使用POJO对象绑定请求参数值
  9. ubuntu下jmxtrans 安装
  10. ADO BUG之'无法为更新定位行....' 解决之道
  11. 区块链 Fisco bcos 智能合约(17)-区块链的速度困境:“贵”在信任,“慢”得其所
  12. gnuplot添加直线和箭头
  13. DWL文件能改成DWG文件打开吗?
  14. 计算机休眠不播放音乐,电脑休眠后不能播放音乐怎么办
  15. Git分布式版本管理工具
  16. Nature子刊:AI技术从零开始设计具有生物活性的蛋白质
  17. nr技术之---MIMO
  18. 【ansj分词,英文被转换为了小写】
  19. 行走的Offer收割机,首次公布Java10W字面经,Github访问量破百万
  20. linux如何安装声卡驱动

热门文章

  1. 自动将Excel文件中的数据批量填写到网页表单
  2. 计算机专业英语第二单元,计算机专业英语第二单元译文.doc
  3. cocos2d-x 3.4之排行榜的实现
  4. 解决手动添加打印机时无usb口的方法
  5. 企业为什么要选择软文营销?
  6. Crontab 每两周执行一次
  7. 句柄(Handler)到底是什么?
  8. 由投票作弊想到的—leo看赢在中国(4)
  9. java 新闻采集系统_基于Java技术的新闻采集器设计与实现
  10. 第十七周-day72-Python编程基础day04