$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 (hansE2.A51) ;------------------------------------------------------------------------ ;Programmbeschreibung ;------------------------------------------------------------------------ ;Programm: ; ; 8192 werte schreiben! also 2000h bis 3FFFh! ; ; ;Erstellt am: Mittwoch, 4. April 2007 13:55:47 ;Programmiert: stefan sattler ; ;Verwendete Einspruenge: keine ; ;Verwendete Unterprogramme: keine ; ; ;Verwendete Register und Variable: ;Registerbank(0) ;R2 ; ;Kommentar: ; ;Aenderungen: ;Geaendert am: Mittwoch, 4. April 2007 13:55:47 ; ; ;------------------------------------------------------------------------ ;Initialisierungsteil fuer allgemeine Konstanten ;------------------------------------------------------------------------ CSEG AT 0H ;Legt absolute Codesegmentadresse auf 0h jmp INIT ; ;------------------------------------------------------------------------ ;Interrupt-Vektoren ;------------------------------------------------------------------------ ;ORG ;------------------------------------------------------------------------ ;Initialisierungsteil fuer On-Chip Peripherie ;------------------------------------------------------------------------ ORG 100H ;Programmstart bei 100H INIT: ;------------------------------------------------------------------------ ;Programmschleife ;------------------------------------------------------------------------ ABFRAGE: jnb P1.1, SCHREIBE_00 jnb P1.2, SCHREIBE_FF jmp ABFRAGE SCHREIBE_00: mov A, #00h ;akku laden mit 00h mov DPTR, #2000h ;R0 laden mit 2000h mov R2, #0h ;R2 laden (zählregister) mit 0h mov R3, #20h ;R3 laden mit 32 für äußere schleife SCHLEIFE: movx @DPTR, A ;schreibt den inhalt der speicherzelle A in die adresse die in DPTR steht! inc DPTR ; ++DPTR (wie C++) djnz R2, SCHLEIFE ;schleife beendet? djnz R3, SCHLEIFE ;äußere schleife beendet? jmp ABFRAGE SCHREIBE_FF: mov A, #0FFh ;akku laden mit FFh mov DPTR, #2000h ;DPTR laden mit 2000h mov R2, #0h ;R2 laden (zählregister) mit 0h mov R3, #20h ;R3 laden mit 32 für äußere schleife jmp SCHLEIFE END