⭐⭐ Początkujący plus ⏱️ 15 minut

Elektroniczna kostka

Zrobisz kostkę ze światła. Naciśnij przycisk: lampki przez chwilę się toczą, a potem widzisz, ile wyrzuciłeś. Od 1 do 6 lampek!

Najpierw szybko się zaloguj. Potem twój projekt będzie od razu gotowy.

🧰 Czego potrzebujesz?

1× Arduino UNO
1× Przycisk
1× Pierścień LED RGB (8 diod LED)
🔌
Kabel USB + Przewody połączeniowe

🗺️ Schemat podłączenia

Poprowadź przewody od Arduino do każdej części. Kolory przewodów możesz wybrać samodzielnie.

Od Do
Arduino UNO · D2 Przycisk · 1
Przycisk · 2 Arduino UNO · GND
Arduino UNO · D6 Pierścień LED RGB (8 diod LED) · DI
Arduino UNO · 5V Pierścień LED RGB (8 diod LED) · 5V
Arduino UNO · GND Pierścień LED RGB (8 diod LED) · GND

🛠️ Tak to zbudujesz

  1. Włóż przycisk nad przerwą w breadboardzie: jedna nóżka do pin 2, a nóżka po drugiej stronie do GND.
  2. Podłącz LED-ring: DI do pin 6, 5V do 5V i GND do GND.

💻 Kod

// Elektroniczna kostka
// Naciśnij przycisk: LED-ring chwilę się toczy, a potem świeci 1 do 6 lampek.

#include <Adafruit_NeoPixel.h>

const int PRZYCISK_PIN = 2;     // Przycisk na pin 2 (druga strona do GND)
const int PIERSCIEN_PIN = 6;     // DI LED-ring na pin 6
const int LICZBA_LED = 8;

Adafruit_NeoPixel pierscien(LICZBA_LED, PIERSCIEN_PIN, NEO_GRB + NEO_KHZ800);

// Zapala kilka lampek w jednym kolorze
void pokazLiczbe(int liczba, uint32_t kolor) {
  pierscien.clear();
  for (int i = 0; i < liczba; i++) {
    pierscien.setPixelColor(i, kolor);
  }
  pierscien.show();
}

void setup() {
  pinMode(PRZYCISK_PIN, INPUT_PULLUP);
  randomSeed(analogRead(A0));   // Sprawia, że kostka jest naprawdę losowa
  pierscien.begin();
  pierscien.setBrightness(50);
  pierscien.show();
}

void loop() {
  if (digitalRead(PRZYCISK_PIN) == LOW) {
    // Chwila "toczenia": szybko zmienne liczby, za każdym razem trochę wolniej
    for (int i = 0; i < 15; i++) {
      pokazLiczbe(random(1, 7), pierscien.Color(0, 80, 255));
      delay(40 + i * 10);
    }
    int rzut = random(1, 7);                    // Liczba od 1 do 6
    pokazLiczbe(rzut, pierscien.Color(0, 255, 60));    // Prawdziwa liczba na zielono
    delay(500);
  }
}

🧠 Co robi kod?

  • random(1, 7) wybiera losową liczbę od 1 do 6.
  • Najpierw pokazujemy szybko zmieniające się liczby na niebiesko. Wygląda to tak, jakby kostka się toczyła.
  • Potem pokazLiczbe() pokazuje prawdziwą liczbę na zielono.

🎯 Spróbuj…

  • Daj każdej liczbie własny kolor
  • Niech brzęczyk krótko zapiszczy, gdy kostka się zatrzyma
  • Zrób z tego kostkę od 1 do 8

🚀 Zbuduj ten projekt z Codey: otwórz codey.online/pl/starter-kits/uno/projects/dice i kliknij ZRÓB TO. Wtedy kod i schemat podłączenia będą od razu gotowe.

Najpierw szybko się zaloguj. Potem twój projekt będzie od razu gotowy.
⬇️ Pobierz tę stronę jako PDF 📚 Pobierz cały tutorial (PDF)

Codey Online to produkt od OTRONIC

Zbuduj swój projekt Arduino lub ESP32 z pomocą AI

Opisz, co chcesz zbudować. Codey Online napisze kod, narysuje schemat połączeń, skompiluje projekt i wgra go na płytkę bezpośrednio z przeglądarki.

Zacznij za darmo