接线:

L1---D2

L2---D3

L3---D4

L4---D5

R1---D7

R2---D8

R3---D9

R4---D10

代码:(原理)

void setup() {pinMode(2, INPUT);pinMode(3, INPUT);pinMode(4, INPUT);pinMode(5, INPUT);pinMode(7, OUTPUT);pinMode(8, OUTPUT);pinMode(9, OUTPUT);pinMode(10, OUTPUT);Serial.begin(9600);
}
int va2 = digitalRead(2);
int va3 = digitalRead(3);
int va4 = digitalRead(4);
int va5 = digitalRead(5);
int num = 0;
void loop() {va2 = digitalRead(2);va3 = digitalRead(3);va4 = digitalRead(4);va5 = digitalRead(5);digitalWrite(7, 0);digitalWrite(8, 0);digitalWrite(9, 0);digitalWrite(10, 0);if (va2 == 0 || va3 == 0 || va4 == 0 || va5 == 0){delay(10);if (va2 == 0 || va3 == 0 || va4 == 0 || va5 == 0){// 第一列digitalWrite(7, 0);digitalWrite(8, 1);digitalWrite(9, 1);digitalWrite(10, 1);for (int i = 2; i < 6; i++){if (digitalRead(i) == 0){num = i - 1;}}// 第二列digitalWrite(7, 1);digitalWrite(8, 0);digitalWrite(9, 1);digitalWrite(10, 1);for (int i = 2; i < 6; i++){if (digitalRead(i) == 0){num = i + 3;}}// 第三列digitalWrite(7, 1);digitalWrite(8, 1);digitalWrite(9, 0);digitalWrite(10, 1);for (int i = 2; i < 6; i++){if (digitalRead(i) == 0){num = i + 7;}}// 第四列digitalWrite(7, 1);digitalWrite(8, 1);digitalWrite(9, 1);digitalWrite(10, 0);for (int i = 2; i < 6; i++){if (digitalRead(i) == 0){num = i + 11;}}}}Serial.println(num);
}

实物:

Arduino 按钮矩阵 原理相关推荐

  1. arduino的矩阵示例程序_用树莓派 Arduino 制造 LED 矩阵彩灯

    MAKER:maketvee/ 译:趣无尽 之前我们介绍过一款非常炫酷的<熔岩特效灯>.这期教程中我将为大家介绍一款更易上手的灯. 这款 LED 矩阵彩灯使用标准的 WS2812b LED ...

  2. 龙芯1b(LS1B200)使用LVGL7.0.1组件 按钮矩阵 实现简易计算器

    需求:通过按钮点击实现加减乘除的简易计算器. 1.我们使用矩阵按钮(lv_btnmatrix)快速创建布局,文本框(lv_textarea)显示结果. 2.在按钮回调中将点击结果加入文本框上显示. 矩 ...

  3. Arduino中矩阵键盘的编程与搭建

    矩阵键盘在51单片机的案例中应用较多,但是在Arduino中很少使用,今天小编就特立独行一次,在Arduino中搭建一个3*3的矩阵键盘. 一.什么是矩阵键盘? 矩阵键盘是单片机外部设备中所使用的排布 ...

  4. arduino雨滴传感器原理_Arduino酸度计(PH计)

    关联知识 Arduino 在本项目中,我们将通过将模拟pH传感器与Arduino接口来设计pH计. 介绍 在化学中,pH是用于指定水基溶液的酸性或碱性的标度. 酸性溶液的pH值较低,而碱性溶液的pH值 ...

  5. arduino 按钮读取_Arduino内置教程-数字-检测按键状态

    如果你让按键工作,你经常会想做一些要按下很多次按钮的才有响应的动作.这时你需要知道按钮的从闭合到断开的变化状态,然后记录这个状态发生了多少次.这叫状态变化检测或者边沿检测.在这个教程里我们学习怎样检查 ...

  6. 逆透视矩阵原理以及应用(平视图转鸟瞰图、俯视图)

    参考博客:逆透视变化详解 参考论文:Lane Detector 真实世界的景象转换为数字图片的步骤流程如下图: 1.刚体变换 从下图中可以看到,世界坐标为(X,Y,Z)相机坐标为(Xc,Yc,Zc), ...

  7. 线性方程组数学原理、矩阵原理及矩阵变换本质、机器学习模型参数求解相关原理讨论...

    1. 线性方程组 0x1:无处不在的线性方程组 日常生活或生产实际中经常需要求一些量,用未知数 x1,x2,....,xn表示这些量,根据问题的实际情况列出方程组,而最常见的就是线性方程组(当然并不是 ...

  8. 【运筹学】匈牙利法 ( 匈牙利法步骤 | 试指派调整矩阵原理分析 | 打 √ | 直线覆盖 )

    文章目录 一.指派问题求解步骤 二.打 √ 三.直线覆盖 一.指派问题求解步骤 指派问题求解步骤 : 1 . 使行列出现 000 元素 : 指派问题系数矩阵 (cij)(c_{ij})(cij​) 变 ...

  9. Arduino按钮消抖

    本文参考这位大佬文章 有两种按钮消抖的方法,怎么使用看自己 普通按钮代码: int BUTTON = 8;//定义按钮在 12号引脚,连接一个下拉电阻 int val = 0;//变量val 存储按钮 ...

最新文章

  1. R语言ggplot2可视化多行文本轴标签、轴标签带下标、轴标签数学公式实战
  2. 天天都在说,无服务器计算到底是什么?
  3. HTML5---19.地理定位的接口使用
  4. 零基础代理神器allproxy
  5. springboot+vue用websocket消息推送和监听端口
  6. Rust 1.31正式发布,首次引入Rust 2018新功能
  7. 在android studio中,引用.so文件
  8. 转载:JAVA获取时间戳,哪个更快
  9. 原型模式 java 深浅_Java设计模式——原型模式
  10. docker安装elasticsearch6.5.4
  11. 2021-08-31 转载 Scala Akka 系列文章
  12. android创建桌面快捷键shortcut
  13. coreplayer n79下载_coreplayer
  14. 最佳材料设计Android应用模板
  15. c语言存储转置矩阵,C语言实现矩阵转置(附带源码)
  16. 安装linux播放器mplayer,smplayer
  17. 烤仔的客厅 | 明晚7:30,KAKA和烤仔在b站等你~
  18. oracle监听启动无权限,ubuntu 下启动oracle监听失败:TNS-12555: TNS:permission denied
  19. Incapsula到底是什么
  20. 20180529-A · Comic book characters · ggplot2 geom_bar geom_text 柱状图 条形图 图例 · R 语言数据可视化 案例 源码

热门文章

  1. java jasperReports导出PDF字体加粗失效,中文显示不出来
  2. java计算机毕业设计教学互动跟踪系统源码+mysql数据库+系统+lw文档+部署
  3. linux查看python解释器位置——及linux虚拟环境中的python解释器位置
  4. Linux下的IPv6地址、路由以及隧道配置
  5. wireshark数据包格式的基本介绍
  6. [数值计算-5]:一元二次非线性方程求解 - 解析法直接求解
  7. Android上百实例源码分析以及开源分析集合打包
  8. 深度强化学习CS285 lec13-lec15 (下)
  9. python ctypes详解-CTypes
  10. sublime快捷键!+tab键失效