Zum Inhalt springen
Wunschlisten Wagen
0 Artikel

DIY-Bingo-Zufallszahlengenerator

18 Dec 2023
DIY Bingo Random Number Generator

Möchten Sie es nicht selbst machen? Zufallszahlengenerator für Bingo, eine der unverzichtbaren Aktivitäten der Neujahrsunterhaltung? In diesem Projekt erstellen wir mit dem einen eigenen Bingo-Zahlengenerator Raspberry Pi-Kit Picobricks. Keine Sorge, wir haben Ihnen die Vorgehensweise Schritt für Schritt erklärt und die nötigen Python-Codes für Sie vorbereitet.

Sie sind neu im Programmieren ... Sie möchten testen, was Sie gelernt haben. Silvester naht. Sie haben an das Bingospiel gedacht, das zu den unterhaltsamsten Aktivitäten an Silvester gehört. Sie dachten sich: „Ich wünschte, ich könnte mit den Codes, die ich gelernt habe, meinen eigenen Bingo-Zahlengenerator erstellen.“ Hier helfen wir Ihnen in dieser Phase, zukünftiger Softwareentwickler :)

Lassen Sie uns Schritt für Schritt lernen, wie Sie einen Zahlengenerator für Bingospiele erstellen.

Wie erstelle ich einen Zufallszahlengenerator?

Schritt 1: Lassen Sie uns die notwendigen Materialien zusammenstellen

Wenn Sie einen Picobricks haben, haben Sie Glück, denn Sie benötigen lediglich einen Picobricks und einen Drucker, um die Bingokarten auszudrucken, die wir unten mit Ihnen geteilt haben. 

In diesem Projekt verwenden wir die OLED-DisplayTaste Und Summer auf PicoBricks. Wenn Sie den Schaltplan prüfen möchten, klicken Sie hier:

Schritt 2: Bereiten wir die erforderlichen Codes vor und installieren sie

Wir haben den Code für Sie auf 3 verschiedenen Plattformen vorbereitet. Wählen Sie das gewünschte aus und installieren Sie es auf Ihren PicoBricks. Wenn Sie nicht wissen, wie es geht, können Sie unseren Leitfaden lesen:

Wie verwende ich PicoBricks?

BricksIDE-Codes

Mit BricksIDE haben wir uns selbst entwickelt blogbasierte Programmierung IDE, Ihr Bingo-Zahlengenerator ist bereit, wenn Sie eine Blockstruktur vorbereiten, wie im Bild gezeigt.

Arduino C-Codes


#enthalten
#include „ACROBOTIC_SSD1306.h“

#Schaltfläche definierenPin 10
#define POT_PIN 26

int buttonState = LOW;
int lastButtonState = LOW;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 10;

int zahlen[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
                 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
                 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
                 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
                 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99};

void setup() {
  Serial.begin(9600);
  Wire.begin();
  pinMode(buttonPin, INPUT);
  oled.init();
  oled.clearDisplay();
  pinMode(POT_PIN, INPUT);
  oled.clearDisplay();
  oled.setTextXY(0, 5);
        oled.putString("Bingo!");
        oled.setTextXY(3, 2);
        oled.putString("Taste drücken");
       oled.setTextXY(2, 0);
        oled.putString("----------------");
        oled.setTextXY(5, 2);
        oled.putString("Zum Starten");
  randomSeed(analogRead(POT_PIN));
}

void loop() {
  int reading = digitalRead(buttonPin);

  if (reading != lastButtonState) {
    lastDebounceTime = millis();
  }

  if ((millis() - lastDebounceTime) > debounceDelay) {
    if (reading != buttonState) {
      buttonState = lesen;

      if (buttonState == HIGH) {
        int randomIndex;
        int Zahl;

        Tun {
          randomIndex = random(0, sizeof(numbers) / sizeof(numbers[0]));
          Zahl = Zahlen[RandomIndex];
        } while (number == 0);

        oled.clearDisplay();
        oled.setTextXY(0, 5);
        oled.putString("Bingo!");
        oled.setTextXY(2, 0);
        oled.putString("----------------");
        oled.setTextXY(6, 0);
        oled.putString("----------------");
        oled.setTextXY(4, 7);
        oled.putString(String(number).c_str());

        
        zahlen[randomIndex] = 0;
      }
    }
  }

  lastButtonState = lesen;
}

MicroPhyton-Codes


von Zeit zu Zeit Schlaf importieren
vom Maschinenimport-Pin
vom Maschinenimport I2C
Von Picobricks importieren Sie SSD1306_I2C
Importmaschine
Importzeit

i2c = I2C(0, scl=Pin(5), sda=Pin(4), freq=200000)
oled = SSD1306_I2C(128, 64, i2c, addr=0x3c)
pin_button = machine.Pin(10, machine.Pin.IN)
Zufällig importieren

list = "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24 ,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49 ,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74 ,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99 ".Teilt(",")
oled.fill(0)
oled.text("{}".format("Bingo"), 42, 5)
oled.text("{}".format("----------------"), 0, 15)
oled.text("{}".format("Taste drücken"), 15, 25)
oled.text("{}".format("To Start"), 15, 35)
oled.show()
während True:
    während pin_button.value():
        oled.fill(0)
        oled.text("{}".format("Bingo"), 42, 5)
        oled.text("{}".format("----------------"), 0, 15)
        oled.text("{}".format("----------------"), 0, 45)
        random2 = random.randint(0, len(list)-1)
        Zahl = Liste[random2]
        oled.text("{}".format(number), 52, 30)
        oled.show()
        time.sleep((0.3))
        list.remove(Nummer)
Vorheriger Beitrag
Nächster Beitrag

Danke fürs Abonnieren!

Diese E-Mail wurde registriert!

Shoppen Sie den Look
Wählen Sie Optionen

Bearbeitungsoption

Habe Fragen?

Benachrichtigung wieder auf Lager

Vergleichen

Produkt ArtikelnummerBewertungBeschreibung Sammlung Verfügbarkeit Produktart Andere Details
this is just a warning
Anmeldung
Einkaufswagen
0 Artikel
Same Day Shipping No Extra Costs
Easy Returns Guarantee Return with Ease
Secure Checkout Secure Payment