Arduino と抵抗(1kΩ茶黒赤金, 11本)とスイッチを用意し図のように配線します。 できればLEDを円形に並べるとルーレットの雰囲気が出ます。
このプログラムを実行している間にスイッチを押すと電子ルーレットがスタートします。 毎回違うところに止まります。
このプログラムは大きく分けると5つに分かれています。
ここでrand()は-32768から32767の間の乱数を返す関数です。 「%」は左の式を右の式で割ったときのあまりを計算する記号です この二つを組み合わせてrand() % 10により0から9の乱数を作っています(10で割ったあまりは0(あまりなし)から9までだから)。 これに3を足すことで3から12の乱数になります。
for(i=3; i<=12; i=i+1) { pinMode(i, OUTPUT); } for(;;) { while(digitalRead(2)==HIGH) { delay(10); } digitalWrite(i, LOW); c = (rand() % 10) + 3; for(i=0; i<=20+c; i=i+1) { digitalWrite(((i%10)+3), HIGH); delay(200); digitalWrite(((i%10)+3), LOW); delay(200); } i = i - 1; digitalWrite(i, HIGH); delay(100); digitalWrite(i, LOW); delay(100); digitalWrite(i, HIGH); delay(100); digitalWrite(i, LOW); delay(100); digitalWrite(i, HIGH); }