数字骰子实验(柳俊毅)
本帖最后由 linkdfrobot 于 2015-4-12 10:45 编辑数码管实验和按键控制LED的实验,通过实验大家已经学会了两种器件的基本用法。这次使用数码管与按键进行组合,做一个简易数字骰子。数字骰子的基本原理是按下按钮数码管快速在1-8之间循环跳动一次,数码管定格在当前的数字上,不再跳动。需要器材如下1 X 八位数码管1 X 220Ω电阻1 X 按钮如下图接
代码如下//项目gamble – 数码色子
int number =
{
{0,0,0,1,0,0,0,1}, //显示0
{0,1,1,1,1,1,0,1}, //显示1
{0,0,1,0,0,0,1,1}, //显示2
{0,0,1,0,1,0,0,1}, //显示3
{0,1,0,0,1,1,0,1}, //显示4
{1,0,0,0,1,0,0,1}, //显示5
{1,0,0,0,0,0,0,1}, //显示6
{0,0,1,1,1,1,0,1}, //显示7
{0,0,0,0,0,0,0,1}, //显示8
{0,0,0,0,1,1,0,1} //显示9
};
void numberShow(int i){ //该该函数用来显示数字
for(int pin = 2; pin <= 9 ; pin++){
digitalWrite(pin, number);
}
}
void setup(){
for(int pin = 2 ; pin <= 9 ; pin++){ // 设置数字引脚2~9为输出模式
pinMode(pin, OUTPUT);
digitalWrite(pin, HIGH);
}
}
void loop() {
while(analogRead(0)>1000) //读取模拟1口电压值如果电压值大于1000(即4.88V)
{ int rand = random(0,10);
for(int j = 0; j <= 9 ; j++){
numberShow(j); //调用numberShow()函数,显示0~9
delay(100);
}
numberShow(rand);
}
}
实验效果如下本篇由柳俊毅制作,罗亮指导
页:
[1]