九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

單片機(jī)課程設(shè)計(jì)報(bào)告.doc

上傳人:good****022 文檔編號(hào):116507336 上傳時(shí)間:2022-07-05 格式:DOC 頁(yè)數(shù):17 大小:363.30KB
收藏 版權(quán)申訴 舉報(bào) 下載
單片機(jī)課程設(shè)計(jì)報(bào)告.doc_第1頁(yè)
第1頁(yè) / 共17頁(yè)
單片機(jī)課程設(shè)計(jì)報(bào)告.doc_第2頁(yè)
第2頁(yè) / 共17頁(yè)
單片機(jī)課程設(shè)計(jì)報(bào)告.doc_第3頁(yè)
第3頁(yè) / 共17頁(yè)

下載文檔到電腦,查找使用更方便

13 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《單片機(jī)課程設(shè)計(jì)報(bào)告.doc》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《單片機(jī)課程設(shè)計(jì)報(bào)告.doc(17頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、單片機(jī)課程設(shè)計(jì)單片機(jī)課程設(shè)計(jì)報(bào)告簡(jiǎn)易單片機(jī)音樂(lè)播放器設(shè)計(jì)一、設(shè)計(jì)任務(wù)要求:利用單片機(jī)設(shè)計(jì)模擬音樂(lè)播放器功能,播放存儲(chǔ)在內(nèi)部存儲(chǔ)器中的樂(lè)曲??蓪?shí)現(xiàn)啟動(dòng)、停止、上一首、下一首等簡(jiǎn)單功能。二、基本理論知識(shí):1音樂(lè)的演奏主要是控制音符和節(jié)拍,音符對(duì)應(yīng)不同的聲音頻率,而節(jié)拍表達(dá)的是音符持續(xù)的時(shí)間。2要用單片機(jī)產(chǎn)生音頻脈沖,只要計(jì)算某一音頻的后期,將周期除2,利用定時(shí)器計(jì)時(shí)半周期,半周期后將輸出脈沖的電平反相,再定半周期時(shí)間,對(duì)電平又反相,即可實(shí)現(xiàn)。如:要實(shí)現(xiàn)C調(diào)中音1,頻率為523HZ,T=1/523=1912us,若fosc=12MHZ,T1工作在方式1,可得定時(shí)的初值為65536-956=64580

2、=0FC44HC調(diào)音符頻率:1 2 3 4 5 6 7 | 頻率:523 TH/TL:FC44H 0000H FFFFH三、硬件電路設(shè)計(jì):設(shè)計(jì)一個(gè)音樂(lè)播放器,有三個(gè)按鍵及控制按鈕:播放/暫停、下一曲、上一曲;通過(guò)控制按鈕控制單片機(jī),播放所要求的音樂(lè),并通過(guò)放大電路和喇叭輸出聲音。同時(shí)通過(guò)LED燈顯示器,用來(lái)顯示所選曲目,該顯示器在音樂(lè)播放中關(guān)閉,一曲演奏結(jié)束時(shí),或選曲時(shí)才顯示曲目信息,從而利于操作。 電路設(shè)計(jì)原理圖1.89C51單片機(jī)擁有4KB的片內(nèi)ROM和128KB的片內(nèi)RAM。ROM和RAM的片外尋址范圍都為64KB.單片機(jī)擁有32個(gè)并行口和1個(gè)串行口。在89C51單片機(jī)中存在5個(gè)中斷源,

3、其中2個(gè)外部中斷源、兩個(gè)內(nèi)部中斷源和一個(gè)串行中斷源。 通過(guò)TXAL1 與TXAL2輸入時(shí)鐘信號(hào),通過(guò)p1.0p1.7輸出控制現(xiàn)實(shí)控制信號(hào)的顯示,有p3.2、p3.3與p3.5分別作為上一曲、下一曲和開(kāi)始暫停的控制輸入。2.顯示電路是一個(gè)8位共陰極LED數(shù)碼管。 單片機(jī)的P0.0-P0.7分別與數(shù)碼管的A、B、C、D、E、F、G、DP相連接。 8位共陰極LED燈3. 晶振電路由兩個(gè)30pF的電容和一個(gè)6Mhz的晶體振蕩器組成。節(jié)點(diǎn)1與單片機(jī)的XTAL2相連接,節(jié)點(diǎn)2與單片機(jī)的XTAL1相連接,從而為單片機(jī)提供時(shí)間信號(hào),為音樂(lè)的播放節(jié)拍控制提供基本時(shí)間單位:當(dāng)晶體振蕩頻率為6.0MHz,定時(shí)器工作

4、在方式1下時(shí),若各音階相對(duì)應(yīng)的定時(shí)器計(jì)數(shù)初值為X,則可根據(jù)下式計(jì)算X: 4. 控制電路,鍵一與p3.2相連、鍵二與p3.3相連、鍵3與p3.5相連。當(dāng)電鍵按下時(shí)接口接低電平,從而實(shí)現(xiàn)對(duì)音樂(lè)播放器的控制。鍵一聯(lián)通實(shí)現(xiàn)上一曲更換,鍵二聯(lián)通實(shí)現(xiàn)下一曲更換,鍵三聯(lián)通實(shí)現(xiàn)開(kāi)始暫停操作。5. 發(fā)聲電路由數(shù)字揚(yáng)聲器連接p2.0接口實(shí)現(xiàn)音樂(lè)的輸出,由控制電路發(fā)出操作指令后,單片機(jī)調(diào)用相應(yīng)程序,并將音樂(lè)信號(hào)由p2.0口輸出,通過(guò)驅(qū)動(dòng)揚(yáng)聲器發(fā)出美妙的音樂(lè)。6. 總體電路設(shè)計(jì)四、軟件設(shè)計(jì)及流程圖:主程序?qū)崿F(xiàn)對(duì)單片機(jī)進(jìn)行初始化后,進(jìn)入曲目識(shí)別子程序,進(jìn)行歌曲曲目判斷。確定歌曲曲目后,數(shù)碼管再進(jìn)行顯示。然后,子程序?qū)κ?/p>

5、否播放進(jìn)行循環(huán)判斷,得到播放中斷的指令后再進(jìn)行播放。執(zhí)行播放后,關(guān)閉數(shù)碼管顯示并調(diào)用查表子程序進(jìn)行播放音樂(lè)。在播放音樂(lè)的過(guò)程中,查表子程序循環(huán)判斷音樂(lè)是否結(jié)束。當(dāng)音樂(lè)結(jié)束時(shí),程序跳轉(zhuǎn)回曲目識(shí)別子程序。 1. 播放/暫停子程序播放/暫停在程序利用內(nèi)部中斷T0口。將T0口設(shè)為計(jì)數(shù)中斷并工作在方式2下。標(biāo)識(shí)符初值賦值為R1=00H,計(jì)數(shù)初值設(shè)為T(mén)H0=0FFH,TL0=0FFH。當(dāng)按鍵第一次產(chǎn)生中斷信號(hào)時(shí),播放/暫停子程序改變標(biāo)志符R1,將其賦值為01H。此時(shí)播放器由暫停狀態(tài)進(jìn)入播放狀態(tài)。當(dāng)按鍵第二次產(chǎn)生中斷信號(hào)時(shí),播放/暫停子程序判斷R1是否為02H后,將R1再次賦值為00H。此時(shí),播放器由播放狀

6、態(tài)進(jìn)入暫停狀態(tài)。 代碼實(shí)現(xiàn)如下: POP DPL ;恢復(fù)現(xiàn)場(chǎng) POP DPH POP ACC SETB EA RETI ;中斷返回START PAUSE:CPLF0 ;開(kāi)始/暫停中斷處理程序,將標(biāo)置位取反 JB F0,RETURN ; SETB TR0 RETURN RETI ;中斷返回DELAY: MOV 27H,26H D2: MOV 28H,#125D3: MOV 29H,#248 DJNZ 29H,$ DJNZ 28H,D3 DJNZ 27H,D2 DJNZ R2,DELAY RET2.曲目選擇曲目選擇子程序分為上一曲子程序和下一曲子程序。上一曲和下一曲功能實(shí)現(xiàn)方式類(lèi)似,分別由外部中斷

7、和外部中斷。下面以實(shí)現(xiàn)上一曲功能為例:首先設(shè)置標(biāo)識(shí)符R7初始值為00H。當(dāng)按鍵產(chǎn)生中斷信號(hào),上一曲中斷子程序改變標(biāo)識(shí)符R7的值為01H并改變曲目R0的值。播放子程序判斷出標(biāo)識(shí)符R7改變后,先將R7賦值為00H,然后跳轉(zhuǎn)到曲目識(shí)別子程序。代碼實(shí)現(xiàn)如下:POP DPL ;恢復(fù)現(xiàn)場(chǎng)POP DPHPOP ACCSETB EA RETI ;中斷返回LAST_MUSIC: PUSH ACC ;上一曲中斷程序處理開(kāi)始,保護(hù)現(xiàn)場(chǎng)PUSH DPH PUSH DPL CLR EA ;關(guān)中斷 MOV A,22H ;曲目數(shù)送A CJNE A,#1,YY ;是否是第一首 MOV 22H,#N MOV B,#4 ;將R7

8、指向最后一首歌曲MOV A,#N-1MUL AB MOV R7,A AJMP BACK2 ;處理結(jié)束YY: DEC 22H MOV A,R7 SUBB A,#4 MOV R7,ABACK2: MOV R4,#00H MOV A,22H MOV DPTR,#OUT_TAB MOVC A,A+DPTR MOV OUT_NUM,A ;數(shù)碼管顯視相應(yīng)歌曲的編號(hào)3.音調(diào)的高低用音階表示,不同的音階對(duì)應(yīng)不同的頻率。因此,不同頻率的方波就可以產(chǎn)生音階,音階與頻率的關(guān)系見(jiàn)表1。由于頻率的倒數(shù)是周期,因此可由單片機(jī)中的定時(shí)控制方波周期,當(dāng)定時(shí)器計(jì)數(shù)溢出時(shí)產(chǎn)生中斷。將與揚(yáng)聲器連接的P1.7取反后就可得到方波的周期

9、,從而達(dá)到了控制頻率,即音階的目的。音階頻率(Hz)音階頻率(Hz)音階頻率(Hz)123456701311471651751962202470123456702622943303493924404940123456705235876596987848809880低八度音中音高八度音音調(diào)的長(zhǎng)短用節(jié)拍數(shù)表示(例如1/4拍、2/4拍、),不同節(jié)拍數(shù)的不同音符的組合形成樂(lè)譜。程序中,音的節(jié)拍可由延時(shí)子程序?qū)崿F(xiàn)。延時(shí)子程序設(shè)定為四分之一拍,節(jié)拍值只能是它的整數(shù)倍。音 符頻率(Hz)簡(jiǎn)譜碼(T值)音 符頻率(Hz)簡(jiǎn)譜碼(T值)低1DO26263628#4FA#74064860#1DO#27763731

10、中5SO 78464898低2RE29463835#5SO#83164923#2RE#31163928中6LA88064968低3M33064103#693264994低4FA34964204中7SI98865030#4FA#37064260高1DO104665058低5SO39264261#1DO#110965085#5SO#41564400高2RE117565110低6LA44064443#2RE#124565124#646664524高3M131865157低7SI49464524高4FA139765178中1DO52364331#4FA#1480651894.C調(diào)各音符頻率與計(jì)數(shù)值T的

11、對(duì)照表如下表所示:5 . 每個(gè)音符使用1個(gè)字節(jié),字節(jié)的高4位代表音符的高低,低4位代表音符的節(jié)拍,下表為節(jié)拍碼的對(duì)照。但如果1拍為0.4秒,1/4拍是0.1秒,只要設(shè)定延遲時(shí)間就可求得節(jié)拍的時(shí)間。假設(shè)1/4節(jié)拍為1DELAY,則1拍應(yīng)為4DELAY,以此類(lèi)推。所以只要求得1/4拍的DELAY時(shí)間,其余的節(jié)拍就是它的倍數(shù),如下表為1/4和1/8節(jié)拍的時(shí)間設(shè)定。1/4節(jié)拍1/8節(jié)拍曲調(diào)值DELAY曲調(diào)值DELAY調(diào)4/4125毫秒調(diào)4/462毫秒調(diào)3/4187毫秒調(diào)3/494毫秒調(diào)2/4250毫秒調(diào)2/4125毫秒 四分之一拍延時(shí)代碼設(shè)計(jì):1/4拍的延遲時(shí)間=187毫秒DELAY: MOV R7,

12、#2D2: MOV R4,#187D3: MOV R3,#248DJNZ R3,$DJNZ R4,D3DJNZ R7,D2RET6. 建立音樂(lè)代碼庫(kù) (1)先找出樂(lè)曲的最低音和最高音范圍,然后確定音符表T的順序。(2)把T值表建立在TABLE1,構(gòu)成發(fā)音符的計(jì)數(shù)值放在“TABLE”。(3)簡(jiǎn)譜碼(音符)為高位,節(jié)拍為(節(jié)拍數(shù))為低4位,音符節(jié)拍碼放在程序的“TABLE”處。(4)音符節(jié)拍碼00H為音樂(lè)結(jié)束標(biāo)記。7.歌曲設(shè)計(jì)根據(jù)音樂(lè)軟件的設(shè)計(jì)方法,簡(jiǎn)譜對(duì)應(yīng)的簡(jiǎn)譜碼、T值、節(jié)拍數(shù)如表所示。簡(jiǎn)譜發(fā)音簡(jiǎn)譜碼T值節(jié)拍碼節(jié)拍數(shù)低7低音Si16452411/41中音Do26458022/42中音Re3646

13、8433/43中音Mi464777414中音Fa56482051+1/45中音So66489861+1/26中音La764968827中音Ti865030A2+1/2高1高音Do965058C3低6低音LaA64400F3+3/4低5低音SoB64260例 : 中華人民共和國(guó)國(guó)歌代碼實(shí)現(xiàn)如下,G=2/4DB 04H,04H,0C2H,14H,12H,12H,12H,11H,11H,0C2H,0D1H,0E1H,14H,14H,02H,32H,12H,21H,31H,52H,51H,51H,54HDB 32H,31H,31H,12H,11H,31H,52H,51H,31H,24H,24H,24H

14、,64H,54H,24H,34H,52H,34H,52H,32H,21H,31H,12H,11H,21H,34H,04HDB 52H,51H,0D1H,12H,12H,32H,31H,31H,52H,51H,51H,22H,22H,22H,0D2H,0D1H,0D1H,24H,22H,0C2H,14H,12H,12H,34H,32H,32H,54H,54H,54H,54HDB 12H,11H,31H,52H,51H,51H,64H,54H,32H,31H,11H,52H,52H,52H,32H,02H,12H,02H,0C4H,14HDB 0A2H,0A1H,11H,52H,52H,52H,3

15、2H,02H,12H,02H,0C4H,14H,0C4H,14H,0C4H,14H,14H,04HDB 04H,04H,04H,04HDB 00HEND;五調(diào)試過(guò)程:(1)編程前畫(huà)流程圖,做整體規(guī)劃,思路清晰。(2)借鑒網(wǎng)絡(luò)資料,結(jié)合實(shí)驗(yàn)室硬件電路,寫(xiě)出合適的程序。(3)有時(shí)候程序一點(diǎn)錯(cuò)誤也沒(méi)有,但就是不能正常運(yùn)行,最后發(fā)現(xiàn)程序中有的指令書(shū)寫(xiě)得不規(guī)范,還有些程序設(shè)置與硬件不匹配。(4)先從子程序入手,一一測(cè)試,然后總體運(yùn)行。(5)編程過(guò)程中要注意加注釋或分割線(xiàn),否則,在程序過(guò)長(zhǎng)時(shí)容易變得很亂,不便于查找或更改。六設(shè)計(jì)心得:在做此課程設(shè)計(jì)中遇到不少的難點(diǎn),有的原理,根本就不知道怎樣去實(shí)現(xiàn)。最后通

16、過(guò)自己仔細(xì)查資料和參考,一點(diǎn)一點(diǎn)的就慢慢懂了。在實(shí)驗(yàn)中發(fā)現(xiàn),其實(shí)在難編寫(xiě)的程序都是由一些基礎(chǔ)程序模塊構(gòu)成的,很多的基礎(chǔ)模塊前人就已經(jīng)做好了,只要我們拼湊就行了,當(dāng)然拼湊的工作也不是很簡(jiǎn)單,最重要的還是要自己的基礎(chǔ)扎實(shí),同時(shí),自己的思路要非常的清晰。一周的實(shí)驗(yàn)做完后,感覺(jué)到平時(shí)掌握的東西實(shí)在太少了,要真正實(shí)現(xiàn)學(xué)有所成、學(xué)有所用還有很長(zhǎng)的路要走。 單片機(jī)課程設(shè)計(jì)是一門(mén)很重要的課程,這個(gè)過(guò)程最能鍛煉同學(xué)們的各種能力與智慧,為今后的其他專(zhuān)業(yè)課打下良好的基礎(chǔ)?,F(xiàn)在信息技術(shù)發(fā)展迅速,我們所學(xué)的東西在社會(huì)上也許已經(jīng)或即將被淘汰。因此在學(xué)校要學(xué)的不僅是書(shū)本上的東西,更重要的是自學(xué)的能力、獨(dú)立思考的能力和動(dòng)手的

17、能力。要想在競(jìng)爭(zhēng)異常激烈的現(xiàn)代社會(huì)立足,就必須培養(yǎng)這種能力。在學(xué)校的時(shí)間是最好的學(xué)習(xí)機(jī)會(huì),一定要珍惜好這有限的時(shí)間,多學(xué)知識(shí),結(jié)合實(shí)際,努力提高自己。七源程序:OUT BIT P2.0 ;定義音頻輸出端口p2.0N EQU 3;歌曲總數(shù)OUT_NUM EQU P1;數(shù)碼管顯視當(dāng)前所放歌曲曲數(shù) ORG 0000H AJMP MAIN ORG 0003H AJMP LAST_MUSIC ;外部中斷0用于接上一曲歌按鍵 ORG 000BH AJMP F_T0 ;定時(shí)器0用于定時(shí),作音符發(fā)生器用 ORG 0013HY4: AJMP NEXT_MUSIC ;外部中斷1接下一曲歌按鍵 ORG 001BH

18、AJMP START_PAUSE ;定時(shí)器1用計(jì)數(shù),此處用作中斷 ORG 0030HMAIN: MOV SP,#60H MOV DPTR,#TABLE MOV R0,#30H ;R0中存入數(shù)據(jù)30H MOV R5,#00H MOV R6,#1 ;R6存放正在設(shè)置入口信息的歌曲數(shù)SET_TAB: MOV A,R5 ;設(shè)置每首歌曲的入口信息 MOVC A,A+DPTR MOV R0,A INC R5 INC R0 MOV A,R5 MOVC A,A+DPTR MOV R0,A INC R5 INC R0 MOV A,R5 MOVC A,A+DPTR MOV R0,A INC R0 INC R5 M

19、OV A,R5 MOVC A,A+DPTR MOV R0,A INC R0 INC R5 INC R6 ;設(shè)置完一首歌曲后,歌曲數(shù)加一 CJNE R6,#N+1,SET_TAB ;是否設(shè)置完,沒(méi)有便繼續(xù) MOV TMOD, #61H ;計(jì)數(shù)器0工作方式1,計(jì)數(shù)器1工作方式2 MOV TH1,#0FFH ;給計(jì)數(shù)器1置初值0FFH MOV TL1,#0FFH;計(jì)數(shù)器計(jì)數(shù)為1,相當(dāng)于一外部中斷 SETB ET1 ;允許計(jì)數(shù)器1中斷 SETB ET0 ;允許計(jì)數(shù)器具0中斷 CLR PT0 ;計(jì)數(shù)器0為低優(yōu)先級(jí) SETB PT1 ;計(jì)數(shù)器1為高優(yōu)先級(jí) SETB IT0 ;外部中斷0為跳沿觸發(fā) SETB

20、 PX0 ;高優(yōu)先級(jí) SETB IT1 ;外部中斷1為跳沿觸發(fā) SETB PX1 ;高優(yōu)先級(jí) SETB EX1 ;允許外部中斷1中斷 SETB EX0 ;允許外部中斷定0中斷 SETB EA ;開(kāi)中斷總開(kāi)關(guān) SETB TR1 ;定時(shí)器1開(kāi)始工作,作中斷用 SETB OUT ;音頻輸出端口初始化 CLR F0 ;設(shè)置F0=0,用來(lái)作暫停/播放的標(biāo)置位用 MOV 22H,#01H ;22H單元中存放正在播放的歌曲編號(hào) MOV DPTR,#OUT_TAB ;將正在播放的歌曲編號(hào)送數(shù)碼管顯示 MOV A,22H MOVC A,A+DPTR MOV OUT_NUM,A MOV R7,#00H ;R7中存

21、放歌曲總信息的入口地址 START0:MOV R4,#00H ;R4存放當(dāng)前正在播放歌曲的第幾個(gè)節(jié)拍數(shù) MOV R0,#30H ;30H開(kāi)始的單元中存放歌曲的入口信息 MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOV A,R4 INC R4 MOVC A,A+DPTR MOV 26H,A NEXT: MOV R0,#30H ;開(kāi)始取出歌曲的第一個(gè)數(shù)據(jù) MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOV A,R4 INC R4 MO

22、VC A,A+DPTR JZ END0 ;若為0,則停止 MOV R1,A ;不為0,取出節(jié)拍數(shù) ANL A,#0FH MOV R2,A MOV A,R1 SWAP A ANL A,#0FH JNZ SING ;音符不為0,唱 CLR TR0 ;為0,不唱,關(guān)頻率發(fā)生器 SJMP MUSIC1 MUSIC: DEC A ;開(kāi)始唱,進(jìn)行相應(yīng)的數(shù)據(jù)處理 MOV R3,A RL A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOVC A,A+DPTR MOV 21H,A MOV TH0,A MOV A,R3 RL A INC A MOVC A,A+DPTR MOV 20

23、H,A MOV TL0,A SETB TR0 ;開(kāi)唱MUSIC1:LCALL DELAY ;每個(gè)音符唱多久 JB F0,FOR ;是否暫停, AJMP NEXT ;沒(méi)有暫停,繼續(xù)FOR: CLR TR0 ;暫停,不唱 JB F0,$ ;等待播放 AJMP NEXT ;開(kāi)始播放END0: CLR TR0 ;不唱 MOV A,22H ;唱完處理 CJNE A,#N,TT ;是不是全部歌曲都唱完 MOV 22H,#01H ;全部唱完,則從第一首開(kāi)始再唱 MOV R7,#00H MOV OUT_NUM,#06H AJMP WWWTT: MOV A,R7 ADD A,#4 MOV R7,A INC 22

24、H CLR EA PUSH DPH PUSH DPL MOV A,22H MOV DPTR,#OUT_TAB MOVC A,A+DPTR MOV OUT_NUM,A POP DPL POP DPHTTT: SETB EA AJMP START0 ;開(kāi)始下一首的演唱F_T0: MOV TH0,21H ;定時(shí)器0置初值 MOV TL0,20H CPL OUT ;頻率產(chǎn)生 RETINEXT_MUSIC: PUSH ACC ;下一曲中斷程序處理,保護(hù)現(xiàn)場(chǎng)PUSH DPH PUSH DPL CLR EA ;關(guān)中斷 MOV A,22H CJNE A,#N,Y ;判斷是不是最后一首 MOV R7,#00H

25、MOV 22H,#01H AJMP BACK Y: INC 22H ; 不是最后一首,唱下一首 MOV A,R7 ADD A,#4 MOV R7,ABACK: MOV R4,#00H ;數(shù)碼管顯示相應(yīng)的歌曲編號(hào) MOV A,22H MOV DPTR,#OUT_TAB MOVC A,A+DPTR MOV OUT_NUM,AMOV B,R0 MOV R4,#00H MOV R0,#30H MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOV A,R4 INC R4 MOVC A,A+DPTR MOV 26H,A ;結(jié)果

26、存入26H單元中 DEC R4 MOV R0,B ;恢復(fù)R0中的內(nèi)容POP DPL ;恢復(fù)現(xiàn)場(chǎng) POP DPH POP ACC SETB EA RETI ;中斷返回LAST-MUSIC: PUSH ACC ;上一曲中斷程序處理開(kāi)始,保護(hù)現(xiàn)場(chǎng) PUSH DPH PUSH DPL CLR EA ;關(guān)中斷 MOV A,22H ;曲目數(shù)送A CJNE A,#1,YY ;是否是第一首 MOV 22H,#N ;是第一首歌曲 MOV B,#4 ;將R7指向最后一首歌曲 MOV A,#N-1 MUL AB MOV R7,A AJMP BACK2 ;處理結(jié)束YY: DEC 22H MOV A,R7 ;R7減4

27、SUBB A,#4 MOV R7,ABACK2: MOV R4,#00H MOV A,22H MOV DPTR,#OUT_TAB MOVC A,A+DPTR MOV OUT_NUM,A ;數(shù)碼管顯視相應(yīng)歌曲的編號(hào) MOV B,R0 MOV R4,#00H MOV R0,#30H MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOV A,R4 INC R4 MOVC A,A+DPTR MOV 26H,A ;結(jié)果存入26H單元中 DEC R4 MOV R0,B;R0中的內(nèi)容恢復(fù) POP DPL ;恢復(fù)現(xiàn)場(chǎng) POP DP

28、H POP ACC SETB EA RETI ;中斷返回START_PAUSE:CPL F0 ;開(kāi)始/暫停中斷處理程序,將標(biāo)置位取反 JB F0,RETURN ;為1返回 SETB TR0 ;為0則播放RETURN: RETI ;中斷返回DELAY: MOV 27H,26H ;音符演奏時(shí)間控制D2: MOV 28H,#125D3: MOV 29H,#248 DJNZ 29H,$ DJNZ 28H,D3 DJNZ 27H,D2 DJNZ R2,DELAY RETOUT_TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,

29、79H,71H,73H ;OUT_TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0FFH TABLE: DW SONG1,TABLE1,SONG2,TABLE2,SONG3,TABLE3TABLE1:DW 64580,64684,64777,64820,64898,64968,65030 DW 63628,63835,64021,64103,64260,64400,64524MUSIC1: DB 04H ;1=C 2/4 軍港之夜DB 32H,54H,52H,32H,54H,52H,

30、32H,12H,12H,32H,32H,54H,52H,32H,52H,52H,32H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14HDB 0C2H,32H,32H,12H,21H,31H,24H,32H,34H,0D2H,0C2H,14H,14H,32H,52H,52H,32H,52H,54H,32H,34H,31H,21H,12H,24H,24HDB 34H,0E2H,0C2H,0D1H,0E1H,0D4H,12H,0E2H,32H,32H,0E2H,0D1H,0E1H,0D4H,0D2H,0E2H,32H,32H,0E2H,0E2H,0D

31、1H,0E1H,0D4HDB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,52H,52H,32H,62H,5H,61H,54H,31H,52H,31H,12H,31H,31H,32H,54H,52H,32H,52H,52H,32HDB 32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,34H,34H,32H,52H,52,32H,62H,51H,61H,54H,31H,52H,31H,12H,32H,12H,32H,32H,54H,52HDB 32H,52H,52H,31H,31H,32H,21H,31H,24H,0E2H,0D1H

32、,0E1H,0D2H,0C2H,14H,14HDB 32H,52H,52H,32H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14HDB 0C2H,32H,32H,12H,21H,31H,24H,32H,34H,0D2H,0C2H,14H,14H,32H,52H,52H,32H,52H,54H,32H,34H,31H,21H,12H,24H,24HDB 34H,0E2H,0C2H,0D1H,0E1H,0D4H,12H,0E2H,32H,32H,0E2H,0D1H,0E1H,0D4H,0D2H,0E2H,32H,32H,0E2H,0E2H,0D1H

33、,0E1H,0D4HDB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,52H,52H,32H,62H,5H,61H,54H,31H,52H,31H,12H,31H,31H,32H,54H,52H,32H,52H,52H,32HDB 32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,34H,34H,32H,52H,52,32H,62H,51H,61H,54H,31H,52H,31H,12H,32H,12H,32H,32H,54H,52HTABLE2:DW 63835,64021,64103,64260,64400,64524,6458

34、0,64684,64777 DW 64820,64898,64968,65030,65058,65110,65157,65178MUSIC2: DB 02H;1=C 4/4 海闊天空DB 04H,94HDB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02HDB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4HDB 04H,0C2H,0C2H,0D4H,0C2H,0D2H,0D8H,0D4H,0D2H,92HDB 0E8H,0E4H,0E4H,0E8H,0E4

35、H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02HDB 0A4H,0A2H,0B2H,0B4H,0C4H,0E8H,0D8HDB 0C8H,0C8H,08H,08H,78H,28H,38H,34H,24HDB 24H,64H,64H,24H,64H,72H,72H,78H,58H,54H,44H,38H,34H,14H,34H,84H,74H,74H,62H,62H,0D8H,78H,28H,38H,34H,24HDB 24H,64H,64H,24H,64H,72H,72H,72H,94H,92H,94H,0A4H,58H,58H,54H,44H

36、 ;DB 58H,58H,58H,58H,0A8H,0A8H,0A4H,0B4H,0A4H,84H,0A4H,94H,98H,98H,08HDB 84H,82H,82H,82H,82H,94H,0A2H,94H,92H,82H,74H,72H,74H,72H,72H,72H,72H,92H,91H,91H,94H,54H,74H,94HDB 0A8H,0A4H,0A2H,0B2H,0C4H,0B4H,0A4H,0A4H,0A4H,92H,92H,98H,82H,72H,78H,04H,0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4HDB 04H,0C4

37、H,0D4H,0C4H,0C8H,04H,94HDB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02DB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H,04H,0C2H,0C2H,0D4H,0D8H,0D4H,0D2H,92HDB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H,04H,0C2H,0C2H,0D4H,0D8H,0D4H,0D2H,92HDB 0A4H,0A2H,0B2H,0B3H,0C4H,0E

38、8H,0D8HDB 0C8H,0C8H,0C8H,08HDB 00H TABLE3:DW 64898,64968,65030,65086,65135,65158,65199,64260,64400,64524,64580,64684,64777,64862 MUSIC3: DB 03H ;G=2/4 中華人民共和國(guó)國(guó)歌DB 04H,04H,0C2H,14H,12H,12H,12H,11H,11H,0C2H,0D1H,0E1H,14H,14H,02H,32H,12H,21H,31H,52H,51H,51H,54HDB 32H,31H,31H,12H,11H,31H,52H,51H,31H,24H

39、,24H,24H,64H,54H,24H,34H,52H,34H,52H,32H,21H,31H,12H,11H,21H,34H,04HDB 52H,51H,0D1H,12H,12H,32H,31H,31H,52H,51H,51H,22H,22H,22H,0D2H,0D1H,0D1H,24H,22H,0C2H,14H,12H,12H,34H,32H,32H,54H,54H,54H,54HDB 12H,11H,31H,52H,51H,51H,64H,54H,32H,31H,11H,52H,52H,52H,32H,02H,12H,02H,0C4H,14HDB 0A2H,0A1H,11H,52H,52H,52H,32H,02H,12H,02H,0C4H,14H,0C4H,14H,0C4H,14H,14H,04HDB 04H,04H,04H,04HDB 00HEND;17

展開(kāi)閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!