|
发表于 2014-8-28 23:49:40
|
显示全部楼层
本帖最后由 clumsybird 于 2014-8-28 23:50 编辑
// matrixclock0828.ino
int pbIn = 0; // 定义中断引脚为0,也就是D2引脚
int ledOut = 13; // 定义输出指示灯引脚
volatile int state = LOW; // 定义默认输入状态
void setup()
{
// 置ledOut引脚为输出状态
pinMode(ledOut, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
// 监视中断输入引脚的变化
attachInterrupt(pbIn, stateChange, LOW);
Serial.begin(9600);
}
byte counter=0;
void loop()
{
switch (counter) {
case 1:
digitalWrite(8, HIGH);
break;
case 2:
digitalWrite(9, HIGH);
break;
case 3:
digitalWrite(13, HIGH);
break;
default:
counter=0;
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(13, LOW);
}
/*digitalWrite(ledOut, HIGH);
delay(counter*1000);
digitalWrite(ledOut, LOW);
delay(counter*1000); */
}
void stateChange()
{
pinMode(2, INPUT);
if(digitalRead(2)==LOW){
counter++;
while(digitalRead(2)==LOW);
}
} |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|