Ratet / pick AttinyCard

3 Schritt:Schritt 1: Hardware Schritt 2: Software Schritt 3: Ergebnisse

Ratet / pick AttinyCard

Wählen ATtiny Karte ist ein Zufallszahlengenerator, vermute eine Karte in einem Kartenspiel darstellt, oder Sie können den Setup-Code zu ändern, um ein Deck der "karten" geschnitten, um zu sehen, der als erster in einem Kartenspiel geht.

Schritt 1: Hardware

  1. Ratet / pick AttinyCard

    ATtiny85
    Arduino als ISP-Programmer
    5V Netzteil
    Schieberegister-LCD

    Taktile Taster
    10kOhm Widerstand

Schritt 2: Software


  1. Sketch fordert Sie auf, eine Karte vermutlich von einem Deck aus 52 Karten abholen. Drücken Sie die Taste, um die Zufallssequenz zu stoppen. Zeigt die Zahl nach dem Zufallsprinzip in erster Reihe ausgesucht von 52. Karte dargestellt in der zweiten Zeile.
      #include <LiquidCrystal595.h>
     LiquidCrystal595 lcd (0,1,2);
    
     int val;  // Zufällige Karte Wert
     const int Taste = 4;  // Button pin
     int Buttonstate = 0;              
    
     Leere setup () {
       lcd.begin (16,2);
       lcd.clear ();
       lcd.setCursor (0,0);
       lcd.print ("WÄHLEN SIE EINE KARTE");
       //lcd.print("CUT ");
       lcd.setCursor (0,1);
       lcd.print ("erinnere");
       //lcd.print("THE DECK ");
       pinMode (Taste INPUT); 
       Verzögerung (5000);
     }
    
     Leere Schleife () {
     val = random (1,52);
     Button = digitalRead (Taste);
    
     if (Button == HIGH) {
       lcd.clear ();
       lcd.setCursor (6,0);
       lcd.print (Val);
     
     Schalter (val) {
         Fall 1: lcd.setCursor (4,1);
         lcd.print ("ACE S");
           Unterbrechung;
         Fall 2: lcd.setCursor (4,1);
         lcd.print ("2 S");
           Unterbrechung;
         Fall 3: lcd.setCursor (4,1);
         lcd.print ("3 S");
           Unterbrechung;
         Fall 4: lcd.setCursor (4,1);
         lcd.print ("4 S");
           Unterbrechung;
         Fall 5: lcd.setCursor (4,1);
         lcd.print ("5 S");
           Unterbrechung;
         Fall 6: lcd.setCursor (4,1);
         lcd.print ("S 6");
           Unterbrechung;
         Fall 7: lcd.setCursor (4,1);
         lcd.print ("7 S");
           Unterbrechung;
         Fall 8: lcd.setCursor (4,1);
         lcd.print ("8 S");
           Unterbrechung;
         Fall 9: lcd.setCursor (4,1);
         lcd.print ("9 S");
           Unterbrechung;
         Fall 10: lcd.setCursor (4,1);
         lcd.print ("10 S");
           Unterbrechung;
         Fall 11: lcd.setCursor (4,1);
         lcd.print ("JACK S");
           Unterbrechung;
         Fall 12: lcd.setCursor (4,1);
         lcd.print ("QUEEN S");
           Unterbrechung;
         Fall 13: lcd.setCursor (4,1);
         lcd.print ("KING S");
           Unterbrechung;  
         Fall 14: lcd.setCursor (4,1);
         lcd.print ("ACE D");
           Unterbrechung;
         Fall 15: lcd.setCursor (4,1);
         lcd.print ("D 2");
           Unterbrechung;
         Fall 16: lcd.setCursor (4,1);
         lcd.print ("3 D");
           Unterbrechung;
         Fall 17: lcd.setCursor (4,1);
         lcd.print ("D 4");
           Unterbrechung;
         Fall 18: lcd.setCursor (4,1);
         lcd.print ("5 D");
           Unterbrechung;
         Fall 19: lcd.setCursor (4,1);
         lcd.print ("6 D");
           Unterbrechung;
         Fall 20: lcd.setCursor (4,1);
         lcd.print ("7 D");
           Unterbrechung;
         Fall 21: lcd.setCursor (4,1);
         lcd.print ("8 D");
           Unterbrechung;
         Fall 22: lcd.setCursor (4,1);
         lcd.print ("9 D");
           Unterbrechung;
         Fall 23: lcd.setCursor (4,1);
         lcd.print ("10 D");
           Unterbrechung;
         Fall 24: lcd.setCursor (4,1);
         lcd.print ("JACK D");
           Unterbrechung;
         Fall 25: lcd.setCursor (4,1);
         lcd.print ("QUEEN D");
           Unterbrechung;
         Fall 26: lcd.setCursor (4,1);
         lcd.print ("KING D");
           Unterbrechung;
         Fall 27: lcd.setCursor (4,1);
         lcd.print ("ACE C");
           Unterbrechung;
         Fall 28: lcd.setCursor (4,1);
         lcd.print ("C 2");
           Unterbrechung;
         Fall 29: lcd.setCursor (4,1);
         lcd.print ("3 CLUB");
           Unterbrechung;
         Fall 30: lcd.setCursor (4,1);
         lcd.print ("4 C");
           Unterbrechung;
         Fall 31: lcd.setCursor (4,1);
         lcd.print ("5 ° C");
           Unterbrechung;
         Fall 32: lcd.setCursor (4,1);
         lcd.print ("6 C");
           Unterbrechung;
         Fall 33: lcd.setCursor (4,1);
         lcd.print ("7 C");
           Unterbrechung;
         Fall 34: lcd.setCursor (4,1);
         lcd.print ("8 C");
           Unterbrechung;
         Fall 35: lcd.setCursor (4,1);
         lcd.print ("9 C");
           Unterbrechung;
         Fall 36: lcd.setCursor (4,1);
         lcd.print ("C 10");
           Unterbrechung;
         Fall 37: lcd.setCursor (4,1);
         lcd.print ("Jack C");
           Unterbrechung;
         Fall 38: lcd.setCursor (4,1);
         lcd.print ("QUEN C");
           Unterbrechung;
         Fall 39: lcd.setCursor (4,1);
         lcd.print ("KING C");
           Unterbrechung;
         Fall 40: lcd.setCursor (4,1);
         lcd.print ("ACE H");
           Unterbrechung;
         Fall 41: lcd.setCursor (4,1);
         lcd.print ("H 2");
           Unterbrechung;
         Fall 42: lcd.setCursor (4,1);
         lcd.print ("3 H");
           Unterbrechung;
         Fall 43: lcd.setCursor (4,1);
         lcd.print ("H 4");
           Unterbrechung;
         Fall 44: lcd.setCursor (4,1);
         lcd.print ("5 H");
           Unterbrechung;
         Fall 45: lcd.setCursor (4,1);
         lcd.print ("6 H");
           Unterbrechung;
         Fall 46: lcd.setCursor (4,1);
         lcd.print ("7 H");
           Unterbrechung;
         Fall 47: lcd.setCursor (4,1);
         lcd.print ("8 H");
           Unterbrechung;
         Fall 48: lcd.setCursor (4,1);
         lcd.print ("9 H");
           Unterbrechung;
         Fall 49: lcd.setCursor (4,1);
         lcd.print ("10 H");
           Unterbrechung;
         Fall 50: lcd.setCursor (4,1);
         lcd.print ("Jack H");
           Unterbrechung;
         Fall 51: lcd.setCursor (4,1);
         lcd.print ("QUEEN H");
           Unterbrechung;
         Fall 52: lcd.setCursor (4,1);
         lcd.print ("KING H");
           Unterbrechung;
       }
      } 
     } 

Schritt 3: Ergebnisse


  1. Dies ist mein zweiter instructable mit meinem schon gemacht 5V Netzteil, Attiny Programmierer und LCD-Schieberegister breadboarded Schaltungen. Dies ist ein praktischer realen Einsatz eines Mikrocontrollers. Sehr einfach. Eine momentane Schaltfläche und eines Widerstandes an einem der Stifte des ATtiny85 verbunden. Ein Gruß erste auf dem Bildschirm angezeigt für ca. 5 Sekunden und dann wird der Zufallszahlengenerator beginnt. Durch Drücken der Taste stoppt die Zufallszahlengenerator und der ausgewählte Wert und die entsprechende Karte wird auf dem LCD angezeigt.
    Hier ist ein Video auf Instagramkayohzee