随机电子骰子的制作

电子说

1.2w人已加入

描述

第1步:收集材料

对于这个项目,你需要

带USB线的Arduino Uno

12个LED灯(任何颜色)

25线(最好是

焊接原型板或无焊接面包板

一个560Ω电阻器

您可以在普通的Arduino入门套件中获得所有这些项目。

步骤2 :连接电线

电骰子

将此项目放在一起非常简单。

每个LED都必须连接到Arduino上的一个节点通过导线。给定的原理图只有六个LED,但是这可以通过使用Arduino上的第十二个数字引脚轻松扩展到12个。

另一组导线引出来自LED,并在电阻器上聚集在一起。如果您正在使用一个无焊的面包板,它就足以将它们全部放在侧面的条带上;如果你正在焊接东西,你必须通过焊接连接导线。

另一根导线从电阻器通到Arduino上的接地引脚。

第3步:编写代码

这是我使用的代码;

void setup()

{

randomSeed(analogRead( 0));

for(int z = 1; z 《13; z ++)//输出引脚1-12上的LED

{

pinMode(z,OUTPUT );

}

}

void randomLED(int del,int d)//int del表示延迟,int d表示哪种类型的die是/正在使用多少个LED

{

int r;

if(d == 1){

r = random(1,5);//从1-4得到一个随机数

}

if(d == 2){

r = random(1,7);//从1-6得到一个随机数

}

if(d == 3){

r = random(1,9);//从1-8得到一个随机数

}

if(d == 4){

r = random(1,11);//从1-10得到一个随机数

}

if(d == 5){

r = random(1,13);//从1-12获得一个随机数

}

digitalWrite(r,HIGH);//输出到匹配随机生成的数字的LED

if(del》 0)

{

delay(del);//按住LED指示延迟量

}

否则if(del == 0)

{

执行//给出0延迟,永远保持LED

{}

while(1);

}

digitalWrite(r,LOW);//关闭LED

}

void loop()

{

int a;//循环通过LED模拟模具的滚动

int d = random(1,6);//选择您正在使用的边数(参见上面的if语句)

(a = 0; a 《50; a ++)//循环通过50个LED

{

randomLED(50,d);//延迟是50毫秒,int d早先在void loop中选择了

}

for(a = 1; a 《= 5; a ++)//循环到5 LED

{

randomLED(a * 100,d);//延迟是100毫秒

}

randomLED(0,d);//显示明确的LED

}

第4步:更进一步!

你现在有了随机生成电子骰子!

你可以进一步建立这个想法,例如,可以选择你正在使用的骰子。或者你可以建立一个漂亮的案例,让它闪耀。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分