mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Nerdkits LED-Heart - Duty-Cycle wie in ASM lösen?


Autor: Marcel P. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Marcel Papst (phpmysqlfreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
-Nachtrag-

Erstmal meinen Account zur Identifizierung wieder aktualisiert.

Autor: Sascha Weber (sascha_w)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Marcel Papst (phpmysqlfreak)
Datum:

Bewertung
0 lesenswert
nicht 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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.