Hallo nochmal, kurzer Endbericht:
die Assembler nops habe ich durch "NOP()" ersetzt und das funktioniert erwartungsgemäß einwandfrei.
Mit den Delay wäre etwas problematisch, da ein NOP in meinem Falle bei 32MHz Clock 125ns entspricht.
die delay funktion ist in Millisekunden.
es soll wohl delay_ms und delay_us geben, die meckert er mich an, da fehlt wohl eine Bibliothek.
Aber nichts desto trotz, es laufen grad 50 LEDs einwandfrei, aber das hatte auch noch etwas gedauert, denn
man sollte während des Ausschiebens der Daten alle Interrrupts sperren, sonst hat man Randomize Rainbow
Zudem waren ab LED 21 die Farben falsch. Zuerst dachte ich an ein Speicherproblem, aber das war es nicht.
Da war doch tatsächlich die 21te LED auf dem Band defekt. Zum Glück hatte ich noch einzelne und habe sie ausgetauscht.
Nun leuchten alle 50 wie sie sollen.
Bei voller Ansteuerung in weiss kommt schon so einiges an Strom zusammen.
Das sind dann 20mA * 3 Leds = 60mA * 50 Leds = 3,05 Ampere.
Achja, noch was: Bei kurzzeitiger Unterbrechung der Versorgungsspannung, gehen die LED zwar aus, es bleiben aber die Daten in den 50 LEDs erhalten.
So 3 bis 5 Sekunden habe ich ausprobiert, ohne dass ich erenut Daten reinschieben muss.
Lesezeichen