Nerdkits LED-Heart - Duty-Cycle wie in ASM lösen?

Gast #2018883
Lesenswert?
• ▲
▼
Hallo Forum,


ich lese schon seit langer Zeit regelmäßig mit, und möchte mich erstmal
bei allen Bedanken, die hier vielen Leuten mit ihrem teilweise sehr 
fundiertem Wissen helfen.

Nun bin ich aber auf ein Problem gestoßen, das in mir eine Art 
Denk-Sperre auslöst.

Im Anhang befindet sich der Quelltext vom LED-Herz mit LCD von Nerdkits.
(Link: http://www.nerdkits.com/videos/ledheart/ )
Die angewandte Funktion zur Einstellung der Helligkeit für jede LED
ist für mich in C absolut verständlich.

Das genannte Problem ist nun:
Wie kann ich sowas in ASM/Assembler realisieren?

Hardware-Technisch soll das ganze am Ende auf einem AtMega8 oder 
AtTiny2313 laufen - Anfangs mit weniger LED's.

Ich habe schon an eine Art Tabelle im SRAM gedacht mit 16 
Helligkeits-Stufen (1 Nibble), nur wie kann ich die dann korrekt 
ansprechen, eintragen (bei Spannungsverlust, auslesen?

Ich stehe irgendwie zur Zeit voll auf dem Schlauch, was diese Umsetzung 
von C auf Assembler angeht. - Andere Programme habe Problemlos 
hingekriegt.

Vielen Dank schonmal für eure Hilfe.

Gruß,
Marcel
Angehängte Dateien:
#2019193
Lesenswert?
• ▲
▼
Marcel P. schrieb:
> Ich habe schon an eine Art Tabelle im SRAM gedacht mit 16
> Helligkeits-Stufen (1 Nibble), nur wie kann ich die dann korrekt
> ansprechen, eintragen (bei Spannungsverlust, auslesen?
eine Tabelle mit festen Daten legt man in den Flashspeicher mit
.db   aa,bb,cc,....
ausgelesen werden die Daten mit lpm rx,Z in Z ist die Adresse im Flash 
in rx landet der Wert

Sascha
#2019215
Lesenswert?
• ▲
▼
Sascha Weber schrieb:
> Marcel P. schrieb:
>> Ich habe schon an eine Art Tabelle im SRAM gedacht mit 16
>> Helligkeits-Stufen (1 Nibble), nur wie kann ich die dann korrekt
>> ansprechen, eintragen (bei Spannungsverlust, auslesen?
> eine Tabelle mit festen Daten legt man in den Flashspeicher mit
> .db   aa,bb,cc,....
> ausgelesen werden die Daten mit lpm rx,Z in Z ist die Adresse im Flash
> in rx landet der Wert
>
> Sascha

Hallo Sascha,

.db-Direktiven habe ich bereits für meinen 3x3x3 LED-Cube genutzt.
Dort habe ich aber lediglich den Zustand (Ein/Aus) für die LEDs 
gespeichert.

Mein einziges Problem ist jedoch die Zuordnung der 
Helligkeitsinformation zu den einzelnen LEDs. In C ist das ja schnell 
mit einem Array gemacht (siehe betr. C-Quelltext) - nur beim Übersetzen 
in Assembler habe ich Probleme.

Tut mir leid, wenn ich mich in meinem ersten Beitrag nicht korrekt bzw. 
konkret genug ausgedrückt habe.

Gruß, Marcel

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.