$nomod51                ;der Modus fuer 8051 wird abgeschaltet

$debug

$nolist                 ;es wird kein Listing fuer reg535 erstellt

$include(reg535.pdf)    ;die 80535-spezifischen Daten

$list                   ;es wird ein Listing erstellt

$ title (AA_EXTX.A51)

;------------------------------------------------------------------------

;Programmbeschreibung

;------------------------------------------------------------------------

;Programm:

;Der externe Datenspeicher wird von 2000H bis 3000H beschrieben.

;Taster 1 = AAH, Taster 2 mit 00.

;

;Datum: 4.11.2002

;Programmiert: J. Walter

;WS 2002

 

;Verwendete Einspruenge: keine

;

;Verwendete Unterprogramme: keine

;

;

;Verwendete Register und Variable:

;Registerbank(0)

;R2

;

;Kommentar:

;

;Aenderungen:

;Datum:

;

;

;------------------------------------------------------------------------

;Initialisierungsteil für allgemeine Konstanten

;------------------------------------------------------------------------

 

 

CSEG AT 0H              ;Legt absolute Codesegmentadresse auf 0h

jmp INIT

;

;------------------------------------------------------------------------

;Interrupt-Vektoren

;------------------------------------------------------------------------

 

 

;------------------------------------------------------------------------

;Initialisierungsteil für On-Chip Peripherie

;------------------------------------------------------------------------

ORG 100H                ;Programmstart bei 100H

INIT:

 

;------------------------------------------------------------------------

;Programmschleife

;------------------------------------------------------------------------

 

ABFRAGE:

jnb P1.1,AA       ;Abfrage Taste 1

jnb P1.2,NN       ;Abfrage Taste 2

ajmp ABFRAGE

 

AA:

mov DPTR,#2000H         ;Anfangsadresse externer D-Speicher

mov A,#0AAH       ;Akkumulator mit Daten laden

SCHLEIFE:

movx @DPTR,A            ;Inhalt von Akku in Speicherzelle welche

                  ;durch R0 adressiert ist

inc DPTR          ;Adresszeiger +1

mov R0,DPH        ;

cjne R0,#30H,SCHLEIFE   ;30H im High-Byte erreicht?

 

ajmp ABFRAGE

 

NN:

mov DPTR,#2000H         ;Anfangsadresse externer D-Speicher

mov A,#00H        ;Akkumulator mit Daten laden

SCHLEIFE1:

movx @DPTR,A            ;Inhalt von Akku in Speicherzelle welche

                  ;durch R0 adressiert ist

inc DPTR          ;Adresszeiger +1

mov R0,DPH        ;

cjne R0,#30H,SCHLEIFE1  ;30H im High-Byte erreicht?

 

jmp ABFRAGE

end