微機(jī)原理與接口技術(shù)_第1頁
微機(jī)原理與接口技術(shù)_第2頁
微機(jī)原理與接口技術(shù)_第3頁
微機(jī)原理與接口技術(shù)_第4頁
微機(jī)原理與接口技術(shù)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、一. 實(shí)驗(yàn)名稱:發(fā)聲器二. 功能及使用方法:設(shè)計(jì)一個(gè)電子琴發(fā)聲程序,并在運(yùn)行時(shí)通過實(shí)驗(yàn)箱上的揚(yáng)聲器發(fā)聲,并且當(dāng)按下數(shù)字114時(shí),依次發(fā)出1,2,3,4,5,6,7的低音和1 , 2, 3, 4, 5, 6, 7的中音。并在實(shí)驗(yàn)箱上的發(fā)聲器上發(fā)聲,這肯 定需要有發(fā)聲程序,驅(qū)動(dòng)發(fā)聲程序,還有鍵盤掃描程序,及為了能夠聽見清脆的字符音還得對程序進(jìn)行 必要的延時(shí)。利用 8254芯片所提供轉(zhuǎn)化后的頻率送到發(fā)聲單元進(jìn)行發(fā)聲及8255芯片送提供的輸入輸出功能,來完成從鍵盤的輸入到發(fā)聲裝置發(fā)聲的控制。電子發(fā)聲原理:一個(gè)音符對應(yīng)一個(gè)頻率,將對應(yīng)一個(gè)音符頻率的方波通到揚(yáng)聲器上,就可以發(fā)出這個(gè)音符的聲 音。將一段樂曲

2、的音符對應(yīng)頻率的方波一次送到揚(yáng)聲器,就可以演奏出這段樂曲。 利用8254的“方波發(fā)生器”,將相應(yīng)的一種頻率的計(jì)數(shù)初值寫入計(jì)數(shù)器,就可以產(chǎn)生對應(yīng)頻率的方波。計(jì)數(shù)初值的 計(jì)算如下:計(jì)數(shù)初值=輸入時(shí)鐘輸出頻率例如輸入時(shí)鐘采用 1MHZ,要得到800HZ的頻率,計(jì)數(shù)初值即為1000000/800。音符與表的對照關(guān)系如上表所示。對于每一個(gè)音符的演奏時(shí)間,可以通過軟件延時(shí)來處理。首先確定單位延時(shí)子程序(根據(jù)CPU的頻率不同而有所變化)。然后確定每個(gè)音符演奏需要幾個(gè)單位延時(shí),將此值送入寄存 器,再調(diào)用延時(shí)子程序即可。三. 實(shí)驗(yàn)器件:通過實(shí)驗(yàn)箱上的揚(yáng)聲器發(fā)聲,并且當(dāng)按下數(shù)字114時(shí),依次發(fā)出1,2,3,4,5

3、,6,7的低音和1 , 2, 3, 4, 5, 6, 7的中音。并在實(shí)驗(yàn)箱上的發(fā)聲器上發(fā)聲。選用器件:8254和8255芯片各一片,微機(jī)一臺(tái),TPC-H通用微機(jī)接口實(shí)驗(yàn)系統(tǒng)一臺(tái),揚(yáng)聲器和導(dǎo)線若干四. 電路連接圖8254部分接線圖xirxi-DO-(i.TEoirCLKDADAl-UROCTI)RDi CS82 34單冗oO CLK第統(tǒng)總線O SPK電子段聲輕元8255部分接線圖XEVAnXD7XA1XA21UV#lORfrOOOOOooPBUDOPB1PB2PB3D7PB4PBSADAl岷PB6PB7PADPAIFA2JWRDCSPCI1*C3廠iCaa-CLQOB c nE碼W.五. 各子程

4、序功能1為8255和8254所定義的端口地址:I0Y0 EQU 06C0HMY8254_COUNTO EQU I0Y0+00HMY8254_COUNT1 EQU I0Y0+02HMY8254_COUNT2 EQU I0Y0+04HMY8254_MODE EQU I0Y0+06HMY8255_A EQU 0640HMY8255_B EQU 0642HMY8255_C EQU 0644HMY8255_MODE EQU 0646H2頻率表及所對應(yīng)的時(shí)間表:FREQ_LIST DW 262H,294H,330H,349H,392H,440H,496HDW 523H,587H,659H,698H,784

5、H,880H,988HDTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB 7FH,6FH,77H,7CH,39H,5EH,79H,71H3定義8255和8254的控制字MOV DX,MY8255_MODEMOV AL,81HOUT DX,ALMOV DX,MY8254_MODEMOV AL,36HOUT DX,AL4.CCSCAN子程序?qū)崿F(xiàn)取出按鍵值并輸入A 口(清屏子程序)CCSCAN:MOV AL,00HMOV DX,MY8255_A OUT DX,ALMOV DX,MY8255_C IN AL,DX NOT ALAND AL,0FHRET5.Play

6、輸出發(fā)音的子程序PLAY PROC MOV AH,0 MOV SI,AX SHL SI,1MOV DX,0FH MOV AX,4240H DIV WORD PTR SIMOV DX,MY8254_COUNT0 OUT DX,AL MOV AL,AH OUT DX,ALRETPLAY ENDP6.延時(shí)子程序DALL Y PROCD0: MOV CX,0010HD1: MOV AX,02HD2: DEC AXJNZ D2LOOP D1 DEC DLJNZ D0RETDALL Y ENDP7.按鍵掃描功能COLUM:MOV AL,CHMOV DX,MY8255_AOUT DX,ALMOV DX,MY

7、8255_CIN AL,DXL1:TEST AL,01HJNZ L2MOV AL,00HJMP KCODEL2:TEST AL,02HJNZ L3MOV AL,04HJMP KCODEL3:TEST AL,04HJNZ L4MOV AL,08HJMP KCODEL4:TEST AL,08HJNZ NEXTMOV AL,0CHKCODE: ADD AL,CLCALL PLAYPUSH AXKON:CALL DALL YCALL CCSCANJNZ KONPOP AXJMP BEGIN1六 源程序清單I0Y0 EQU 06C0HMY8254_COUNT0 EQU I0Y0+00HMY8254_CO

8、UNT1 EQU I0Y0+02HMY8254_COUNT2 EQU I0Y0+04HMY8254_MODE EQU I0Y0+06HMY8255_A EQU 0640HMY8255_B EQU 0642HMY8255_C EQU 0644HMY8255_MODE EQU 0646HSTACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDATA SEGMENTFREQ_LIST DW 262H,294H,330H,349H,392H,440H,496HDW 523H,587H,659H,698H,784H,880H,988HDTABLE DB 3FH,06H,

9、5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH,39H,5EH,79H,71HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART:MOV AX,DATAMOV DS,AXMOV DX,MY8255_MODEMOV AL,81HOUT DX,ALMOV DX,MY8254_MODEMOV AL,36HOUT DX,ALBEGIN1:CALL CCSCANJNZ INK1JMP BEGIN1INK1:CALL CCSCANJNZ INK2JMP BEGIN1INK2:MOV CH,0FEHMOV CL,00HCO

10、LUM:MOV AL,CHMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXL1:TEST AL,01HJNZ L2MOV AL,00HJMP KCODEL2:TEST AL,02HJNZ L3MOV AL,04HJMP KCODEL3:TEST AL,04HJNZ L4MOV AL,08HJMP KCODEL4:TEST AL,08HJNZ NEXTMOV AL,0CHKCODE: ADD AL,CLCALL PLAYPUSH AXKON:CALL DALL YCALL CCSCANJNZ KONPOP AXJMP BEGIN1NEXT:INC CLMOV AL,CHTEST AL,08HJZ KERRROL AL,1MOV CH,ALJMP COLUMKERR:JMP BEGIN1CCSCAN:MOV AL,00HMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXNOT ALAND AL,0FHRETPLAY PROCMOV AH,0MOV SI,AXSHL SI,1MOV DX,0FHMOV AX,4240HDIV WORD PTR SIM

溫馨提示

  • 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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論