微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)

微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)

ID:31896602

大?。?9.50 KB

頁數(shù):7頁

時(shí)間:2019-01-25

微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)_第1頁
微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)_第2頁
微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)_第3頁
微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)_第4頁
微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)_第5頁
資源描述:

《微機(jī)原理課程設(shè)計(jì)-電子琴設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、.前言本實(shí)驗(yàn)是利用微機(jī)原理試驗(yàn)箱、8255芯片、8254芯片、鍵盤、揚(yáng)聲器等硬件設(shè)備,設(shè)計(jì)簡易電子琴。首先利用了編程程序,編輯了8255芯片控制字,對(duì)其進(jìn)行初始化,使其工作在方式0,即基本輸入輸出狀態(tài),將8255的A端口設(shè)置為輸出,C端口進(jìn)行,經(jīng)CPU運(yùn)算后,輸出到8254芯片的A端口中,由此實(shí)現(xiàn)對(duì)其的初始化。將8254芯片設(shè)置為工作在方式3,即輸出對(duì)稱方波狀態(tài)。A端口為輸入,“OUT”指令可將輸出對(duì)應(yīng)一定頻率的方波送到揚(yáng)聲器中,由此實(shí)現(xiàn)發(fā)聲。本實(shí)驗(yàn)通過頻率大小控制發(fā)出聲音的高低,通過對(duì)延時(shí)程序的調(diào)用控制發(fā)出聲音的長短。并通過所編程序?qū)崿F(xiàn)對(duì)鍵盤的重復(fù)掃描,重而可以彈奏多個(gè)音符的試驗(yàn)?zāi)康?。關(guān)鍵字

2、:編程、工作方式、運(yùn)算...一、設(shè)計(jì)題目:簡易電子琴設(shè)計(jì)二、設(shè)計(jì)內(nèi)容:實(shí)驗(yàn)電路如圖16-1,8253的CLK0接1MHZ時(shí)鐘,GATE0接8255的PA1,OUT0和8255的PA0接到與門的兩個(gè)輸入端,K8跳線連接喇叭,編程使計(jì)算機(jī)的數(shù)字鍵1、2、3、4、5、6、7作為電子琴按鍵,按下即發(fā)出相應(yīng)的音階。三、設(shè)計(jì)目的:1、通過8253產(chǎn)生不同的頻率信號(hào),使PC機(jī)成為簡易電子琴。2、了解利用8255和8253產(chǎn)生音樂的基本方法。3、通過課程設(shè)計(jì)使學(xué)生更進(jìn)一步掌握微機(jī)原理及應(yīng)用課程的有關(guān)知識(shí),提高應(yīng)用微機(jī)解決問題的能力,加深對(duì)微機(jī)應(yīng)用的理解。通過查閱資料,結(jié)合所學(xué)知識(shí)進(jìn)行軟、硬件的設(shè)計(jì),使學(xué)生初步

3、掌握應(yīng)用微機(jī)解決問題的步驟及方法。為以后學(xué)生結(jié)合專業(yè)從事微機(jī)應(yīng)用設(shè)計(jì)奠定基礎(chǔ)。四、設(shè)計(jì)要求:1.可以彈出7個(gè)音階。2.彈奏簡短音樂。3.通過改變鍵盤輸入來改變8254輸出頻率,實(shí)現(xiàn)揚(yáng)聲器發(fā)音五、編程提示:1、利用8255的PA0口來施加控制信號(hào)給與門,用來控制揚(yáng)聲器的開關(guān)狀態(tài)。再利用設(shè)置不同的計(jì)數(shù)值,使8253產(chǎn)生不同頻率的波形,使揚(yáng)聲器產(chǎn)生不同頻率的音調(diào),達(dá)到類似與音階的高低音變換。對(duì)于音樂,每個(gè)音階都有確定的頻率。各音階標(biāo)稱頻率值:音階12345671*低頻率(單位:Hz)262294330347392440494524高頻率(單位:Hz)5245886606987848809881048

4、...六、設(shè)計(jì)原程序及注解;*******************************;;*電子琴實(shí)驗(yàn)*;;*******************************;datasegmentio8255aequ288hio8255bequ28bhio8253aequ280hio8253bequ283htabledw524,588,660,698,784,880,988,1048;高音的;tabledw262,294,330,347,392,440,494,524;低音的msgdb'Press1,2,3,4,5,6,7,8,ESC:',0dh,0ah,'$'dataendscodeseg

5、mentassumecs:code,ds:datastart:movax,datamovds,axmovdx,offsetmsgmovah,9int21h;顯示提示信息sing:movah,7int21h;從鍵盤接收字符,不回顯cmpal,1bhjefinish;若為ESC鍵,則轉(zhuǎn)finishcmpal,'1'jlsingcmpal,'8'jgsing;若不在'1'-'8'之間轉(zhuǎn)singsubal,31hshlal,1;轉(zhuǎn)為查表偏移量movbl,al;保存偏移到bxmovbh,0movax,4240H;計(jì)數(shù)初值=1000000/頻率,保存到AXmovdx,0FHdivwordptr[table

6、+bx]movbx,ax...movdx,io8253b;設(shè)置8253計(jì)時(shí)器0方式3,先讀寫低字節(jié),再讀寫高字節(jié)moval,00110110Boutdx,almovdx,io8253amovax,bxoutdx,al;寫計(jì)數(shù)初值低字節(jié)moval,ahoutdx,al;寫計(jì)數(shù)初值高字節(jié)movdx,io8255b;設(shè)置8255A口輸出moval,10000000Boutdx,almovdx,io8255amoval,03houtdx,al;置PA1PA0=11(開揚(yáng)聲器)calldelay;延時(shí)moval,0houtdx,al;置PA1PA0=00(關(guān)揚(yáng)聲器)jmpsingfinish:movax

7、,4c00hint21hdelayprocnear;延時(shí)子程序pushcxpushaxmovax,15x1:movcx,0ffffhx2:deccxjnzx2decaxjnzx1popaxpopcxretdelayendpcodeendsendstart...七、程序流程圖:八、硬件連線圖...九、實(shí)驗(yàn)結(jié)果連接完線路后啟動(dòng)電路開關(guān),然后運(yùn)行程序,就會(huì)出現(xiàn)提示界面,然后鍵盤輸入數(shù)字即可有相應(yīng)音階音樂

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。