電子琴的設(shè)計(jì)-修改提交版.doc_第1頁
電子琴的設(shè)計(jì)-修改提交版.doc_第2頁
電子琴的設(shè)計(jì)-修改提交版.doc_第3頁
電子琴的設(shè)計(jì)-修改提交版.doc_第4頁
電子琴的設(shè)計(jì)-修改提交版.doc_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

課程題目:電子琴的設(shè)計(jì) 姓 名:張思揚(yáng) 學(xué) 號(hào): 201282250228 專業(yè)班級(jí):電氣1202班 指導(dǎo)老師:賀勇老師 課程時(shí)間:2014年11.15-12.03課程設(shè)計(jì)任務(wù)書一、課程設(shè)計(jì)初始條件:1.用于調(diào)試程序的宏基兼容PC機(jī)一臺(tái);2.安裝DOS/WIN98操作系統(tǒng)或運(yùn)行于DOS/ WIN98兼容方式;3. EDIT 等文本編輯器輸入80x86匯編程序,MASM 5.0編譯及鏈接程序。二、要求完成的主要任務(wù): 1.使用匯編語言設(shè)計(jì)一個(gè)運(yùn)行于計(jì)算機(jī)的電子琴軟件,軟件應(yīng)實(shí)現(xiàn)彈奏 功能。彈奏即用戶每按一琴鍵彈奏相應(yīng)音符。三、時(shí)間安排: 1.程序框圖設(shè)計(jì):3天 2.編程:4天 3.調(diào)試:3天 4.編寫設(shè)計(jì)報(bào)告:4天四、人員安排: 1.流程圖:孟雪巍、王紹文、李燈、柏衡祁 2.電路圖:章宇軒、張思揚(yáng)、梁振、廖博斌 3.程序設(shè)計(jì):孟雪巍、李燈(發(fā)音);周燕生、張思揚(yáng)(關(guān)揚(yáng)聲器); 廖博斌、柏衡祁(彈奏)、 4.調(diào)試:梁振、王紹文、章宇軒、孟雪巍、周燕生第 0 頁 共 12 頁長(zhǎng)沙理工大學(xué)微機(jī)原理與接口技術(shù)課程設(shè)計(jì)目 錄摘 要3一、設(shè)計(jì)任務(wù)和思路41.設(shè)計(jì)任務(wù)42.設(shè)計(jì)思路4二、硬件部分工作原理51. 8255工作原理52. 8253工作原理6三、程序流程圖7四、各部分功能實(shí)現(xiàn)說明71. 發(fā)音部分功能實(shí)現(xiàn)72.彈奏功能的實(shí)現(xiàn)8結(jié) 束 語9本科生課程設(shè)計(jì)成績(jī)?cè)u(píng)定表10摘 要匯編語言是一種功能很強(qiáng)的程序設(shè)計(jì)語言,也是利用計(jì)算機(jī)所有硬件特性并能直接控制硬件的語言。利用匯編語言能夠直接訪問與硬件相關(guān)的存儲(chǔ)器或I/O端口,從而最大限度地發(fā)揮硬件的功能。本文主要介紹了利用匯編語言設(shè)計(jì)一個(gè)運(yùn)行于計(jì)算機(jī)的電子琴軟件,軟件能夠?qū)崿F(xiàn)彈奏的功能,當(dāng)按下彈奏鍵時(shí),實(shí)現(xiàn)彈奏功能,發(fā)出音符對(duì)應(yīng)頻率的聲音。首先介紹了PC機(jī)內(nèi)揚(yáng)聲器的控制電路,接著介紹了相關(guān)接口芯片8255和8253的內(nèi)部結(jié)構(gòu)和工作原理,接著講述了各部分功能的具體實(shí)現(xiàn)方法。關(guān)鍵詞:匯編語言,8255,8253,揚(yáng)聲器 電子琴的設(shè)計(jì)一、設(shè)計(jì)任務(wù)和思路1.設(shè)計(jì)任務(wù)使用匯編語言設(shè)計(jì)一個(gè)運(yùn)行于計(jì)算機(jī)的電子琴軟件,軟件應(yīng)實(shí)現(xiàn)彈奏功能。彈奏即用戶按照1-8按鍵則揚(yáng)聲器發(fā)出對(duì)應(yīng)聲音的音符。2.設(shè)計(jì)思路 電子琴的設(shè)計(jì)實(shí)際上就是要設(shè)計(jì)一個(gè)程序,能夠通過該程序控制PC機(jī)內(nèi)揚(yáng)聲器的發(fā)聲規(guī)律,按下相應(yīng)的按鍵后,揚(yáng)聲器能發(fā)出指定頻率的聲音。PC機(jī)內(nèi)的揚(yáng)聲器是通過并行接口芯片8255和定時(shí)芯片8253來控制發(fā)音的,其電路連接方式如下圖所示。 8255A PB1 PB0 CLK2 8253GATE2 OUT2 &揚(yáng)聲器1.19318MHZ 圖1 PC機(jī)內(nèi)揚(yáng)聲器控制電路由圖可知,揚(yáng)聲器是由8253通道2產(chǎn)生的方波信號(hào)和8255的PB1 相與后驅(qū)動(dòng)發(fā)聲的,且通道2的門信號(hào)由8255的PB0提供,要想讓揚(yáng)聲器發(fā)聲,PB0和PB1必須同時(shí)為高電平,因此,可以通過對(duì)8255的PB0和PB1的設(shè)置來控制揚(yáng)聲器的開通和關(guān)斷,而其發(fā)音頻率可以通過對(duì)8253通道2的計(jì)數(shù)初值的設(shè)置來控制。所設(shè)計(jì)程序的任務(wù)就是要通過對(duì)按鍵的判斷來設(shè)置8255的PB0和PB1輸出電平的高低,以及8253通道2計(jì)數(shù)初值的設(shè)置。計(jì)數(shù)初值N=時(shí)鐘頻率/音階頻率.各音階的頻率如下表所示。表1 各音符頻率表音符1234567頻率262294330349392440494二、硬件部分工作原理1. 8255工作原理8255的內(nèi)部結(jié)構(gòu)圖如圖2所示,它有3個(gè)數(shù)據(jù)端口,分為兩組,A組由A口和C口高四位組成,B組由B口和C口低四位組成。其方式控制字如圖3所示。圖2 8255內(nèi)部結(jié)構(gòu)圖圖3 8255方式控制字方式控制字的特征位D0D7D6D5D4D3D2D1 1 A組工作方式0 0方式00 1方式11 方式2B組工作方式0方式01方式1A口輸入/輸出1輸入0輸出PC7PC4輸入/輸出1輸入0輸出B口輸入/輸出1輸入0輸出PC3PC0輸入/輸出1輸入0輸出 PC機(jī)內(nèi)8255的A口,B口,C口和控制口的端口地址分別為:60H,61H,62H,63H。2. 8253工作原理 8253芯片中有3個(gè)計(jì)數(shù)通道,稱為通道0,1,2,它們與外部電路相連的信號(hào)線有3根:CLK,GATE,OUT,CLK是脈沖輸入端,GATE是門控信號(hào),OUT是輸出信號(hào),計(jì)數(shù)器工作在減1狀態(tài)。其內(nèi)部結(jié)構(gòu)圖和方式控制字格式如圖4,圖5所示。其中當(dāng)計(jì)數(shù)器工作在方式3時(shí),輸出信號(hào)為方波信號(hào)。內(nèi)部總線A1GATE0CLK0OUT0GATE1CLK1OUT1GATE2CLK2OUT2D0-D7計(jì)數(shù)器0計(jì)數(shù)器2計(jì)數(shù)器1控制寄存器A0數(shù)據(jù)總線緩沖器R/W邏輯電路圖4 8253內(nèi)部結(jié)構(gòu)圖D7D6D5D4D3D2D1D0計(jì)數(shù)器選擇00 計(jì)數(shù)器001計(jì)數(shù)器110 計(jì)數(shù)器211 不用00 計(jì)數(shù)器鎖存01 讀寫低8位10 讀寫高8位11 讀寫16位工作方式選擇000 方式0001 方式110 方式211 方式3100 方式4101 方式5計(jì)數(shù)方式0 二進(jìn)制1 BCD計(jì)數(shù)圖5 8253控制字格式PC機(jī)內(nèi)8253的通道0,通道1,通道2,控制口的端口地址分別為:40H,41H,42,43H。因?yàn)閾P(yáng)聲器是由通道2來控制的,故應(yīng)選擇通道2,工作方式選為方式3,輸出的信號(hào)則為方波信號(hào)。三、程序流程圖 軟件流程圖如下圖所示:計(jì)算初值查表的相應(yīng)的頻率8253初始化開揚(yáng)聲器延時(shí)關(guān)揚(yáng)聲器結(jié)束讀取按鍵開始圖10 發(fā)音子程序流程圖四、各部分功能實(shí)現(xiàn)說明1. 發(fā)音部分功能實(shí)現(xiàn)由更件的連接形式可知,揚(yáng)聲器的開斷是由8255的PB0和PB1以及8253通道2同時(shí)控制的,PB0和PB1同時(shí)為高電平時(shí),揚(yáng)聲器開,有一個(gè)為低電平時(shí),揚(yáng)聲器關(guān)斷,又知8255 B口地址為61H,8253通道2地址為42H,控制口地址為43H。具體程序編寫如下。 8253初始化程序段: mov al,10110110b ;選擇8253的通道2,并設(shè)置為工作方式3out 43h,al mov ax,bxout 42h,al ;將計(jì)數(shù)初值的低8位寫入計(jì)數(shù)通道m(xù)ov al,ahout 42h,al ;將計(jì)數(shù)初值的高8位寫入計(jì)數(shù)通道開揚(yáng)聲器程序段:in al,61h ;讀入B口數(shù)據(jù)or al,03h ;將PB0 和PB1置1out 61h,al ;將設(shè)置好的數(shù)據(jù)送回B口關(guān)揚(yáng)聲器程序段:in al,61h ;讀入B口數(shù)據(jù) and al,0fch ;將PB0 和PB1置0out 61h,a ;將設(shè)置好的數(shù)據(jù)送回B口2.彈奏功能的實(shí)現(xiàn)當(dāng)按鍵為數(shù)字1-8時(shí),選擇彈奏功能,通過對(duì)按鍵的判斷,求得其偏移地址,然后通過查表得其相應(yīng)頻率值,再由上述計(jì)算計(jì)數(shù)初值的方法求得計(jì)數(shù)初值,然后將計(jì)數(shù)初值送人8253的通道2,最后調(diào)用發(fā)音子程序即實(shí)現(xiàn)彈奏功能。具體程序段如下: sub al,31h ;求偏移量 shl al,1 mov bl,al ;保存偏移量 mov bh,0 mov ax,num1 ;計(jì)算計(jì)數(shù)初值 mov dx,num2 div word ptrtab+bx mov bx,ax ;保存計(jì)數(shù)初值結(jié) 束 語本科生課程設(shè)計(jì)成績(jī)?cè)u(píng)定表姓 名孟雪巍性 別男專業(yè)、班級(jí)電氣1202班課程設(shè)計(jì)題目: 電子琴的設(shè)計(jì)課程設(shè)計(jì)答辯或質(zhì)疑記錄:成績(jī)?cè)u(píng)定依據(jù):評(píng)定項(xiàng)目1.選題

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論