Arduino Forum

International => Deutsch => Topic started by: Gibsonuser on Dec 07, 2013, 01:31 am

Title: problem bei byte abfragen, es funktioniert immer nur ein byte statt mehreren
Post by: Gibsonuser on Dec 07, 2013, 01:31 am
Hallo,
wie im vorherigen Thread bin ich grad dabei  Sensor Daten zu verarbeiten.
Ich habe mehrere Bytes angelegt die sich aufgrund von Sensoren immer ändern.
Jetzt möchte ich gerne bei Änderung der Bits Befehle verteilen. Leider funktioniert immer nur ein Byte und nicht zwei oder mehrere, warum? Habe zwei verschiedene Codes geschrieben, klassisch mit dem verschieben und mit der BitRead funktion aber seht selbst:

Code: [Select]
for (int n; n <= 7 ; n++)
{
  int y=0;
  y=(switchVar1 >> n) & 1;
  if (y==0)
  Tlc.set(n*3,4095);
  else
  Tlc.clear();
}

for (int n; n <= 7 ; n++)
{
  int y=0;
  y=(switchVar2 >> n) & 1;
  if (y==0)
  Tlc.set(n*3+24,4095);
  else
  Tlc.clear();
}


Tlc.update();


und

Code: [Select]
  for(int x = 0; x <= 7; x++)
  {
  if (bitRead(switchVar1,x) == 0)
  Tlc.set(x*3,4095);
  else 
  Tlc.clear(); 
  }
 
  for(int t = 0; t <= 7; t++)
  {
  if (bitRead(switchVar2,t) == 0)
  Tlc.set(t*3+24,4095);
  else 
  Tlc.clear(); 
  }
Tlc.update();


Hab kein plan warum aber es funktioniert  immer nur das letzte Byte.  In dem Fall "switchVar2", wenn ich es vertausche und switchVar1 nach unten setze funktioniert nur switchVar1  und switchVar2 funktioniert nicht mehr.

Seit gnädig  :)
Gruß
Title: Re: problem bei byte abfragen, es funktioniert immer nur ein byte statt mehreren
Post by: uwefed on Dec 07, 2013, 08:01 am
wegen
Code: [Select]
Tlc.clear();
Grüße Uwe
Title: Re: problem bei byte abfragen, es funktioniert immer nur ein byte statt mehreren
Post by: Gibsonuser on Dec 07, 2013, 03:57 pm
Danke war echt ein dummer Fehler...
Gibt es für den Tlc 5940 bzw allgemein Algorithmen für Effekte wie zum Beispiel den Plasma (Rainbow) Effekt?
Wenn ja wo kann man die finden?
Gruß