查看: 352|回复: 1

[未解决] 求助矩阵键盘中断

[复制链接]

该用户从未签到

发表于 2019-4-13 10:38 | 显示全部楼层 |阅读模式
#include <Keypad.h>
#include <Wire.h>
char a,b;
int flag=2;
int led=13;
int mykey[2];
int A,B,c=0,d,e,state=LOW;
const byte ROWS = 4; //four rows
const byte COLS = 3; //four columns
//define the cymbols on the buttons of the keypads
char hexaKeys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {5, 4, 3}; //connect to the column pinouts of the keypad

//initialize an instance of class NewKeypad
Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

void setup(){
    Serial.begin(9600);
    pinMode(flag,INPUT);
attachInterrupt(0,blink,CHANGE);
digitalWrite(flag,state);
pinMode(led,OUTPUT);
}

  int array1()
  {


{ if(a==hexaKeys[0][0]){A=1;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[0][1]){A=2;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[0][2]){A=3;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[1][0]){A=4;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[1][1]){A=5;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[1][2]){A=6;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[2][0]){A=7;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[2][1]){A=8;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[2][2]){A=9;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[3][0]){A=10;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[3][1]){A=0;Serial.print("A=");Serial.println(A);}
      else if(a==hexaKeys[3][2]){A=11;Serial.print("A=");Serial.println(A);}

}

  }


     void blink()
{

  digitalWrite(led,state);
  array1();
  delay(1000);
  }
void loop(){
  a=customKeypad.getKey();
  if(a!=NO_KEY)
{ state=!state;
  digitalWrite(flag,state);

}

}

这样为啥实现不了中断,改了不知道多久了,实在不会了,谢谢各位大神帮忙

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

热门推荐

【Arduino】108种传感器模块系列实验(55)---DHT11温湿度传感器
【Arduino】108种传感器模
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
【Arduino】108种传感器模块系列实验(40)---旋转编码器模块
【Arduino】108种传感器模
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
基于机器视觉的智能分拣机械臂
基于机器视觉的智能分拣机
本作品是一个基于机器视觉的智能机械臂操作平台,其采用atmega32单片机作为主控制系统
请问HMC5883L的三个数据到底代表什么,如何做成指南针?
请问HMC5883L的三个数据到
或者哪位朋友有资料给个连接?网上愣是没找到。都只介绍了如何读取数据。我想做成图
关于atmega328p-pu 地的问题
关于atmega328p-pu 地的问
请问图中ADC的地和VCC的地在单片机内部有连接吗?本人初学者,因为需要控制模拟电路,
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
快速回复 返回顶部 返回列表