Forum: Mikrocontroller und Digitale Elektronik LookUp-Tabellen (Assembler 8051-Befehlssatz)


von Michael (Gast)


Lesenswert?

hi !

also ich möchte gern ne look-up tab. verwenden....
allerdings hab ich bisher noch nix über soetwas gefunden


könnt ihr mir da weiterhelfen ?
(nur assembler und 8051-befehlssatz)
tutorial's oder ähnliches.....

DANKE

von Andre Adrian (Gast)


Lesenswert?

Schau mal auf www.8052.com im Forum, da wirst du bestimmt fündig.

Gruss

Andre

von Thomas Strauß (Gast)


Lesenswert?

Eine Table-LookUp-Tabelle mit 8051ern:

Tabelle im Programmspeicher: mov DPTR,#tabelle
               next:         clr A
                             movc A,@A+DPTR
                             ... verarbeiten Tabelleninhalt
                             inc DPTR
                              sjmp next

               tabelle:      db 'Hallo Welt'


oder falls die Tabelle kleiner ist:
                             mov B,#1
                nächst:      mov A,B
                             acall _tabelle
                             ... verarbeiten Tabelleninhalt
                             inc B
                             sjmp nächst


                 _tabelle:   movc A,@A+PC
                             reti
                             db 23,24,25,26,27,28,29,30,31,32

und falls B mit 0 initialisiert wird, wird der Operationscode des 
reti-Befehls als Tabellenwert geladen (22d oder 22h) und kann unter 
Umständen eben auch mit in die Tabelle einbezogen werden (Geheimtip?)


Tabellen im Datenspeicher können mit indizierter Adressierung
realisiert werden:
                      tabellenanfang equ 30h
                      tabellenende equ 40h
                      mov R0,#tabellenanfang
nächster-Eintrag:     mov A,@R0
                      ...Tabellenwert verarbeiten
                      cjne R0,#tabellenende,nächster-Eintrag


oder bei größeren Tabellen im ext. Datenspeicher:


                         mov DPTR,#tabellenanfang
             nächst:     movx A,@DPTR
                         ...Tabellenwert verarbeiten
                         inc DPTR
                         mov A,DPH
                         cjne A,#tabellenende-highbyte,nächst
                         mov A,DPL
                         cjne A,#tabellenende-lowbyte,nächst
                         ende

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.