Partymodus Zufallslichter

Gast #2599576
Lesenswert?

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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren