前言:记录一些在直接用单片机IO口做扫描输出遇到的问题。


单片机IO口方案

1. 公共端

  单片机IO口做矩阵键盘时,公共端配置为输入外部或者内部上拉,平时为高电平,按键被按下时为低电平。

2. 扫描端

  • 方案:扫描端配置为输出,一个扫描端出低电平其余都出高电平
    问题:在单个按键或者不同公共端上多个按键按下时不会出现问题。但是在一个公共端出现多个按键的情况下,会出现数据混乱问题。因为假设两个键被按下时,两个扫描端电平一个低一个高,所以在公共端上的电平是一个介于高电平和低电平之间的不确定的状态

  • 问题解决:扫描时,当其中一个扫描端出低电平其余都设置为输入悬空状态而非出高电平

MCU——矩阵键盘扫描问题记录相关推荐

  1. 山东大学单片机原理与应用实验 3.4 矩阵键盘扫描实验

    目录 一.实验题目 二.实验要求 三.实验过程及结果记录 1. 在Proteus 环境下建立图1所示原理图,并将其保存为keyscan_self.DSN 文件. 2. 编写控制源程序,将其保存为key ...

  2. VHDL矩阵键盘扫描数码管显示

    VHDL矩阵键盘扫描数码管显示 一.新建一个工程 二.矩阵键盘 三.代码部分 四.仿真结果 一.新建一个工程 1.打开Quarteus,直接点击New Project izard. 2.选择存放路径和 ...

  3. 4x3矩阵键盘扫描法c语言,4X4矩阵键盘扫描程序

    4X4矩阵键盘扫描程序 4X4矩阵键盘扫描: 1. 4根行线的GIO均设为Output,根列线的GIO均设为Input: 2. 4根行线的GIO分别置为0111.1011.1101.1110,读逐一读 ...

  4. 51单片机矩阵键盘扫描及使用方法

    一.矩阵键盘简介 矩阵键盘,也称矩阵按键,是为了节约单片机IO口占用所引入的一种外设. (图片截取至普中A2开发板原理图) (图片截取至普中A2开发板实物图) 我们知道,一个独立按键需要1个IO口.但 ...

  5. 矩阵键盘扫描原理详解——单片机

    矩阵键盘扫描原理详解 根据原理图 键盘扫描方法是:行线P10~P13为输出线,列线P14~P17为输入线.一开始单片机将行线(P10~P13)全部输出低电平,此时读入列线数据,若列线全为高电平则没有键 ...

  6. 51单片机4x4矩阵键盘扫描+数码管显示

    51单片机4x4矩阵键盘扫描+数码管显示 个位闪烁感在这篇文章已经修复<51单片机4x4矩阵键盘扫描+数码管显示(二)(修bug篇)> 材料:AT89C52.2位数码管.74HC595. ...

  7. 4*4按键扫描程序c语言,【资料】单片机4*4矩阵键盘扫描程序(c语言+汇编语言2个版本)...

    ;4X4矩阵键盘程序.主要原理为扫描键盘矩阵时,每次只有一行电平拉低.在逐次扫描拉低的这些行的同时,去读那些列的电平. ;被拉低的行上,按下的键对应的列的电平为0 ,其它为1. 用左移位的指令,在进位 ...

  8. 两种方式实现矩阵键盘扫描(含程序)

    1 矩阵键盘的结构 下图是一个4*3的矩阵键盘示意图,三条列线连接P1.4-P1.6引脚.四条行线连接P1.0-P1.3引脚 2 逐行逐列扫描法 首先使三条列线所连接的I/O引脚P14-P16输出低电 ...

  9. 4x4矩阵键盘扫描c语言程序,单片机4*4矩阵键盘扫描程序(c语言+汇编语言2个版本)...

    ;4X4矩阵键盘程序.主要原理为扫描键盘矩阵时,每次只有一行电平拉低.在逐次扫描拉低的这些行的同时,去读那些列的电平. ;被拉低的行上,按下的键对应的列的电平为0 ,其它为1. 用左移位的指令,在进位 ...

最新文章

  1. Server Error: 0×80070543,无法取得服务器的状态(role 和 features)
  2. 1.6 Dropout 正则化-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
  3. OpenGL 统一变量uniform
  4. GTK的.NET的函数库 GTK#
  5. redis最基础的入门教程
  6. c语言 __FILE__,__DATE__,__TIME__ (宏)
  7. 下载任意范围的DEM数据 国产谷歌地球统统满足你
  8. excel服务器模板修改,勤哲Excel服务器设计查询模板
  9. 文件加密新招--WinRAR文件加密(上)
  10. 易语言:游戏辅助 CF队伤“卡秒器“ 编程思路/开发者优化建议
  11. matlab中uigetfile读取图片,MATLAB如何读取图片? 如何用Matlab读入并
  12. Spider爬虫笔记[更新中...]
  13. csp202109-1:数组推导 题解
  14. Kod – 程序员专用编辑器[Mac]
  15. 当物流行业遇见MongoDB
  16. 找工作经历--生活的味道都在里面
  17. 带SN切换流程_专访SN教练叉烧:“重新做教练就是一定要打出成绩让大家看到”...
  18. 动画animate的使用
  19. 产品经理(PM)和产品负责人(PO)的区别
  20. kubelet参数解释about kubelet gc image and evict pod.

热门文章

  1. UE4之A点绕B点旋转
  2. Dotnet运行之控制台
  3. Abseil之Prefer Factory Functions to Initializer Methods
  4. 连接黑屏_解决地下城与勇士PK服登录游戏卡在“正在连接服务器”的黑屏界面...
  5. .net core sorteddictionary 排序_#键盘排序——为什么我们的键盘字母不是按照ABCD的顺序排列?...
  6. Visual Studio 2019报错:缺少mfc120.dll
  7. java死锁怎么用jvm调试_jvm 内存dump、gc查看、线程死锁,jmap、jstack、jstat
  8. Postman工具(环境变量与全局变量)
  9. python教学查询,python基础教程之查询集 QuerySet和管理器Manager
  10. python如何避免访问对象不存在的属性_Python3基础 setattr 设置对象的属性值,如果属性不存在就创建一个...