版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 自動化專業(yè)課程設計報告</p><p> 《微型計算機原理課程設計》</p><p> 班 級 自動化09-1 </p><p> 姓 名 </p><p> 學 號 </p>
2、<p> 時 間 2011.12.19-2011.12.23</p><p><b> 目錄</b></p><p> 課程設計的目的與要求--------------------1</p><p> 課程設計課題的分析----------------------1</p><p&g
3、t; 課程設計的結果--------------------------4</p><p> 課程設計的心得與體會--------------------13</p><p> 參考文獻--------------------------------14</p><p> 題目:計算機仿真電子琴</p><p> 一、課程設計的目的
4、與要求</p><p><b> 1、設計目的</b></p><p> 本課程的課程設計是自動化專業(yè)學生學習完《微機原理及應用》課程后,進行的一次以匯編語言為主,硬件設計為輔的綜合訓練。本課程設計的目的在于加深對微機原理基本知識的理解,掌握匯編語言程序設計的基本方法;掌握運用微機原理開發(fā)系統(tǒng)的基本方法。</p><p><b>
5、 2、設計要求</b></p><p> 從課程設計的目的出發(fā),通過設計工作的各個環(huán)節(jié),達到以下要求:</p><p> 掌握匯編語言程序設計的基本方法。</p><p> 進一步理解各種接口電路的應用。例如8255并行接口,8253定時器等。</p><p> 掌握利用PC機揚聲器發(fā)出不同頻率聲音的方法。</p&
6、gt;<p><b> 3、主要技術指標</b></p><p><b> 編寫程序</b></p><p> 在程序運行時使PC即成為一架可彈奏的電子琴。當按下數(shù)字鍵1-8時,依次發(fā)出1,2,3,4,5,6,7,I這八個音調。按下CTRL+C或者回車則退出電子琴狀態(tài)。</p><p> 在程序運行時
7、使PC自動按要求提示演奏樂曲。</p><p> 二、課程設計課題的分析</p><p> 圖1.揚聲器工作原理圖示</p><p> 圖2.主程序工作流程圖</p><p> 圖3.樂曲演奏子程序工作流程圖 圖4.電子琴子程序工作流程圖</p><p> 圖5.揚聲器工作流程
8、圖</p><p><b> 三、課程設計的結果</b></p><p><b> 1、實驗代碼</b></p><p> DATA SEGMENT</p><p> INFO1 DB 0AH, 0DH, 'WELCOME YOU TO COME HERE!$'
9、 </p><p> DB 0AH, 0DH, 'THIS IS A MUSIC PROGRAM!$'</p><p> DB 0AH, 0DH, 'PLEASE SELECLT!$'</p><p> INFO4 DB 0AH, 0DH, 'INPUT ERRO
10、R!$'</p><p> INFO5 DB 0AH, 0DH, 'PLEASE INPUT AGAIN!$'</p><p> MUSLIST DB 0AH, 0DH, '=========================' </p><p> DB 0AH, 0DH,
11、 'Press1 HuanLeSong'</p><p> DB 0AH, 0DH, 'Press2 KaiXin'</p><p> DB 0AH, 0DH, 'Press3 XiaoBuWuQu'</p><p> DB 0AH, 0DH, 'Press4 Wond
12、erful'</p><p> DB 0AH, 0DH, 'Press5 SCALE PLAY '</p><p> DB 0AH, 0DH, 'Press6 EXIT'</p><p> DB 0AH, 0DH, '========================='</
13、p><p> DB 0AH, 0DH, '$'</p><p> MUS_FRQ1 DW 330, 330, 350, 393, 393, 350, 330, 294 </p><p> DW 262, 262, 294, 330, 330, 294, 294</p>&l
14、t;p> DW 330, 330, 350, 393, 393, 350, 330, 294</p><p> DW 262, 262, 294, 330, 294, 262, 262</p><p> DW 294, 294, 330, 262, 294, 330, 350, 330, 262</p><p&
15、gt; DW 294, 330, 350, 330, 262, 262, 294, 393</p><p> DW 330, 330, 350, 393, 393, 350, 330, 294</p><p> DW 262, 262, 294, 330, 294, 262, 262, -1</p><p>
16、MUS_TIM1 DW 8 DUP(100) </p><p> DW 7 DUP(100),200</p><p> DW 8 DUP(100)</p><p> DW 7 DUP(100),200</p><p> DW 5
17、DUP(100),50,50,2 DUP(100)</p><p> DW 100,50,50,4 DUP(100),200</p><p> DW 8 DUP(100)</p><p> DW 7 DUP(100),200</p><p> MUS_FRQ2 DW 330, 294, 262, 294
18、, 3 DUP(330)</p><p> DW 3 DUP(294), 330, 392, 392</p><p> DW 330, 294, 262, 294, 4 DUP(330)</p><p> DW 294, 294, 330, 294, 262, -1</p><p> MUS_TIM2
19、 DW 6 DUP(100),200</p><p> DW 2 DUP(100,100,200)</p><p> DW 8 DUP(100)</p><p> DW 4 DUP(100),400</p><p> MUS_FRQ3 DW 392, 262, 294, 330, 350, 3
20、92, 262, 262</p><p> DW 440, 350, 392, 440, 494, 524, 262, 262</p><p> DW 350, 392, 350, 330, 294, 330</p><p> DW 350, 330, 294, 262, 294, 330, 294, 262,
21、 247, 262,-1</p><p> MUS_TIM3 DW 200, 4 DUP(100), 200, 200, 200</p><p> DW 200, 4 DUP(100), 200, 200, 200</p><p> DW 200, 4 DUP(100), 200</p><p> D
22、W 4 DUP(100), 200, 4 DUP(100), 400</p><p> MUS_FRQ4 DW 330, 392, 330, 294, 330, 392, 330, 394, 330</p><p> DW 330, 392, 330, 294, 262, 294, 330, 392, 294</p>&
23、lt;p> DW 262, 262, 220, 196, 196, 220, 262, 294, 330, 262,-1</p><p> MUS_TIM4 DW 3 DUP(200), 100, 100, 200, 100, 100, 400</p><p> DW 2 DUP(200,200,100,100), 400</
24、p><p> DW 3 DUP(200,100,100), 400</p><p> TABLE DW 262, 294, 330, 349, 392, 440, 494, 525 </p><p> NUMB DB 0AH, 0DH, 'Keyboard number 1~8 ke
25、ys play notes of the scale' </p><p> DB 0AH, 0DH, 'Enter or Ctrl+C to exit'</p><p> DB 0AH, 0DH, '$'</p><p> DATA ENDS</p><p> STACK
26、SEGMENT PARA STACK 'STACK' </p><p> STA DB 200 DUP('STACK') </p><p> STACK ENDS</p><p> CODE SEG
27、MENT</p><p> ASSUME DS: DATA, SS: STACK, CS: CODE, ES: DATA</p><p> START: MOV AX, DATA </p><p> MOV DS, AX</p><p> MOV ES, AX</p>
28、<p> MOV AX, STACK </p><p> MOV SS, AX</p><p> SHOW MACRO B </p><p> MOV DX, OFFSET B </p>
29、<p> MOV AH, 09H </p><p><b> INT 21H</b></p><p><b> ENDM</b></p><p> SHOW INFO1 </p
30、><p> LOP: SHOW MUSLIST </p><p> MOV AH, 01H </p><p> INT 21H </p><p>
31、CMP AL, 36H </p><p> JZ RETU </p><p> CMP AL, 31H </p><p><b> JNZ B0</b></p><p> CALL MUS
32、IC1</p><p> JMP EXIT1</p><p> B0: CMP AL, 32H </p><p><b> JNZ C0</b></p><p> CALL MUSIC2</p><p> J
33、MP EXIT1</p><p> C0: CMP AL, 33H </p><p><b> JNZ D0</b></p><p> CALL MUSIC3</p><p> JMP EXIT1</p>&
34、lt;p> D0: CMP AL, 34H </p><p><b> JNZ E0</b></p><p> CALL MUSIC4</p><p> JMP EXIT1</p><p> E0: C
35、MP AL, 35H </p><p> JNZ EXIT</p><p> SHOW NUMB</p><p> CALL MUSIC5</p><p> EXIT1: SHOW INFO5
36、 </p><p><b> JMP LOP</b></p><p> EXIT: SHOW INFO4 </p><p> SHOW INFO5 <
37、/p><p><b> JMP LOP</b></p><p> RETU: MOV AX, 4C00H </p><p><b> INT 21H</b></p><p> MUSIC1 PROC
38、 </p><p> LEA SI, MUS_FRQ1</p><p> LEA BP,DS: MUS_TIM1</p><p> FREQ1: MOV DI, [SI]</p><p> CMP DI,-1</p><p&
39、gt; JE END_MUS1</p><p> MOV BX, DS: [BP]</p><p> CALL GENSOUND</p><p> ADD SI,2</p><p> ADD BP,2</p><p> JMP FREQ1</p><p> EN
40、D_MUS1:RET</p><p> MUSIC1 ENDP</p><p> MUSIC2 PROC </p><p> LEA SI, MUS_FRQ2</p><p> LEA BP,DS: MUS_TIM2<
41、;/p><p> FREQ2: MOV DI, [SI]</p><p> CMP DI,-1</p><p> JE END_MUS2</p><p> MOV BX, DS: [BP]</p><p> CALL GENSOUND</p><p> ADD SI
42、,2</p><p> ADD BP,2</p><p> JMP FREQ2</p><p> END_MUS2:RET</p><p> MUSIC2 ENDP</p><p> MUSIC3 PROC &
43、lt;/p><p> LEA SI, MUS_FRQ3</p><p> LEA BP,DS: MUS_TIM3</p><p> FREQ3: MOV DI, [SI]</p><p> CMP DI,-1</p><p> JE END_MUS3</p><p>
44、 MOV BX, DS: [BP]</p><p> CALL GENSOUND</p><p> ADD SI,2</p><p> ADD BP,2</p><p> JMP FREQ3</p><p> END_MUS3:RET</p><p> MUSIC3
45、 ENDP</p><p> MUSIC4 PROC </p><p> LEA SI, MUS_FRQ4</p><p> LEA BP,DS: MUS_TIM4</p><p> FREQ4: MOV DI, [SI]<
46、;/p><p> CMP DI,-1</p><p> JE END_MUS4</p><p> MOV BX, DS: [BP]</p><p> CALL GENSOUND</p><p> ADD SI,2</p><p> ADD BP,2</p>
47、<p> JMP FREQ4</p><p> END_MUS4:RET</p><p> MUSIC4 ENDP</p><p> MUSIC5 PROC NEAR </p><p><b> PUSH AX&
48、lt;/b></p><p><b> PUSH BX</b></p><p><b> PUSH CX</b></p><p> LOP5: MOV AH, 01H </p><p> INT
49、 21H </p><p> CMP AL, 0DH </p><p> JE EXIT5</p><p> CMP AL, 31H
50、 </p><p> JB LOP5 </p><p> CMP AL, 38H</p><p> JA LOP5 </p>
51、<p> AND AX, 0FH </p><p> SHL AX, 1 </p><p> SUB AX, 2
52、</p><p> MOV SI, AX</p><p> MOV BX, OFFSET TABLE</p><p> MOV DI, [BX][SI] </p><p> MOV BX, 100
53、 </p><p> CALL GENSOUND </p><p><b> JMP LOP5</b></p><p> EXIT5: POP CX</p><p><b> POP BX&
54、lt;/b></p><p><b> POP AX</b></p><p><b> RET</b></p><p> MUSIC5 ENDP</p><p> GENSOUND PROC
55、 </p><p><b> PUSH AX</b></p><p><b> PUSH BX</b></p><p><b> PUSH CX</b></p><p><b> PUSH DX</b></p><
56、p><b> PUSH DI</b></p><p> MOV AL, 0B6H </p><p> OUT 43H, AL</p><p> MOV DX, 12H </p><
57、;p> MOV AX, 533H*896</p><p><b> DIV DI</b></p><p> OUT 42H, AL </p><p> MOV AL, AH</p><p> OUT 42H, AL
58、 </p><p> IN AL, 61H </p><p> MOV AH, AL</p><p> OR AL, 3 </p><p> OUT 61H, AL
59、 </p><p><b> PUSH AX</b></p><p> WAIT1: MOV CX, 1200 </p><p> DELA1: IN AL, 61H
60、 </p><p> AND AL, 10H</p><p> CMP AL, AH</p><p><b> JE DELA1</b></p><p> MOV AH,AL</p><p> LOOP D
61、ELA1</p><p> DEC BX </p><p> JNZ WAIT1</p><p><b> POP AX</b></p><p> MOV AL, AH</p><p> OUT 61H, A
62、L </p><p><b> POP DI</b></p><p><b> POP DX</b></p><p><b> POP CX</b></p><p><b> POP B
63、X</b></p><p><b> POP AX</b></p><p><b> RET</b></p><p> GENSOUND ENDP</p><p> CODE ENDS</p><p> END START</p&g
64、t;<p><b> 2、實驗現(xiàn)象</b></p><p> 1. 進入DOS后在DOS界面(圖6)進行匯編鏈接并生成可執(zhí)行文件.exe</p><p> 圖6.DOS調試界面</p><p> 2.雙擊可執(zhí)行文件KS.exe(這里我把程序取名為KS)進入操作界面如圖7所示</p><p> 圖7
65、.操作界面初始界面 </p><p> 圖8.按數(shù)字鍵5后進入電子琴界面 </p><p> 圖9.按回車后退出電子琴界面</p><p> 3.在進行操作的時候只要在鍵盤上按1-4這四個數(shù)字鍵就可以任意聽取歌曲1—歌曲4,按數(shù)字鍵5時進入電子琴界面,這時候1-8分別表示音樂CDEFGABC這幾個音符。按回車后退出電子琴操作界面,這時候按6退出程序。</
66、p><p> 四、課程設計的心得與體會</p><p> 這次微機實驗課程設計,使我對微機軟硬件結合有了進一步的了解。原來并不太清楚是什么意思,</p><p> 一直都很模糊,聽課本也是很迷茫;而之前的那些單元實驗,也沒有都做好。之前做的實驗,由于大部分</p><p> 是驗證性的,所以就很被動地去做,甚至并沒有想為什么要那樣連電路,
67、內部的代碼更沒有認真看。這次</p><p> 課程設計,因為要自己去設計整個過程,所以就不得不去了解學習自己原來并沒有真正弄懂的東西。比如</p><p> 一些程序的代碼的意思,匯編語言的邏輯,比如一些芯片的用途。使我對前面所做的實驗有了原理性的了</p><p> 解,回頭看一些實驗,也知其然其所以然了。同時對課本上講的一些內容,不再像以前那樣覺得抽象,
68、通</p><p> 過這次設計,有了具體的理解。</p><p> 同時,我也知道了設計一個項目,應該如何下手。應該先對項目要求有個全面的了解,知道要做什么,</p><p> 然后根據(jù)要求所要涉及到的知識我們要主動去攝取,結合自己已學過的,再對整體框架有個感知,心里有</p><p> 數(shù)后,進行設計。設計時用流程圖,這很重要,這
69、樣整個思路就很清晰,而且是按照軟硬件語言的邏輯順</p><p> 序進行,就很方便。設計過程可以分模塊,不要一開始就想把所有的功能都實現(xiàn)了,應該一個模塊一個模</p><p> 塊地實現(xiàn),再總的連起來,實現(xiàn)最后的總模塊。在每個模塊設計時,盡量想到比較簡單的設計,簡化編程</p><p> 和電路,也可少出錯。對微機是這樣,對其他的像數(shù)字系統(tǒng)設計,也是一樣的。
70、</p><p> 因此,我也覺得微機實驗的這種形式的課程設計是很好也很有必要的。對我們對微機實驗的理解有很大幫助。</p><p><b> 五、參考文獻</b></p><p> [1] 王忠民.微型計算機原理(第二版).西安:西安電子科技大學出版社,2007年</p><p> [2] 馬春燕.微機原理與接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機原理課程設計--計算機仿真電子琴
- 微機原理課程設計----電子琴
- 微機原理課程設計--電子琴設計
- 微機原理課程設計---電子琴設計
- 計算機硬件課程設計 電子琴
- 微機原理課程設計--設計簡易電子琴
- 微機課程設計電子琴
- 電子琴及電子播放器-微機原理課程設計報告
- 微機系統(tǒng)與接口課程設計-電子琴
- 《微機原理與接口技術》課程設計--簡易電子琴設計
- 微機原理與接口技術課程設計報告——電子琴
- 電子琴課程設計
- 課程設計--電子琴
- 電子琴課程設計
- 電子琴課程設計---電子琴的設計與實現(xiàn)
- 接口課程設計電子琴
- 簡易電子琴課程設計
- 簡易電子琴課程設計
- 簡易電子琴課程設計
- 電子琴課程設計報告
評論
0/150
提交評論