【正文】
四、調(diào)試 24五、收獲和體會(huì) 25六、參考文獻(xiàn) 25單片機(jī)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告一、任務(wù)及要求課程設(shè)計(jì)題目:數(shù)字音樂(lè)盒課程設(shè)計(jì)要求:,驅(qū)動(dòng)蜂鳴器,發(fā)出不同的音調(diào),從而演奏樂(lè)曲(最少三首樂(lè)曲,每首不少于30秒) 2.采用LCD顯示信息 3.開(kāi)機(jī)時(shí)有英文歡迎提示字符,播放時(shí)顯示歌曲序號(hào)(或名稱(chēng)) 4.可通過(guò)功能鍵選擇樂(lè)曲,暫停,播放。也可在LED顯示歌曲號(hào)。~~D7的控制信號(hào)。實(shí)驗(yàn)程序如下:RS BIT 。屏顯on,光標(biāo)on,閃爍on LCALL ENABLE MOV P0,06H 。鍵盤(pán)掃描key: nop nop lcall ks jnz k1 。lk: add a,R4 push acck4: lcall delay1 。列掃描 mov a,R2 JNB ,n2 ljmp n1n2: ljmp keyn1: rl a mov R2,a ljmp k3。 。顯示 。kaiji: mov a,37h cjne a,0fh,DFF MOV P0,80H 。按鍵值播放歌曲。顯示小時(shí)十位 CALL ENABLE CALL WRITE2 MOV A,B ADD A,30H MOV P0,0C9H 。顯示分個(gè)位 CALL ENABLE CALL WRITE2 MOV A,3AH MOV P0,0CDH 。設(shè)光標(biāo)地址 CALL ENABLE MOV DPTR,TABLE2。未到字符串末尾繼續(xù) RETWRITE2: MOV P0,A SETB RS CLR RW CLR E CALL DELAY SETB E RET。,0FEHTABLE2: DB 39。,0FEH TABLE3: DB 30H,31H,32H,33h DB 34H,35H,36H,37H DB 38h,39H,41H,42H DB 43H,44H,45H,46H 。MOV TH1, 3cH 。有鍵跳出 JNZ STOP LJMP NEXT20。***************************************************。定時(shí)器中斷子程序1。顯示秒個(gè)位 CALL ENABLE CALL WRITE2 MOV A,SEC INC A MOV SEC,A XRL A,60X4: JNZ OUTMINSET: MOV SEC,00H 。**************************************每小時(shí)刷新小時(shí)顯示一次 MOV A,HOU MOV B,10 DIV AB ADD A,30H 。*************************************溢出處理OVERFLOW: MOV L50MS,20 MOV L1MS,00H MOV L250MS,00H MOV SEC,00H MOV MIN,00H MOV HOU,00H RETI。第一首《精忠報(bào)國(guó)》。TABLE20: DB 02H,82H DB 16H,32H,54H,02H,52H DB 0A6H,32H,54H,02H,52H DB 64H,74H,0B6H,64H DB 52H,5CH,32H,22H DB 16H,12H,14H,32H,22H DB 16H,12H,14H,22H,32H DB 26H,12H,94H,22H,32H DB 2CH DB 32H,52H DB 36H,22H,14H,54H DB 0ACH,92H,0A2H DB 96H,0A2H,96H,82H DB 3CH,54H DB 36H,22H,14H,54H DB 0ACH,92H,0A2H DB 16H,12H,14H,22H,32H DB 2CH,02H,82H DB 16H,32H,56H,12H DB 0A6H,32H,56H,52H DB 66H,72H,0B6H,62H DB 62H,52H,58H,32H,22H DB 16H,12H,14H,32H,22H DB 16H,12H,14H,22H,32H DB 26H,92H,0A4H,12H,22H DB 1CH DB 00。第五首《大?!?。TABLE60: DB 32H,22H,38H,02H,22H,32H,22H,18H,04H,92H,12H,24H,22H,32H,22H,12H,92H,92H,88H,04H,32H,22H DB 38H,02H,22H,32H,22H,18H,04H,92H,12H,24H,22H,32H,22H,21H,92H,12H,28H,04H,32H,22H DB 38H,02H,22H,32H,22H,18H,04H,92H,12H,24H,22H,32H,22H,12H,92H,91H,11H,88H DB 04H,32H,52H,58H,02H,52H,62H,52H,38H,04H,22H,22H,24H,22H,32H,22H,12H,92H,92H DB 12H,12H,1cH,08H,02H,52H,52H,62H,0b2H,72H,72H,62H,32H,22H,22H,22H DB 38H,02H,32H,32H,52H,64H,64H,02H,92H,32H,22H,28H,04H,32H,52H,52H,32H,54H,02H,0b4H,72H DB 62H,72H,34H,02H,62H,62H,72H,62H,52H,32H,22H,02H,32H,22H,32H DB 58H,02H,52H,52H,62H,0b2H,72H,72H,62H,32H,22H,22H,22H DB 38H,02H,32H,32H,52H,64H,64H,02H,92H,32H,22H,28H,04H,32H,52H,52H,32H,54H,02H,0b4H,72H DB 62H,72H,34H,02H,62H,62H,72H,62H,52H,32H,22H,02H,84H,92H,1cH DB 00。第九首十年。TABLE100: DB 02H,91H,0A1H,16H,21H,11H,0A6H,81H,0A1H,9CH,02H,91H,0A1H,16H,21H,31H,24H,21H,0A1H,11H,0A1H DB 9CH,02H,11H,21H,36H,32H,24H,21H,0A1H,11H,0A1H,9CH,02H,91H,0A1H,14H,11H,11H,21H,11H,0A4H,04H,04H,02H,0A1H,11H,0A1H,93H,92H DB 02H,61H,71H,0B4H,0B2H,0B1H,0B1H,76H,0B1H,71H,6CH,02H,61H,71H,0B6H,0B1H,0B1H,76H,0B1H,71H,6CH,02H,51H,61H,56H,61H,51H,54H,51H,0B1H,71H,0B1H DB 72H,62H,68H,02H,61H,51H,66H,62H,58H,0CH,02H,51H,41H,5FH DB 02H,91H,0A1H,16H,21H,11H,0A6H,81H,0A1H,9CH,02H,91H,0A1H,16H,21H,31H,24H,21H,0A1H,11H,0A1H DB 9CH,02H,11H,21H,36H,32H,24H,21H,0A1H,11H,0A1H,9CH,02H,91H,0A1H,14H,11H,11H,21H,11H,0A4H,04H,04H,02H,0A1H,11H,0A1