小游戏"/>
数码管制作猜数字小游戏
猜数字
- 简介
- 接线图
- Arduino代码
- 总结
原文链接:.html
简介
接线图
Arduino代码
/*
每次按键后闪动随机图案,最后停留在一个数字上面
此版本已基本实现猜数字游戏装置功能。
*/
int myNumber;void setup() {pinMode(2, INPUT_PULLUP);Serial.begin(9600);int pinNumber = 3;while(pinNumber <= 9){pinMode(pinNumber, OUTPUT);pinNumber = pinNumber + 1;}randomSeed(analogRead(A0));
}// the loop function runs over and over again forever
void loop() {if (!digitalRead(2)){myNumber = getRandomNumber(0, 10);}displayNumber(myNumber);
}
int getRandomNumber(int minNumber, int maxNumber){int randomNumber;int i; while(i < 15){i = i + 1;randomNumber = random(minNumber,maxNumber);//displayNumber(randomNumber);displayRandom();delay(100);displayClear();delay(100);Serial.print("i = ");Serial.println(i);Serial.print("randomNumber = ");Serial.println(randomNumber);Serial.println("");}return randomNumber;
}void displayNumber(int ledNumber){switch(ledNumber){case 1: //显示1digitalWrite(4, HIGH);digitalWrite(7, HIGH); break; case 2: //显示2digitalWrite(3, HIGH);digitalWrite(4, HIGH); digitalWrite(5, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break; case 3: //显示3digitalWrite(3, HIGH);digitalWrite(4, HIGH); digitalWrite(5, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); break; case 4: //显示4digitalWrite(4, HIGH); digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); break; case 5: //显示5digitalWrite(3, HIGH);digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); break;case 6: //显示6digitalWrite(3, HIGH);digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break; case 7: //显示7digitalWrite(3, HIGH);digitalWrite(4, HIGH); digitalWrite(7, HIGH); break;case 8: //显示8digitalWrite(3, HIGH);digitalWrite(4, HIGH);digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break;case 9: //显示9digitalWrite(3, HIGH);digitalWrite(4, HIGH);digitalWrite(5, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); break;case 0: //显示默认digitalWrite(3, HIGH);digitalWrite(4, HIGH);digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break;default:digitalWrite(4, HIGH); digitalWrite(5, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); }
}void displayClear(){digitalWrite(3, LOW);digitalWrite(4, LOW);digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); digitalWrite(9, LOW);
}void displayRandom(){int randomPin = random(3,9);digitalWrite(randomPin, HIGH);
}
总结
根据这个实验可以制作一个小小的猜数字的游戏,进一步了解与学习如何使用数码管。
更多推荐
数码管制作猜数字小游戏
发布评论