001
15.07.2006, 23:32 Uhr
~goblack3
Gast
|
Hy,
also heut abend hab ich kein kopf mehr dafür noch alles zu machen. muss mir den rest erst mal in ruhe anschauen aber sieht eigentlich schonmal ganz gut aus aber so weit schonmal: -dein einzeiler "haupt" ist eine endlos schleife,du solltest keine marke benutzen, du solltest "sjmp $" benutzen um auf den interrupt zu warten (ist besser so) -hast du vielleicht eine includedatei mit unterprogrammen für den LCD? so müsstest du den wert nur in das vom unterprogramm verwendete register schreiben und das unterprogramm aufrufen -für was brauchst du denn eine tastatur für eine uhr? aber hier der code dafür (als u-prog), musst eben nur noch den port umstellen bei mir ist das p0 wie du ja siehst start: MOV P0,#1110$1111b JB P0.0,m2 MOV p1,#0000$0110b m2: MOV P0,#1110$1111b JB P0.1,m3 MOV p1,#0101$1011b m3: MOV P0,#1110$1111b JB P0.2,m4 MOV p1,#0100$1111b m4: CALL sek MOV P0,#1101$1111b JB P0.0,m5 MOV p1,#0110$0110b m5: MOV P0,#1101$1111b JB P0.1,m6 MOV p1,#0110$1101b m6: MOV P0,#1101$1111b JB P0.2,m7 MOV p1,#0111$1101b m7: CALL sek MOV P0,#1011$1111b CALL sek JB P0.0,m8 MOV p1,#1000$0111b m8: MOV P0,#1011$1111b JB P0.1,m9 MOV p1,#1111$1111b m9: MOV P0,#1011$1111b JB P0.2,mstern MOV p1,#1110$1111b mstern: CALL sek MOV P0,#0111$1111b CALL sek JB P0.0,m0 MOV p1,#1011$1111b m0: MOV P0,#0111$1111b JB P0.1,mraute MOV p1,#33h mraute: MOV P0,#0111$1111b JB P0.2,m1 MOV p1,#37h m1:
; CALL sek
JMP start
sek: MOV 79H,#1 zsek1: MOV 78H,#2 zsek2: MOV 77H,#4
DJNZ 77H,$ DJNZ 78H,zsek2 DJNZ 79H,zsek1
RET
bis dann |