Partymodus Zufallslichter

Gast #2599576
Hey,

ich will eig. nur per Zufall verschiedene LEDs an oder aus schalten. So 
quasi schnell langsam, alles wild per Zufall. Allerdings geht das nicht. 
Die Lampen bleiben aus, ich weiss allerdings nicht woran das liegt.
Habt ihr eine Idee?

Hier der Code der Methode:
1
void partymodus()
2
{
3
  zufallszahl=(get_seed()*1000)%3000;
4
  aktion = zufallszahl%16;
5
  
6
  switch(aktion)
7
  {
8
    case 1:
9
    on1;
10
    delay_ms(zufallszahl);
11
    break;
12
    case 2:
13
    off1;
14
    delay_ms(zufallszahl);
15
    break;
16
    case3:
17
    on2;
18
    delay_ms(zufallszahl);
19
    break;
20
    case4:
21
    off2;
22
    delay_ms(zufallszahl);
23
    break;
24
    case5:
25
    on3;
26
    delay_ms(zufallszahl);
27
    break;
28
    case6:
29
    off3;
30
    delay_ms(zufallszahl);
31
    break;
32
    case7:
33
    on4;
34
    delay_ms(zufallszahl);
35
    break;
36
    case8:
37
    off4;
38
    delay_ms(zufallszahl);
39
    break;
40
    case9:
41
    on5;
42
    delay_ms(zufallszahl);
43
    break;
44
    case10:
45
    off5;
46
    delay_ms(zufallszahl);
47
    break;
48
    case11:
49
    on6;
50
    delay_ms(zufallszahl);
51
    break;
52
    case12:
53
    off6;
54
    delay_ms(zufallszahl);
55
    break;
56
    case13:
57
    delay_ms(zufallszahl);
58
    break;
59
    case14:
60
    delay_ms(zufallszahl);
61
    break;
62
    case15:
63
    onalle;
64
    delay_ms(zufallszahl);
65
    break;
66
    case16:
67
    offalle;
68
    delay_ms(zufallszahl);
69
    break;
70
  }
71
  
72
}

Zufallszahlen werden so gemacht:
1
unsigned short get_seed()
2
{
3
   unsigned short seed = 0;
4
   unsigned short *p = (unsigned short*) (RAMEND+1);
5
   extern unsigned short __heap_start;
6
    
7
   while (p >= &__heap_start + 1)
8
      seed ^= * (--p);
9
    
10
   return seed;
11
}

Danke für eure Hilfe!!

Niine
Gast #2599589
Ahhhh, die Case dinger, da stehen ja die 3 direkt am case.
Tut mir leid, kann ich das irgendwie wieder löschen?

Bei dem highlighting hier sieht man das ja besser.

Danke :)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.