查看: 125|回复: 2

[未解决] 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;
  }
}



发表于 2019-12-4 04:57 | 显示全部楼层
在IDE管理库中搜Keypand然后按装即可.
 楼主| 发表于 2019-12-4 09:40 来自手机 | 显示全部楼层
找到了,这个库原来在下面好奇隐蔽的位置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

Blynk与m5stack basic以及uiflow的交互玩法
Blynk与m5stack basic以及
Blynk与m5stack basic以及uiflow的交互玩法 [准备工作我们假设玩家已经熟悉下面的准备
求大佬帮助
求大佬帮助
有没有大佬能帮我把这个转化成c语言的啊,萌新完全看不懂 顺便弱弱的问一句如何将多个
VSCode写Arduino提示无法打开源文件"avr/pgmspace.h"
VSCode写Arduino提示无法
整个程序就这点内容,只是做个测试。 Ctrl+Alt+U的上传是没有问题。但是这里有个错误
【干货分享】mega2560原理图PCB图纸altium designer18
【干货分享】mega2560原理
分享一下mega2560的板子 AD版本 **** 本内容被作者隐藏 **** ergo
【原创】 drawbot平面关节scara机械臂写字机 画画机器人直播...
【原创】 drawbot平面关节
这个项目上个月就在做了,结构和代码反反复复改了多次,加上自己又太忙,一直没来得及
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表