片機(jī)及DSP課程設(shè)計(jì)報(bào)告_第1頁(yè)
片機(jī)及DSP課程設(shè)計(jì)報(bào)告_第2頁(yè)
片機(jī)及DSP課程設(shè)計(jì)報(bào)告_第3頁(yè)
片機(jī)及DSP課程設(shè)計(jì)報(bào)告_第4頁(yè)
片機(jī)及DSP課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一、課設(shè)目的1、通過(guò)本設(shè)計(jì),能綜合運(yùn)用單片機(jī)技術(shù)原理與應(yīng)用、DSP原理與應(yīng)用C語(yǔ)言程序設(shè)計(jì)以及數(shù)字電路、模擬電路等課程的內(nèi)容,為以后從事電子產(chǎn)品設(shè)計(jì)、軟件編程、系統(tǒng)控制等工作奠定一定的基礎(chǔ)。2、學(xué)會(huì)使用KEIL C和PROTEUS等軟件,用C語(yǔ)言或匯編語(yǔ)言編寫一個(gè)較完整的實(shí)用程序,并仿真運(yùn)行,保證設(shè)計(jì)的正確性。3、了解單片機(jī)接口應(yīng)用開(kāi)發(fā)的全過(guò)程:分析需求、設(shè)計(jì)原理圖、選用元器件、布線、編程、調(diào)試、撰寫報(bào)告等。二、課設(shè)內(nèi)容 設(shè)計(jì)一個(gè)基于單片機(jī)的音樂(lè)播放器,在播放音樂(lè)的同時(shí)并能顯示播放的歌曲序號(hào),同時(shí)可以實(shí)現(xiàn)上一曲、下一曲的轉(zhuǎn)換;在播放的同時(shí),還能實(shí)現(xiàn)暫停開(kāi)始的功能。3、 問(wèn)題分析、方案的提出、設(shè)

2、計(jì)思路及原因 要想使播放器發(fā)出響聲,就得設(shè)計(jì)一個(gè)能產(chǎn)生聲響的程序,讓單片機(jī)輸出到揚(yáng)聲器。音調(diào)的高低用音階表示,不同的音階對(duì)應(yīng)不同的頻率。因此,不同頻率的方波就可以產(chǎn)生音階。由于頻率的倒數(shù)是周期,因此可由單片機(jī)中的定時(shí)控制方波周期,當(dāng)定時(shí)器計(jì)數(shù)溢出時(shí)產(chǎn)生中斷。將與揚(yáng)聲器連接就可得到方波的周期,從而達(dá)到了控制頻率,即音階的目的。通過(guò)TXAL1 與TXAL2輸入時(shí)鐘信號(hào),通過(guò)p1.0p1.7輸出控制現(xiàn)實(shí)控制信號(hào)顯示,有p3.2、p3.3與p3.5分別作為上一曲、下一曲和開(kāi)始暫停的控制輸入。顯示電路是一個(gè)8位共陰極LED數(shù)碼管。 單片機(jī)的P0.0-P0.7分別與數(shù)碼管的A、B、C、D、E、F、G、DP

3、相連接。晶振電路由兩個(gè)1nF的電容和一個(gè)6Mhz的晶體振蕩器組成。節(jié)點(diǎn)1與單片機(jī)的XTAL2相連接,節(jié)點(diǎn)2與單片機(jī)的XTAL1相連接,從而為單片機(jī)提供時(shí)間信號(hào),為音樂(lè)的播放節(jié)拍控制提供基本時(shí)間單位:當(dāng)晶體振蕩頻率為6.MHz,定時(shí)器工作在方式1下時(shí),若各音階相對(duì)應(yīng)的定時(shí)器計(jì)數(shù)初值為X,則可根據(jù)下式計(jì)算X:控制電路,鍵一與p3.2相連、鍵二與p3.3相連、鍵3與p3.5相連。當(dāng)電鍵按下時(shí)接口接低電平,從而實(shí)現(xiàn)對(duì)音樂(lè)播放器的控制。鍵一聯(lián)通實(shí)現(xiàn)上一曲更換,鍵發(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ā)

4、出美妙的音樂(lè)。二聯(lián)通實(shí)現(xiàn)下一曲更換,鍵三聯(lián)通實(shí)現(xiàn)開(kāi)始暫停操作。四、電路設(shè)計(jì)及功能說(shuō)明,硬件原理框圖及電路圖 AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)??傇韴D51單片機(jī)顯示電路電源電路鍵控電路復(fù)位電路晶振電路發(fā)聲電路時(shí)鐘電路與振蕩器共同產(chǎn)生單片機(jī)所需的工作時(shí)鐘信號(hào)功能選擇電路實(shí)現(xiàn)播放器的功能操作顯示電路實(shí)現(xiàn)單片機(jī)的信息顯示功能開(kāi)始4、 軟件部分的程序流程圖,算法和使用的編程技巧;初始化查詢歌曲曲目上一曲、下一曲數(shù)碼管顯示暫停、播放等待播放關(guān)閉顯示播放音樂(lè)判斷是否結(jié)束?否 是結(jié)束1、總體思路主程序?qū)崿F(xiàn)對(duì)單片機(jī)進(jìn)行初始化后,進(jìn)入曲目

5、識(shí)別子程序,進(jìn)行歌曲曲目判斷。確定歌曲曲目后,數(shù)碼管再進(jìn)行顯示。然后,子程序?qū)κ欠癫シ胚M(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í)別子程序。5、 源程序清單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_SONG ;外部中斷0用于接上一曲歌按鍵 ORG 000BH AJMP F_T0 ;定時(shí)

6、器0用于定時(shí),作音符發(fā)生器用 ORG 0013Hq4: AJMP NEXT_SONG ;外部中斷1接下一曲歌按鍵 ORG 001BH AJMP START_PAUSE ;定時(shí)器1用計(jì)數(shù),這里用作中斷,接開(kāi)始/暫停鍵,初值為0ffH,方式2 ORG 0030HMAIN: MOV SP,#60H MOV DPTR,#TABLE ;DPRT指向每首歌曲的入口地址的地址。 MOV R0,#30H ;R0中存入數(shù)據(jù)30H,這里在以30H開(kāi)始的單元存放每首歌曲的入口地址,其中30H,31H存放歌曲的節(jié)拍入口地址,32H,33H存放歌曲音符入口地址,每首歌占用四個(gè)存儲(chǔ)存單元。 MOV R5,#00H ;R5

7、中存放表TABLE中正在執(zhí)行操作的序號(hào) MOV R6,#1 ;R6存放正在設(shè)置入口信息的歌曲數(shù)SET_TAB: MOV A,R5 ;設(shè)置每首歌曲的入口信息,存放在以30H開(kāi)始的存儲(chǔ)單元中。 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 MOV A,R5 MOVC A,A+DPTR MOV R0,A INC R0 INC R5 INC R6 ;設(shè)置完一首歌曲后,歌曲數(shù)加一 CJNE R6

8、,#N+1,SET_TAB ;是否設(shè)置完,沒(méi)有便繼續(xù),否則進(jìn)行下面的操作 ;* 對(duì)中斷,計(jì)數(shù)器的相關(guān)參數(shù)進(jìn)行設(shè)置 MOV TMOD, #61H ;計(jì)數(shù)器0工作方式1,計(jì)數(shù)器1工作方式2 MOV TH1,#0FFH ;給計(jì)數(shù)器1置初值0FFH,又由于是工作方式2,所以 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 PX0 ;高優(yōu)先級(jí) SETB IT1 ;外部中斷1為跳沿觸

9、發(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 ;音頻輸出端口初始化 ;* ;設(shè)置結(jié)束 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中存放歌曲總信息的入口地址 START0:MO

10、V R4,#00H ;R4存放當(dāng)前正在播放歌曲的第幾個(gè)節(jié)拍數(shù) MOV R0,#30H ;30H開(kāi)始的單元中存放歌曲的入口信息 MOV A,R7 ;將歌曲的節(jié)拍表的入口地址送到DPTR 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 ;取出第一節(jié)拍數(shù),其實(shí)第一個(gè)節(jié)拍不是歌曲的第一個(gè)節(jié)拍,而是表示幾分音符 ;* MOV 26H,A ;將取出的音符數(shù)+節(jié)拍數(shù)保存在職26H單元中NEXT: MOV R0,#30H ;開(kāi)始取出歌曲的第一個(gè)數(shù)據(jù) MOV A,R7 ADD A,R0 MOV

11、 R0,A MOV DPH,R0 INC R0 MOV DPL,R0 INC R0 MOV A,R4 INC R4 MOVC A,A+DPTR ;放在A中;* 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 SING1 SING: DEC A ;開(kāi)始唱,進(jìn)行相應(yīng)的數(shù)據(jù)處理 MOV R3,A RL A MOV DPH,R0 INC R0 MOV DPL,R0

12、INC R0 MOVC A,A+DPTR MOV 21H,A MOV TH0,A MOV A,R3 RL A INC A MOVC A,A+DPTR MOV 20H,A MOV TL0,A SETB TR0 ;開(kāi)唱SING1: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,WW ;是不是全部歌曲都唱完 MOV 22H,#01H ;全部唱完,則從第一

13、首開(kāi)始再唱 MOV R7,#00H MOV OUT_NUM,#06H ;數(shù)碼管顯視第一首歌曲編號(hào) AJMP WWWWW: MOV A,R7 ;沒(méi)有全部唱完,唱下一首,歌曲的入口信息調(diào)整 ADD A,#4 MOV R7,A INC 22H CLR EA PUSH DPH PUSH DPL MOV A,22H MOV DPTR,#OUT_TAB MOVC A,A+DPTR MOV OUT_NUM,A ;數(shù)碼管顯視相應(yīng)的歌曲編號(hào) POP DPL POP DPHWWW: SETB EA AJMP START0 ;開(kāi)始下一首的演唱F_T0: MOV TH0,21H ;定時(shí)器0置初值 MOV TL0,20

14、H CPL OUT ;頻率產(chǎn)生 RETINEXT_SONG: PUSH ACC ;下一曲中斷程序處理,保護(hù)現(xiàn)場(chǎng) PUSH DPH PUSH DPL CLR EA ;關(guān)中斷 MOV A,22H CJNE A,#N,Q ;是最后一首嗎? MOV R7,#00H ;是最后一首,則R7指向第一首,演唱第一首 MOV 22H,#01H AJMP BACK Q: INC 22H ;不是最后一首,唱下一首,R7內(nèi)容加4,歌曲數(shù)加1 MOV A,R7 ADD A,#4 MOV R7,ABACK: MOV R4,#00H ;數(shù)碼管顯視相應(yīng)的歌曲編號(hào) MOV A,22H MOV DPTR,#OUT_TAB MOV

15、C A,A+DPTR MOV OUT_NUM,A;* MOV B,R0 ;對(duì)下首要演唱的歌曲的幾分拍進(jìn)行調(diào)整,同時(shí)對(duì)R0中的內(nèi)容進(jìn)行保護(hù) 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 ;恢復(fù)R0中的內(nèi)容;* POP DPL ;恢復(fù)現(xiàn)場(chǎng) POP DPH POP ACC SETB EA RETI ;中斷返回LAST_SONG: PUSH

16、ACC ;上一曲中斷程序處理開(kāi)始,保護(hù)現(xiàn)場(chǎng) PUSH DPH PUSH DPL CLR EA ;關(guān)中斷 MOV A,22H ;曲目數(shù)送A CJNE A,#1,QQ ;是否是第一首 MOV 22H,#N ;是第一首歌曲 MOV B,#4 ;將R7指向最后一首歌曲 MOV A,#N-1 MUL AB MOV R7,A AJMP BACK2 ;處理結(jié)束QQ: DEC 22H MOV A,R7 ;R7減4 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ù)碼管顯視

17、相應(yīng)歌曲的編號(hào);* MOV B,R0;對(duì)下首要演唱的歌曲的幾分拍進(jìn)行調(diào)整,同時(shí)對(duì)R0中的內(nèi)容進(jìn)行保護(hù) 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 DPH POP ACC SETB EA RETI ;中斷返回START_PAUSE:CPL F0 ;開(kāi)始/暫停中斷處理程序,將標(biāo)置

18、位取反 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,79H,71H,73H ;共陰數(shù)碼管顯視用;OUT_TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,8

19、2H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0FFH ;共陽(yáng)TABLE: DW SONG1,TABLE1,SONG2,TABLE2,SONG3,TABLE3TABLE1:DW 64580,64684,64777,64820,64898,64968,65030 DW 63628,63835,64021,64103,64260,64400,64524SONG1: DB 04H ;1=C 2/4 軍港之夜DB 32H,54H,52H,32H,54H,52H,32H,12H,12H,32H,32H,54H,52H,32H,52H,52H,32H,32H,21H,

20、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,0E1H,0D4HDB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,

21、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,0E1H,0D2H,0C2H,14H,14HDB 32H,52H,52H,32H,32H,21H,31

22、H,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,0E1H,0D4HDB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,52

23、H,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,0E1H,0D2H,0C2H,14H,14HDB 32H,52H,52H,32H,32H,21H,31H,

24、24H,74H,0D2H,0C2H,14H,14H,14H,14HDB 00HTABLE2:DW 63835,64021,64103,64260,64400,64524,64580,64684,64777 DW 64820,64898,64968,65030,65058,65110,65157,65178SONG2: DB 02H;1=C 4/4 死了都要愛(ài)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

25、,92H,94H,0A4HDB 04H,0C2H,0C2H,0D4H,0C2H,0D2H,0D8H,0D4H,0D2H,92HDB 0E8H,0E4H,0E4H,0E8H,0E4H,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,0D

26、8H,78H,28H,38H,34H,24HDB 24H,64H,64H,24H,64H,72H,72H,72H,94H,92H,94H,0A4H,58H,58H,54H,44H ;#音不準(zhǔn)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,94H;*DB 0A8H,0A4H,0A2H,0B2H,0C4H,0B4H,0A4

27、H,0A4H,0A4H,92H,92H,98H,82H,72H,78H,04H,0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4HDB 04H,0C4H,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 0E8H,0E4H,0E4H,0E8

28、H,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,92H;*DB 0A4H,0A2H,0B2H,0B3H,0C4H,0E8H,0D8HDB 0C8H,0C8H,0C8H,08HDB 00H TABLE3: DW 64898,64968,65030,65086,65135,65158,65199,64260,64400,64524,64580,64684,64777,64862

29、 SONG3: 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,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,0

30、D2H,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;七、仿真過(guò)程綜述 拿到任務(wù)書后的首先想到的是覺(jué)得這次課程設(shè)計(jì)還是比較難的,因?yàn)閱纹瑱C(jī)課程

31、的學(xué)習(xí)是在很早以前了,現(xiàn)在突然要用它需要在把相關(guān)知識(shí)撿起來(lái),這需要一定的時(shí)間;而且,這次課設(shè)還需要編程,變成一直是我的弱項(xiàng)。但還是要認(rèn)真對(duì)待,就仔細(xì)的看了所有的設(shè)計(jì)題目,根據(jù)自己的愛(ài)好和能力,我最終選擇了播放器。 剛確定這個(gè)題目后覺(jué)得無(wú)從下手,不知道從什么開(kāi)始做起。所以就在網(wǎng)上查閱了相關(guān)資料,大致瀏覽了一遍,看懂了幾分,覺(jué)得應(yīng)該從學(xué)習(xí)軟件開(kāi)始。因此就去圖書館借了一本相關(guān)的書,把仿真軟件學(xué)了一遍并做了幾個(gè)小例子練習(xí)了一下,就開(kāi)始著手編程了。編程的過(guò)程是痛苦的,這需要很強(qiáng)的邏輯思維能力,這一部分只能耐心地慢慢來(lái)。經(jīng)過(guò)查閱相關(guān)資料,和各種程序的拼湊,基本的程序是出來(lái)了,放到keil里調(diào)試時(shí)錯(cuò)誤很多,

32、在改錯(cuò)時(shí)又查閱大量的資料,曲曲折折的把程序改正好,最終形成一個(gè).hex的文件。接下來(lái)畫仿真圖還是比較容易的,這一部分很輕松。當(dāng)把程序加載進(jìn)去開(kāi)始仿真時(shí)又出現(xiàn)了問(wèn)題,程序是對(duì)的,原理圖是對(duì)的,可是一結(jié)合就是得不到想要的結(jié)果。在仔細(xì)研究,再加上和同學(xué)探討,原來(lái)是所選擇的元件有誤,當(dāng)把所有錯(cuò)誤都改正以后,在仿真時(shí)就都成功了,該有的功能都有,該出現(xiàn)的顯示也有了。 八、調(diào)試過(guò)程中的主要難點(diǎn)及解決思路和辦法 編程調(diào)試中,用KILL將所編好的程序匯編,發(fā)現(xiàn)有好幾處錯(cuò)誤出現(xiàn),經(jīng)過(guò)仔細(xì)檢查,發(fā)現(xiàn)一些是由于所輸入的符號(hào)不是英文模式下,匯編機(jī)器無(wú)法識(shí)別,所以要將輸入錯(cuò)誤的符號(hào)在引文模式下重新輸入一遍,就能改正了。 還出現(xiàn)了一類的錯(cuò)誤提示是由于匯編語(yǔ)言語(yǔ)法的錯(cuò)誤。比如:語(yǔ)句CPL

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論