矩陣鍵盤搭配電子琴再加音樂盒 音樂盒作動不正常 |
答題得分者是:阿信
|
cheng07
一般會員 發表:8 回覆:12 積分:4 註冊:2005-05-09 發送簡訊給我 |
我的想法是 4*4矩陣鍵盤 1~9是電子琴 A~F是個別的音樂盒
現在遇到的瓶頸是
當我鍵盤按下A時
音樂盒只會響該曲目的第一個音 後面的音都不會出來
又得麻煩各位了>___<
ORG 0000H ; CKEY: MOV P2,#01111111B JNB P2.3,KEY0 JNB P2.2,KEY1 JNB P2.1,KEY2 JNB P2.0,KEY3 ; MOV P2,#10111111B JNB P2.3,KEY4 JNB P2.2,KEY5 JNB P2.1,KEY6 JNB P2.0,KEY7 ; MOV P2,#11011111B JNB P2.3,KEY8 JNB P2.2,KEY9 JNB P2.1,KEYA JNB P2.0,KEYB ; MOV P2,#11101111B JNB P2.3,KEYC JNB P2.2,KEYD JNB P2.1,KEYE JNB P2.0,KEYF AJMP CKEY ; KEY0: MOV R6,#170 AJMP AOUT KEY1: MOV R6,#150 AJMP AOUT KEY2: MOV R6,#134 AJMP AOUT KEY3: MOV R6,#126 AJMP AOUT KEY4: MOV R6,#113 AJMP AOUT KEY5: MOV R6,#100 AJMP AOUT KEY6: MOV R6,#95 AJMP AOUT KEY7: MOV R6,#85 AJMP AOUT KEY8: MOV R6,#75 AJMP AOUT KEY9: MOV R6,#67 AJMP AOUT KEYA: MOV DPTR,#MUSA ;問題所在 CONT: CLR A MOVC A,@A DPTR CJNE A,#40,OK AJMP CKEY OK: PUSH ACC INC DPTR CLR A MOVC A,@A DPTR MOV R4,A POP ACC KEYB: MOV R6,#67 AJMP AOUT KEYC: MOV R6,#75 AJMP AOUT KEYD: MOV R6,#85 AJMP AOUT KEYE: MOV R6,#95 AJMP AOUT KEYF: MOV R6,#100 AJMP AOUT ; CHK1: CJNE A,#01,CHK2 ACALL DOL CHK2: CJNE A,#02,CHK3 ACALL REL CHK3: CJNE A,#03,CHK4 ACALL MIL CHK4: CJNE A,#04,CHK5 ACALL FAL CHK5: CJNE A,#05,CHK6 ACALL SOL CHK6: CJNE A,#06,CHK7 ACALL LAL CHK7: CJNE A,#07,CHK11 ACALL SIL CHK11: CJNE A,#11,CHK12 ACALL DO CHK12: CJNE A,#12,CHK13 ACALL RE CHK13: CJNE A,#13,CHK14 ACALL MI CHK14: CJNE A,#14,CHK15 ACALL FA CHK15: CJNE A,#15,CHK16 ACALL SO CHK16: CJNE A,#16,CHK17 ACALL LA CHK17: CJNE A,#17,CHK21 ACALL SI CHK21: CJNE A,#21,CHK22 ACALL DOH CHK22: CJNE A,#22,CHK23 ACALL REH CHK23: CJNE A,#23,CHK24 ACALL MIH CHK24: CJNE A,#24,CHK25 ACALL FAH CHK25: CJNE A,#25,CHK26 ACALL SOH CHK26: CJNE A,#26,CHK27 ACALL LAH CHK27: CJNE A,#27,CHK0 ACALL SIH CHK0: CJNE A,#00,CONT2 ACALL NON CONT2: INC DPTR AJMP CONT ; DOL: MOV R6,#254 MOV R5,#16 AJMP OUTPUT REL: MOV R6,#226 MOV R5,#18 AJMP OUTPUT MIL: MOV R6,#201 MOV R5,#21 AJMP OUTPUT FAL: MOV R6,#190 MOV R5,#22 AJMP OUTPUT SOL: MOV R6,#170 MOV R5,#25 AJMP OUTPUT LAL: MOV R6,#150 MOV R5,#28 AJMP OUTPUT SIL: MOV R6,#134 MOV R5,#31 AJMP OUTPUT DO: MOV R6,#126 MOV R5,#33 AJMP OUTPUT RE: MOV R6,#113 MOV R5,#37 AJMP OUTPUT MI: MOV R6,#100 MOV R5,#41 AJMP OUTPUT FA: MOV R6,#95 MOV R5,#44 AJMP OUTPUT SO: MOV R6,#85 MOV R5,#49 AJMP OUTPUT LA: MOV R6,#75 MOV R5,#55 AJMP OUTPUT SI: MOV R6,#67 MOV R5,#62 AJMP OUTPUT DOH: MOV R6,#63 MOV R5,#65 AJMP OUTPUT REH: MOV R6,#56 MOV R5,#73 AJMP OUTPUT MIH: MOV R6,#50 MOV R5,#82 AJMP OUTPUT FAH: MOV R6,#47 MOV R5,#88 AJMP OUTPUT SOH: MOV R6,#42 MOV R5,#98 AJMP OUTPUT LAH: MOV R6,#37 MOV R5,#110 AJMP OUTPUT SIH: MOV R6,#33 MOV R5,#124 AJMP OUTPUT NON: MOV R6,#33 MOV R5,#124 AJMP OUTPUT OUTPUT: PUSH 05 LOOP: CJNE A,#00,SOUND AJMP MUTE SOUND: CLR P3.4 MUTE: ACALL DELAY SETB P3.4 ACALL DELAY DJNZ R5,LOOP POP 05 DJNZ R4,OUTPUT REST: MOV R6,#170 MOV R5,#50 WAIT: ACALL DELAY DJNZ R5,WAIT RET ; AOUT: CLR P3.4 ACALL DELAY SETB P3.4 ACALL DELAY AJMP CKEY ; DELAY: MOV B,R6 DL: MOV R7,#6 DJNZ R7,$ DJNZ R6,DL MOV R6,B RET ; MUSA: DB 16,06,21,06,25,06,24,06,17,06,17,06,16,02,16,06,15,06,23,06,24,06,25,06,21,06,21,06 DB 17,02,17,06,16,06,16,02,17,02,21,06,21,06,22,02,14,08,22,02,22,06,23,06,21,06,15,06 DB 17,06,16,06,15,06,16,06,16,06,21,06,25,06,24,06,17,06,17,06,16,02,16,06,15,06,23,06 DB 24,06,25,06,25,06,25,06,23,02,25,06,24,06,22,06,23,06,24,06 DB 40 ; END |
阿信
版主 發表:111 回覆:983 積分:813 註冊:2005-03-10 發送簡訊給我 |
KEY9: MOV R6,#67 AJMP AOUT KEYA: MOV DPTR,#MUSA ;問題所在 CONT: CLR A MOVC A,@A DPTR CJNE A,#40,OK AJMP CKEY OK: PUSH ACC INC DPTR CLR A MOVC A,@A DPTR MOV R4,A POP ACC KEYB: MOV R6,#67 AJMP AOUT不是要把查到的值給R5 R6再call OUTPUT嗎 (OUTPUT改為用call) 沒看到你的JMP OUTPUT 請使用單步執行做除錯 ------------------- 美好的事物 稍縱即逝 |
cheng07
一般會員 發表:8 回覆:12 積分:4 註冊:2005-05-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |