电子说
第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步:更进一步!
你现在有了随机生成电子骰子!
你可以进一步建立这个想法,例如,可以选择你正在使用的骰子。或者你可以建立一个漂亮的案例,让它闪耀。
全部0条评论
快来发表一下你的评论吧 !