- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 19

Thema: Problem mit Zufalls Tabelle (Atmega32)

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    23.01.2013
    Beiträge
    9

    Problem mit Zufalls Tabelle (Atmega32)

    Hallo,
    ich möchte gerne eine Zufalls Tabelle, für einen Led Cube erzeugen.
    Es sollen also immer zufällig irgendwelche Led's leuchten.
    Meine Idee ist diese:

    Code:
    $regfile = "m32def.dat"
    $hwstack = 32
    $swstack = 10
    $framesize = 40
    $crystal = 8000000
    '----------------------------------------------------------------------------------
    Ddra = 11111111                                             'Ausgänge setzten
    Ddrb = 00001111
    Ddrc = 01111111
    Ddrd = 10000000
    '----------------------------------------------------------------------------------
    'Variablen setzen
    Dim Bild As Word
    Dim Maxbild As Word
    Dim Ebene As Byte
    Dim Dauer As Byte
    Dim Temp As Word
    Dim Datentabelle As Word
    Dim I As Byte
    Dim Random(64) As Byte
    Dim Dauer2 As Word
    '---------------------------------------------------------------------------------
    'Hauptschleife
    
    Do
    Maxbild = 12                                                'Maxbild = Anzahl der Bilder
    Maxbild = Maxbild - 1                                       'Maxbild -1, da er bei 0 anfängt zu zählen
    
    For Bild = 0 To Maxbild                                     'Bilder ablaufen
    
       For Dauer = 0 To 27                                      'Dauer des Bildes
    
          For Ebene = 0 To 3                                    'Anzahl der Ebenen (bei mir 4)
             '----------------------------------------------------------------------------------
             Datentabelle = Bild * 16                           'Berechnen der Tabelle
             Temp = Ebene * 4
             Datentabelle = Datentabelle + Temp
              '---------------------------------------------------------------------------------
              'Ausgabe des Bildes
          Porta = Lookup(datentabelle , Muster)
          Datentabelle = Datentabelle + 1
          Portb = Lookup(datentabelle , Muster)
          Datentabelle = Datentabelle + 1
          Portc = Lookup(datentabelle , Muster)
          Datentabelle = Datentabelle + 1
          Portd = Lookup(datentabelle , Muster)
    
          Waitms 5
          '----------------------------------------------------------------------------------------
           If Ebene = 3 Then
           Exit For
           End If
          Next Ebene
          If Dauer = 27 Then
          Exit For
          End If
    
       Next Dauer
       If Bild = Maxbild Then
       Exit For
       End If
    Next Bild
    'Ende der vor eingestellten Bilder
    
    '--------------------------------------------------------------------------------------------
    'Anfang Zufalls Schleife
    For Dauer2 = 0 To 1000                                      'Ein Vorläufiger Wert, wie lang die Zufalls schleife laufen soll
       '-----------------------------------------------------------------------------------------
       'Dem Array wird ein Zufalls bit übergeben
       For I = 1 To 64
          Random(i) = Rnd(1)
          If I = 64 Then Exit For
       Next I
         '---------------------------------------------------------------------------------------
         'Ausgabe des Bildes
       For Dauer = 0 To 27
    
          For Ebene = 0 To 3
               Temp = Ebene * 4
    
               Porta = Lookup(temp , Rand)
               temp = temp + 1
               Portb = Lookup(temp , Rand)
               Temp = Temp + 1
               Portc = Lookup(temp , Rand)
               Temp = Temp + 1
               Portd = Lookup(temp , Rand)
    
                If Ebene = 3 Then Exit For 
           Next Ebene
       If Dauer = 27 Then Exit For
       Next Dauer
    If Dauer2 = 1000 Then Exit For
    Next Dauer2
    'Ende der Zufalls schleife
      '------------------------------------------------------------------------------------------
    Loop
    
    End
    '---------------------------------------------------------------------------------------------
    'Hier nun mein Problem, gibt es eine Möglichkeit die Variablen aus dem Array so in die Tabelle zu geben?
    Rand:
    Data &B&RANDOM(1)0000000 , &B00000001 , &B00001000 , &B00000000
    Data &B00000000 , &B00000000 , &B00010000 , &B00000000
    Data &B00000000 , &B00000000 , &B00100000 , &B00000000
    Data &B00000000 , &B00000000 , &B01000000 , &B00000000
     '-------------------------------------------------------------------------------------------
    
    
    
    Muster:                                                     'Bilder die Ablaufen sollen
    $include "muster.txt"

    Was meint ihr?
    Ist es möglich das so irgendwie so hin zu bekommen, oder bin ich auf dem Holzweg?

    Gruß
    Lars
    Geändert von Lars Schütz (27.01.2013 um 21:29 Uhr)

Ähnliche Themen

  1. [ERLEDIGT] Suche Schaltung für Zufalls Ein/Aus Intervalle
    Von MerlinTheWizzard im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 07.04.2011, 14:52
  2. Pseudo-Zufalls-Impulse-Generator
    Von Maurice M. im Forum AVR Hardwarethemen
    Antworten: 8
    Letzter Beitrag: 12.01.2010, 09:58
  3. Problem mit optischer Maus an STK500 mit ATMega32
    Von collatz im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 21.04.2008, 20:17
  4. Timer2 Problem mit ATmega32
    Von Maverick83 im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 05.06.2007, 19:50
  5. STACK Problem mit BasCom ATMega32
    Von Chris266 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 18.04.2005, 11:36

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress