diff options
Diffstat (limited to 'Bachelor/Mikroprozessorsysteme1/Praktikum2/aufg3/a3.s03')
| -rw-r--r-- | Bachelor/Mikroprozessorsysteme1/Praktikum2/aufg3/a3.s03 | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/Bachelor/Mikroprozessorsysteme1/Praktikum2/aufg3/a3.s03 b/Bachelor/Mikroprozessorsysteme1/Praktikum2/aufg3/a3.s03 new file mode 100644 index 0000000..09fbd72 --- /dev/null +++ b/Bachelor/Mikroprozessorsysteme1/Praktikum2/aufg3/a3.s03 @@ -0,0 +1,56 @@ +LSTOUT-
+$SFR80515.INC
+LSTOUT+
+
+
+ORG 0000h
+MOV DPTR,#0F803h
+MOV A,#92h
+MOVX @DPTR,A
+SETB P1.0
+SETB P1.1
+SETB P1.1
+MOV DPTR,#0F802h
+MOV P5,#01h
+MOV A,#00h
+MOVX @DPTR,A
+
+LAUNCH: JB P1.0, LAUNCH
+PAUSE1: JB P1.2, LOOP1
+ LJMP 8000h
+LOOP1: JNB P1.1, PAUSE1
+
+CLR C
+LOWBYTE: MOV A,P5
+ RLC A
+ MOV P5,A
+ LCALL ZEITVERZ
+
+PAUSE2: JB P1.2, LOOP2
+ LJMP 8000h
+LOOP2: JNB P1.1, PAUSE2
+
+ JC HIGHBYTE
+ SJMP LOWBYTE
+
+HIGHBYTE: MOVX A,@DPTR
+ RLC A
+ MOVX @DPTR,A
+ LCALL ZEITVERZ
+
+PAUSE3: JB P1.2, LOOP3
+ LJMP 8000h
+LOOP3: JNB P1.1, PAUSE3
+
+ JC LOWBYTE
+ SJMP HIGHBYTE
+
+ZEITVERZ: MOV R0,#64h
+EINS: MOV R1,#64h
+ZWEI: MOV R2,#31h
+DREI: DJNZ R2,DREI
+ DJNZ R1,ZWEI
+ DJNZ R0,EINS
+ RET
+
+END
\ No newline at end of file |
