




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、11 電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn) 1.1 實(shí)驗(yàn)內(nèi)容根據(jù)實(shí)驗(yàn)提供的音樂頻率表和時(shí)間表,編寫程序控制8254,使其輸出連接到揚(yáng)聲器上能發(fā)出相應(yīng)的樂曲。1.2 實(shí)驗(yàn)原理一個(gè)音符對(duì)應(yīng)一個(gè)頻率,將對(duì)應(yīng)一個(gè)音符頻率的方波通到揚(yáng)聲器上,就可以發(fā)出這個(gè)音符的聲音。將一段樂曲的音符對(duì)應(yīng)頻率的方波依次送到揚(yáng)聲器,就可以演奏出這段樂曲。利用 8254 的方式 3“方波發(fā)生器”,將相應(yīng)一種頻率的 計(jì)數(shù)初值寫入計(jì)數(shù)器,就可產(chǎn)生對(duì)應(yīng)頻率的方波。計(jì)數(shù)初值的計(jì)算如下:計(jì)數(shù)初值=輸入時(shí)鐘十輸出頻例如輸入時(shí)鐘采用 1MHz 要得到 800Hz 的頻率,計(jì)數(shù)初值即為 1000000 十 800。音符與頻率對(duì)照關(guān)系如 表 1 所示。對(duì)于每一個(gè)
2、音符的演奏時(shí)間,可以通過軟件延 時(shí)來處理。首先確定單位延時(shí)時(shí)間程序(根據(jù) CPU 勺頻率不同而有所變化)。然 后確定每個(gè)音符演奏需要幾個(gè)單位時(shí)間,將這個(gè)值送入DL 中,調(diào)用 DALLY 子程序即可。音符與頻率對(duì)照表單閔Hz)下面提供了樂曲友誼地久天長實(shí)驗(yàn)參考程序。頻率表和時(shí)間表是-對(duì)應(yīng)的,頻率表的最后一項(xiàng)為 0,作為重復(fù)的標(biāo)志。根據(jù)頻率表中的頻率算出對(duì)應(yīng)的計(jì)數(shù)初值,然后依次寫入8254 的計(jì)數(shù)器。將時(shí)間表中相對(duì)時(shí)間值帶入延時(shí)程序來得到音符演奏時(shí)間。實(shí)驗(yàn)參考程序流程如 圖 1所示。1.3 實(shí)驗(yàn)步驟1. 參考圖 2 所示連接實(shí)驗(yàn)線路;2. 編寫實(shí)驗(yàn)程序,經(jīng)編譯、連接無誤后裝入系統(tǒng);3. 運(yùn)行程序,
3、聽揚(yáng)聲器發(fā)出的音樂是否正確。ABCDEFGABCDEFGA A BCDEBCDE FGFG22124813114716517519624827814716518519622112441 4即262294330350333495556294330371393441A A BCDEBCDE FGFG2 2 OS-91O6OS-91O68 8 _y_y OGOG112112背珞爰700700翹2222S S4 4百2 2 0 04949707045232824523282慮霜11111 165693O124S2LS465693O124S2LS41&1E1&1E35H35H121312
4、13141421.4 程序代碼1.4.1 第一個(gè)程序IOY0EQU 0600HMY8254_COUNT0 EQU IOY0+00H;8254計(jì)數(shù)器0 端口地址MY8254_COUNT1 EQU IOY0+02H;8254計(jì)數(shù)器1 端口地址MY8254_COUNT2 EQU IOY0+04H;8254計(jì)數(shù)器2 端口地址MY8254_MODEEQU IOY0+06H;8254控制寄存器端口地址STACK1 SEGMENT STACKDW 256 DUPSTACK1 ENDSDATA SEGMENTFREQ_LIST DW 196,262,262,262,330,294,262,294,330,26
5、2,262,330,393;頻率表DW 441,441,393,330,330,262,294,262,294,330,262,221,221,196DW 262,441,393,330,330,262,294,262,294,441,393,330,330,393DW 441,525,393,330,330,262,294,262,294,330,262,221,221,196,262,0TIME_LIST DB 4, 6, 2, 4, 4, 6, 2, 4, 4, 6, 2, 4, 4 表DB 12, 4, 6,2, 4, 4, 6,2, 4, 4,6, 2, 4, 4DB12,4,6,2
6、,4, 4,6,2,4, 4,6, 2,4, 4DB 12, 4, 6,2, 4, 4, 6,2, 4, 4,6, 2, 4, 4, 12DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV DX,MY8254_MODE初始化 8254 工作方式定時(shí)器 0、方式 3OUT DX,ALBEGIN: MOV SI,OFFSET FREQ_LISTMOV DI,OFFSET TIME LIST系統(tǒng)總線系統(tǒng)總線D0illGATEQD7CLKOA0AlWROUTORDC3&254單元vcc時(shí)間裝入頻率表
7、起始地址裝入時(shí)間表起始地址MOV AL,36HICiF容rov3o0圖2O 7也M-0-0- CXK系統(tǒng)總轡SPK電子發(fā)蘆單元3PLAY:MOV DX,0FH;MOV AX,4240HDIV WORD PTR SI ;MOV DX,MY8254_COUNTOOUT DX,AL;MOV AL,AHOUT DX,ALMOV DL,DI;CALL DALLYADD SI,2INC DICMP WORD PTR SI,0JE BEGINJMP PLAYDALLY PROC;D0:MOV CX,0010HD1:MOV AX,0FF0HD2:DEC AXJNZ D2LOOP D1DEC DLJNZ D0R
8、ETDALLY ENDPCODE ENDSEND START1.4.2 第二個(gè)程序【實(shí)驗(yàn)內(nèi)容】按下鍵盤上的數(shù)字鍵 1 7,使得揚(yáng)聲器發(fā)出音樂樂譜的 1-7 音【實(shí)驗(yàn)代碼】IOY0EQU 0600HMY8254_COUNT0 EQU IOY0+00H;8254計(jì)數(shù)器0 端口地址MY8254_COUNT1 EQU IOY0+02H;8254計(jì)數(shù)器1 端口地址MY8254_COUNT2 EQU IOY0+04H;8254計(jì)數(shù)器2 端口地址MY8254_MODEEQU IOY0+06H;8254控制寄存器端口地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSD
9、ATASEGMENT輸入時(shí)鐘為 1MHz 1M = 0F4240H取出頻率值計(jì)算計(jì)數(shù)初值,0F4240H /輸出頻率裝入計(jì)數(shù)初值取出演奏相對(duì)時(shí)間,調(diào)用延時(shí)子程序判斷是否到曲末?延時(shí)子程序4table1 DW262,294,330,340,393,441,495 info db0ah,0dh,Please in put an integer(17):$DATACODEENDSSEGMENTASSUME CS:CODE,DS:DATA5START: MOV AX,DATAMOV DS,AXMOV DX,MY8254_MODEMOV AL,36H;OUT DX,ALPLAY:mov si,offse
10、t table1 movdx,offset info movah,09h int 21hmov ah,01h int 21h subal,30h xor ah,ah cmpal,0h jz done add ax,axadd si,ax dec si dec siMOV DX,0FH;MOV AX,4240HDIV WORD PTR SI;MOVDX,MY8254_COUNTO OUTDX,AL;MOV AL,AHOUT DX,ALMOV DL,01h;CALL DALLY JMP PLAYDALLYPROC;D0:MOV CX,0010HD1:MOV AX,0FF0HD2:DEC AXJNZ D2LOOP D1DEC DLJNZ D0RETDALLY ENDPdone:CODE ENDS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 私人借款合同范本【常用版】8篇
- 公路路基工程施工合同
- 2025年江蘇貨運(yùn)從業(yè)資格證模擬考試下載什么軟件
- 中小企業(yè)合同管理流程控制
- 2025年迪慶貨運(yùn)從業(yè)資格證模擬考試題目
- 教育培訓(xùn)范文及案例分享
- 勞務(wù)分包合同臨建
- 訂餐配送合同7篇
- 合同協(xié)議鋼材采購合同8篇
- 高層精裝二手房買賣合同書7篇
- 2025年上半年潛江市城市建設(shè)發(fā)展集團(tuán)招聘工作人員【52人】易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 旋轉(zhuǎn)類機(jī)電設(shè)備故障預(yù)測、診斷研究
- 旅游電子商務(wù)(第2版) 課件全套 周春林 項(xiàng)目1-8 電子商務(wù)概述-旅游電子商務(wù)數(shù)據(jù)挖掘
- 企業(yè)承包經(jīng)營合同范本
- 中學(xué)校長2025春開學(xué)典禮講話:以黃旭華之魂、DeepSeek 之智、哪吒之氣逐夢新程
- 【課件】自然環(huán)境課件-2024-2025學(xué)年七年級(jí)地理下冊人教版
- 2025年01月公安部第三研究所公開招聘人民警察筆試筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 2025-2030全球鋰電池用隔膜行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025年南京鐵道職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 《抖音高活躍群體研究報(bào)告》
- 2025年高考作文備考訓(xùn)練之二元思辨作文題目解析及范文:我與“別人”
評(píng)論
0/150
提交評(píng)論