Zum Inhalt springen
Wunschlisten Wagen
0 Artikel

Magic8Ball-Projekt

01 Nov 2023
Magic8Ball Project

Magisches 8-Ball-Spiel

Inhaltsverzeichnis

    Sind Sie ein unentschlossener Mensch oder möchten Sie Antworten auf eine Frage, die Sie die ganze Nacht wach hält? Hier ist eine unterhaltsame Lösung: die digitale Nachbildung des „Magic 8 Ball-Spiels“ mit dem 0,96-Zoll-I2C mit 128 x 64 Pixeln von PicoBricks OLED-Display! Der Original-Magic-8-Ball ist ein spielerisches Spielzeug, das häufig Antworten auf verschiedene Fragen in der Form „Ja“ oder „Nein“ gibt. Dieses Mal ist Ihnen das Magic 8 Ball-Spiel näher als je zuvor, dank OLED-Displays, die diese mysteriöse Welt zum Leben erwecken.

    Das OLED-Display bietet die Möglichkeit, als künstliche Lichtquelle verwendet zu werden, sodass Sie die Zeichen auf dem Bildschirm vergrößern und auf jede gewünschte Ebene spiegeln können. Dies verbessert das Magic 8 Ball-Erlebnis, indem es sofortige Antworten auf Ihre Fragen liefert oder Ihre Neugier weckt.

    Wenn Sie ein Gaming-Enthusiast sind, ist die OLED-Technologie genau das Richtige für Sie. Mit OLED-Monitoren können Sie jedes Detail Ihres Spiels sehen, selbst in dunklen Szenen. Mit dieser Technologie können Sie wirklich in Ihr Spielerlebnis eintauchen und sich einen Vorteil gegenüber Ihren Mitbewerbern verschaffen. Darüber hinaus haben OLED-Displays einen erheblichen Einfluss auf den Alltag. Sie können Straßen- und Verkehrsinformationen auf Datenbrillen und Windschutzscheiben von Autos projizieren und so die Sicherheit und den Komfort erhöhen. Der einfache Zugriff auf Informationen und klare Bilder machen die OLED-Technologie zu einem wesentlichen Bestandteil des modernen Lebens. Das 0,96-Zoll-OLED-Display von PicoBricks soll Ihnen ein magisches Erlebnis bieten. Egal, ob Sie Entscheidungen treffen oder in die Welt der Unterhaltung eintauchen – das OLED-Display macht Ihre Momente lebendiger.

    Fragen Sie The Magic 8 Ball!

    Details und Algorithmus

    Dieser Python-Code bringt das klassische Spielzeug „Magic 8 Ball“ mithilfe eines PicoBricks-Geräts und eines 0,96-Zoll-OLED-Displays in die digitale Welt. Es zeigt ständig „Magic8PicoBricks“ auf dem OLED-Display an und wartet auf eine Taste Drücken Sie. Wenn die Schaltfläche gedrückt wird, wählt sie zufällig eine Antwort aus einer vordefinierten Liste aus und zeigt einen Countdown mit an LED Aktivierung. Die gewählte Antwort wird dann 3 Sekunden lang angezeigt, bevor der Bildschirm für die nächste Frage gelöscht wird. Dieser Code reproduziert den skurrilen Spaß des Magic 8 Balls in einem digitalen Format und bietet schnelle und nostalgische Antworten auf Benutzeranfragen.

    Komponenten

    1xPicoBricks

    Schaltplan

    MicroBlocks-Codes von PicoBricks

    PicoBricks IDE-Codes von PicoBricks

    MicroPython-Codes von PicoBricks

    from time import sleep
    from machine import Pin
    from machine import I2C
    from picobricks import SSD1306_I2C
    import machine
    import time
    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)
    import random
    pin_led = machine.Pin(7, machine.Pin.OUT)
    oled.fill(0)
    blank = " "
    situation = "It is certain. It is decidedly so. Without a doubt. Yes definitely. You may rely on it. As I see it, yes. Most likely. Outlook good. Yes. Signs point to yes. Reply hazy, try again. Ask again later. Better not tell you now. Cannot predict now. Concentrate and ask again. Don't count on it. My reply is no. My sources say no. Outlook not so good. Very doubtful.".split(".")
    sentence = " "
    while True:
        oled.text("{}".format("Magic8PicoBricks"), 0, 30)
        oled.show()
        if (pin_button.value()) == (1):
            sentence = situation[random.randint(0, (len(situation)) - (1))]        oled.fill(0)
            oled.show()
            pin_led.on()
            for i in range((4)):
                oled.fill(0)
                oled.text("{}".format((4) - i), 60, 30)
                oled.show()
                time.sleep((1))
            oled.fill(0)
            if (len(sentence)) >= (16):
                sentence_array = sentence.split(blank)
                for i in range((1) + (len(sentence_array))):
                    oled.text("{}".format(sentence_array[i - (1)]), 32, (10) * (i - (1)))
                    oled.show()
            else:
                oled.fill(0)
                oled.text("{}".format(sentence), 0, 25)
                oled.show()
            time.sleep((3))
            pin_led.off()
            oled.fill(0)
            oled.show()

    </code></pre>

    Arduino C-Codes von PicoBricks

    
    //define the library
    #include 
    #include “ACROBOTIC_SSD1306.h”
    #define BUTTON_PIN 10
    #define DHTPIN 11
     
    const char* sentences[] = {
      “It is certain.”,
      “It is decidedly so.”,
      “Without a doubt.”,
      “Yes definitely.”,
      “You may rely on it.”,
      “As I see it, yes.”,
      “Most likely.”,
      “Outlook good.”,
      “Yes.”,
      “Signs point to yes.”,
      “Reply hazy, try again.”,
      “Ask again later.”,
      “Better not tell you now.”,
      “Cannot predict now.”,
      “Concentrate and ask again.”,
      “Don’t count on it.”,
      “My reply is no.”,
      “My sources say no.”,
      “Outlook not so good.”,
      “Very doubtful.”
    };
     
    const int numSentences = sizeof(sentences) / sizeof(sentences[0]);
     
    void setup() {
      //define dht sensor and Oled screen
      pinMode(BUTTON_PIN, INPUT);
      Wire.begin();
      oled.init();
      oled.clearDisplay();
      Serial.begin(9600);
    }
     
    void loop() {
      oled.setTextXY(3, 0);
      oled.putString(“Magic8PicoBricks”);
     
      if (digitalRead(BUTTON_PIN) == 1) {
        oled.clearDisplay();
        for (int i = 3; i > 0; i–) {
          oled.clearDisplay();
          oled.setTextXY(3, 7);
          oled.putString(String(i));
          delay(2000);
          oled.clearDisplay();
        }
     
        oled.clearDisplay();
        int randomIndex = random(0, numSentences);
        oled.setTextXY(0, 0);
        oled.putString(sentences[randomIndex]);
        delay(3000);
        oled.clearDisplay();
      }
    }
    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