Forum: Mikrocontroller und Digitale Elektronik Lookup Table mit Inline Assembler


von Manfred Frei (Gast)


Lesenswert?

Hallo Experten,

ich programmiere einen ATmega16 in C mit WINAVR. Funktioniert bisher 
prima. Jetzt möchte ich eine 256 Byte große Lookup-Table ins Flash 
ablegen, so dass ich mit dem Z-Pointer dann darauf zugreifen kann.

Kann mir jemand sagen, wie ich so eine Tabelle mit Inline Assembler ins 
Flash bekomme? Ich habe schon zig Threads abgeklappert und alles 
mögliche daraus zusammengeflickt, aber der Compiler gibt immer 
Fehlermeldungen aus wie z.B.

"C:\Users\AppData\Local\Temp\ccQnVRCc.s:18: Error: junk at end of line, 
first unrecognized character is `.'
"

Hat jemand einen Tip für mich oder einen Link zu einer guten 
Beschreibung? Oder kann man mit Inline-Assembler gar keine Tabellen 
ablegen?

Danke für jegliche Hinweise!

Manfred

von troll (Gast)


Lesenswert?

Zeig mal den Quellcode zu der Fehlermeldung.

von Manfred Frei (Gast)


Lesenswert?

Hallo,

hier der Quellcode für die Tabelle (Tabelle etwas gekürzt):
1
asm ( "sine:"
2
  ".byte 0x80,0x83,0x86,0x89,0x8c,0x8f,0x92,0x95"
3
  ".byte 0x80,0x83,0x86,0x89,0x8c,0x8f,0x92,0x95" );

Später möchte ich dann mit dem Z-Pointer und der Adresse "sine" auf die 
Tabelle zugreifen.

vielen Dank schon vorab!

Manfred

von Johann L. (gjlayde) Benutzerseite


Lesenswert?


von Manfred Frei (Gast)


Lesenswert?

Danke für den Link, das sieht sehr gut aus. Habe ich nicht selbst 
gefunden...

Ich teste und melde mich mit dem Ergebnis!

Manfred

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.