查看: 661|回复: 3

[未解决] arduino的Keypad库找不到

[复制链接]

该用户从未签到

发表于 2019-12-3 17:24 | 显示全部楼层 |阅读模式
有谁知道arduino里面的Keypad库,找了半天也找不到
#include<Keypad.h>
const byte ROWS = 4; //四行
const byte COLS = 4; //四列
//定义键盘上的按键标识
char hexaKeys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
byte rowPins[ROWS] = {4, 5, 6, 7}; //连接到行扫描的输入输出端口
byte colPins[COLS] = {8, 9, 10, 11}; //连接到列扫描的输入输出端口
int num1, num2;
int total;
char operation, button;   
int flag = 0;
char input[16];
//定义Keypad类的实例
Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup(){
  Serial.begin(9600);
}
void loop(){
    button = customKeypad.getKey();
  if (button >= '0' && button <= '9' && flag==0)
  {
    num1 = num1 * 10 + (button - '0');
    tone(12, 640);delay(100);noTone(12);
    Serial.print(num1);
  }
  if(button >= 'A'||button >= 'B'||button >= 'C'||button >= 'D')//判断按键是否为A/B/C/D,分别代表加减乘除
  {
  flag=1;
  operation==button;
  if(operation == 'A')
  {
  Serial.print("+");
  }
  if(operation == 'B')
  {
  Serial.print("-");
  }
  if(operation== 'C')
  {
  Serial.print("X");
  }
  if(operation== 'D')
  {
  Serial.print("/");
  }
  tone(12, 640);delay(100);noTone(12);
  }
  if (button >= '0' && button <= '9' && flag==1)
  {
    num2 = num2 * 10 + (button - '0');
     tone(12, 640);delay(100);noTone(12);
    Serial.print(num2);
  }
   if (button == '#' )
  {
    switch (operation)  //switch case 选择计算符号
    {
          case 'A':
                  total = num1+ num2;
                  break;
          case 'B':
                  total = num1- num2;
                  break;
           case 'C':
                  total = num1* num2;
                  break;
           case 'D':
                  total = num1/num2;
                  break;
    }
    Serial.print("=");
    Serial.println(total);
     tone(12, 640);delay(100);noTone(12);
    num1=0;
    num2=0;
    flag=0;
  }
}



  • TA的每日心情
    开心
    2020-7-5 05:15
  • 签到天数: 609 天

    [LV.9]以坛为家II

    发表于 2019-12-4 04:57 | 显示全部楼层
    在IDE管理库中搜Keypand然后按装即可.

    该用户从未签到

     楼主| 发表于 2019-12-4 09:40 来自手机 | 显示全部楼层
    找到了,这个库原来在下面好奇隐蔽的位置

    该用户从未签到

    发表于 2020-2-22 18:29 | 显示全部楼层
    Panyicai 发表于 2019-12-4 09:40
    找到了,这个库原来在下面好奇隐蔽的位置

    您好!可否发给我KEYPAD库给我,邮箱:765510740@qq.com。非常感谢!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    用 PyQt GUI 界面下的旋钮控制舵机角度
    用 PyQt GUI 界面下的旋钮
    新人报道, 我想用 PyQt 下的 Dial 旋钮模块来控制舵机的角度。如果一切正常,这个 G
    blinker连接树莓派失败
    blinker连接树莓派失败
    错误原因如下图,想问一下大家这个该怎么解决?
    Python3接入Blinker失败
    Python3接入Blinker失败
    运行示例程序,只把auth换成真实的auth,就出现报错。 大佬们看一下这个是啥情况
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表