panakart Δημοσ. 4 Ιουνίου 2010 Δημοσ. 4 Ιουνίου 2010 Καλισπερα θα ηθελα την βοήθεια σας εχω σαν εργασια να συνδεσω δυο κωδικες του 8051 εναν που εμφανηζει γαρμματα και ενα για ηχο.Αυτο που πρεπει να κανουμε ειναι να βγαζει ενα γραμμα μετα να ακουγεται ο ηχος ,παλι γραμμα ηχος κτλ.Οριστε οι δυο κωδικες: ORG 000H CLR P1.7 START: MOV DPTR,#TABLE MOV R0,#10 ;TOTAL 10 CHAR. NEXTC: MOV R3,#20 REPEAT: MOV R2,#10000000B ;COLUMN MOV R1,#0 NEXT: MOV A,R1 ;DATA POINTER MOVC A,@A+DPTR MOV P2,A MOV A,R2 MOV P0,A CALL DELAY RR A MOV R2,A MOV P0,#00H ;TURN OFF LED INC R1 CJNE R1,#5,NEXT DJNZ R3,REPEAT INC DPTR ;NEXT CHAR. INC DPTR INC DPTR INC DPTR INC DPTR DJNZ R0,NEXTC MOV P0,#00H ;TURN OFF LED CALL GYUI JMP START ;========================================= TABLE DB FEH,90H,90H,90H,60H ;P DB 3EH,48H,88H,48H,3EH ;A DB FEH,20H,10H,08H,FEH ;N DB 3EH,48H,88H,48H,3EH ;A DB 7CH,82H,92H,94H,5EH ;G DB 00H,82H,FEH,82H,00H ;I DB 7CH,82H,82H,82H,7CH ;O DB 80H,80H,FEH,80H,80H ;T DB 00H,82H,FEH,82H,00H ;I DB 64H,92H,92H,92H,4CH ;S ;========================================= ; DELAY 5mS ;========================================= DELAY: MOV R6,#10 DL1: MOV R7,#249 DJNZ R7,$ DJNZ R6,DL1 RET GYUI: MOV R6,#0 DL2: MOV R7,#249 DJNZ R7,$ DJNZ R6,DL2 RET END ORG 000H ΗΧΟΣ: START: MOV R0,#100 NEXT2: MOV R1,#200 NEXT1: SETB P3.7 CALL DELAY CLR P3.7 CALL DELAY DJNZ R1,NEXT1 DJNZ R0,NEXT2 CALL DL05S JMP START ;============================== ; DELAY 0.05mS ;============================== DELAY: MOV R7,#25 DJNZ R7,$ RET ;============================== ; DELAY 3S ;============================== DL05S: MOV R5,#30 DL2: MOV R6,#200 DL1: MOV R7,#249 DJNZ R7,$ DJNZ R6,DL1 DJNZ R5,DL2 RET END Αν γνωριζει καποιος θα ηθελα πολυ την βοηθεια του ευχαριστω!
bxenos Δημοσ. 5 Ιουνίου 2010 Δημοσ. 5 Ιουνίου 2010 βρες που τελειώνει το "γράψιμο" ενός χαρακτήρα και παρέμβαλε σαν "διαδικασία" τον κωδικα του ηχου. Εχεις καταλάβει τι κάνει ο κώδικας που έβαλες;
Alchemist` Δημοσ. 5 Ιουνίου 2010 Δημοσ. 5 Ιουνίου 2010 [offtopic] Τι γλώσσα είναι αυτή ρε παιδιά? Assembly? [/offtopic]
panakart Δημοσ. 5 Ιουνίου 2010 Μέλος Δημοσ. 5 Ιουνίου 2010 Εχω καταλαβει το τι κανει,εχω κανει καποιες προσπαθειες το προβλημα ειναι οτι δεν μπορω να βρω καποιο compiler για assembly γλωσσα για να ελέγχω αν υπαρχουν λαθη.Παω δηλαδη στα τυφλα μεχρι να ερθει η μερα που έχω εργαστηριο
bxenos Δημοσ. 5 Ιουνίου 2010 Δημοσ. 5 Ιουνίου 2010 SDCC ASXXXX and ASLINK, a retargettable assembler and linker -> http://sdcc.sourceforge.net/ ή δες στο internet για assembler 8051, simulator κλπ
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.