标准 4x4 键盘。非常适合数字输入,例如安全 PIN 码。

源代码

Arduino 代码示例
下面的示例使用用于 Arduino 的键盘库。数组中设置的键名定义返回的值。它们不必与实际的密钥标签匹配(但如果不匹配,可能会令人困惑),并且它们必须只包含一个 ASCII 字符。keyskeypad.getKey()

#include <Keypad.h>const uint8_t ROWS = 4;
const uint8_t COLS = 4;
char keys[ROWS][COLS] = {{ '1', '2', '3', 'A' },{ '4', '5', '6', 'B' },{ '7', '8', '9', 'C' },{ '*', '0', '#', 'D' }
};uint8_t colPins[COLS] = { 5, 4, 3, 2 }; // Pins connected to C1, C2, C3, C4
uint8_t rowPins[ROWS] = { 9, 8, 7, 6 }; // Pins connected to R1, R2, R3, R4Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);void setup() {Serial.begin(9600);
}void loop() {char key = keypad.getKey();if (key != NO_KEY) {Serial.println(key);}
}

您也可以在Wokwi上尝试此示例。

例子

代码解析

char keys[ROWS][COLS] = {{ '1', '2', '3', 'A' },{ '4', '5', '6', 'B' },{ '7', '8', '9', 'C' },{ '*', '0', '#', 'D' }
};

创建二维数组存储键值
2.

  char key = keypad.getKey();

获取按下的键位并转化为对应的键值

  if (key != NO_KEY) {Serial.println(key);}

如果有按键按下,则输出键值

结束

生在人世间,
不管是运气还是倒霉,
最好的办法是像我现在一样,
被一股快乐喧闹向前奔涌的人流带着走。 – 米兰・昆德拉

【arduino教学】4x4 键盘相关推荐

  1. 【Proteus仿真】Arduino UNO +74C922键盘解码驱动4X4矩阵键盘

    [Proteus仿真]Arduino UNO +74C922键盘解码驱动4X4矩阵键盘 Proteus仿真 本例因为使用了74C922解码芯片,使得程序代码非常简单,在按下不同按键时,数码管将显示对应 ...

  2. c语言T1中断程序编写步骤,用51单片机中断编写的4x4键盘程序

    当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章 用51单片机中断编写的4x4键盘程序 作者:未知   来源:山涧一溪流   点击数:-  更新时间:2014年06 ...

  3. 4x4按键c语言,52单片机C语言4X4键盘.docx

    52单片机C语言4X4键盘 4*4#include#include#define ulong unsigned long宏定义#define uint unsigned int#define ucha ...

  4. 【Proteus仿真】数码管+4x4键盘矩阵按键简易计算器

    [Proteus仿真]数码管+4x4键盘矩阵按键简易计算器 Proteus仿真 仿真器件 74HC573数据缓冲器 8位共阴数码管 主程序代码 /*-------------------------- ...

  5. 4x4键盘键号显示实验微型计算机课程设计,单片机原理与应用考试大纲

    单片机原理与应用考试大纲 发表时间:2006-10-28 14:43:12 目录/提纲:-- 一.考核知识点: 二.考核要求: 一.考核知识点: 二.考核要求: 一.考核知识点: 二.考核要求: 一. ...

  6. 使用计算机时一面用键盘,一种计算机教学用键盘的制作方法

    本实用新型涉及计算机教学设备技术领域,尤其涉及一种计算机教学用键盘. 背景技术: 计算机教学是指用计算机帮助或代替教师执行部分教学任务,向学生传授知识和提供技能训练的教学方式.计算机教学为学生提供一个 ...

  7. c语言键盘中断扫描码,用51单片机中断编写的4x4键盘程序

    应用查询扫描编写键盘程序,由于要给按键去抖动,程序变得比较复杂和冗长(详见2013年9月29日博文<MSP430和AT89C51单片机4x4键盘C程序>),如果用中断编写,设置中断响应在下 ...

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

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

  9. c语言4x4矩形列互换,线反转法4x4键盘C语言程序问题.急...

    我发一个C的给你参考一下 ******************************************************************************** *  描述: ...

最新文章

  1. 使用webpack构建多页应用
  2. 线性模型已退场,XGBoost时代早已来
  3. 遇见BUG(1):都是非时钟专用引脚惹的祸?
  4. 【对讲机的那点事】车载台天线系统故障的检测、排除方法(上)
  5. Select 多个表并且相关联转置
  6. :focus-within的冒泡触发
  7. Nginx调度器(反向代理)
  8. 爱情九十三课,指尖情话
  9. 一位19年的Mac用户:“我真的很讨厌库克”
  10. NG-ZORRO 7.0.0 发布,Ant Design 的 Angular 实现
  11. Python__关于列表的引用 以append操作为例
  12. 清空oracle的注册表,一键清除 Oracle注册表.bat
  13. 恶意代码分析实战 lab1-4
  14. PSPNet论文详解
  15. JS边框图片基础知识
  16. 他在北京反诈骗15年,守住2亿人密码安全
  17. js实现精确统计网站访问量的代码分享
  18. Unity3D RPG角色扮演游戏源码(上下)-----源代码分析----01-----主角人物动画
  19. Windows10系统安装postgreSQL出错解决方法
  20. 无延时直播/超低延时直播画面同步性测试(实测组图)

热门文章

  1. 显示器输入信号超出范围解决
  2. ios如何解除dns被劫持_iOS - DNS劫持
  3. 百度搜索结果中屏蔽百家号
  4. c语言中什么情况下会出现随机数,C语言中如何产生随机数
  5. JS限制H5页面只能在手机微信中打开总结
  6. vue基础:Vue动画
  7. hive的三种连接方式
  8. 微信小程序createSelectorQuery获取偶尔为null
  9. 社区故事|SmartX 用户社区技术发烧友独家专访
  10. windows下载老版本的php历史版本php