版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
標(biāo)準(zhǔn)文案微機(jī)原理及接口技術(shù)實(shí)驗(yàn)指導(dǎo)書大全標(biāo)準(zhǔn)文案書寫實(shí)驗(yàn)名稱時(shí)請(qǐng)按下表內(nèi)容填寫實(shí)驗(yàn)名稱:實(shí)驗(yàn)類型驗(yàn)證驗(yàn)證驗(yàn)證驗(yàn)證驗(yàn)證驗(yàn)證綜合實(shí)驗(yàn)學(xué)時(shí)2實(shí)驗(yàn)一、熟悉實(shí)驗(yàn)運(yùn)行環(huán)境實(shí)驗(yàn)實(shí)驗(yàn)二、分支程序設(shè)計(jì)22實(shí)驗(yàn)三、循環(huán)程序設(shè)計(jì)2實(shí)驗(yàn)四、8255A并行接口應(yīng)用實(shí)驗(yàn)2實(shí)驗(yàn)五、中斷特性及實(shí)驗(yàn)六、定時(shí)器實(shí)驗(yàn)七、電子琴實(shí)驗(yàn)8259應(yīng)用編程2/計(jì)數(shù)器實(shí)驗(yàn)4大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)一、熟悉實(shí)驗(yàn)運(yùn)行環(huán)境實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?、熟悉匯編語(yǔ)言程序的調(diào)試環(huán)境2、掌握部分DEBUG命令二、實(shí)驗(yàn)內(nèi)容編寫一個(gè)匯編語(yǔ)言程序,計(jì)算1+2+3+…+99+100,并將結(jié)果存入SUM字單元。通過(guò)調(diào)試程序熟悉匯編語(yǔ)言的上機(jī)操作過(guò)程及部分命令。三、上機(jī)操作過(guò)程1、建立ASM文件(編輯源程序)使用編輯程序EDIT在磁盤上建立源程序EX.ASM例如:D:\MASM>EDITEX.ASM用MASM程序產(chǎn)生OBJ文件源文件建立后,就要用匯編程序?qū)υ次募R編,匯編后產(chǎn)生二進(jìn)制的目標(biāo)文件(OBJ文件)例如:D:\MASM>MASMEX3、用LINK程序產(chǎn)生EXE文件匯編程序已產(chǎn)生出二進(jìn)制的目標(biāo)文件(OBJ),但OBJ文件并不是可執(zhí)行文(LINK)把目標(biāo)文件轉(zhuǎn)換為可執(zhí)行的例如:D:\MASM>LINKEX4、調(diào)試運(yùn)行件,還必須使用連接程序EXE文件在建立了EXE文件后,就可以直接從DOS執(zhí)行程序。如果用戶程序有錯(cuò)誤或者沒(méi)有直接將結(jié)果在終端上顯示出來(lái),程序執(zhí)行完之后無(wú)法看見(jiàn)正確的結(jié)果。那么怎么知道程序執(zhí)行的結(jié)果是正確的呢?此外,大部分程序必須經(jīng)過(guò)調(diào)試階段才能糾正程序執(zhí)行中的錯(cuò)誤,得到正確的結(jié)果。這里就要使用調(diào)試程序。例如:D:\MASM>DEBUGEX.EXE①R命令顯示或修改寄存器中的內(nèi)容例如:_RBXBX0369:059E不作修改,直接回車;否則鍵入修改內(nèi)容,并回車大全標(biāo)準(zhǔn)文案②U命令反匯編a、_U[地址]從指定地址開(kāi)始,反匯編一個(gè)U命令的最后一條指令的下一個(gè)單元開(kāi)始顯示b、_U[范圍]對(duì)指定范圍的內(nèi)存單元進(jìn)行反匯編例如:_U04BA:0100010832個(gè)字節(jié)。如果地址省略,則從上32個(gè)字節(jié)③T命令單步執(zhí)行命令例如:從代碼段的(一次執(zhí)行一條指令)0000H處開(kāi)始單步執(zhí)行_RIPIPXXXX:0000_T④G命令執(zhí)行命令(執(zhí)行多條指令)_G地址1地址2表示從地址1開(kāi)始執(zhí)行指令到地址2結(jié)束例如:從代碼段的_RIP0000H處開(kāi)始連續(xù)執(zhí)行指令,知道0013H處IPXXXX:0000_G0013⑤D命令顯示內(nèi)存單元的內(nèi)容a、_D地址b、_D范圍例如:顯示數(shù)據(jù)段中0000H開(kāi)始的若干個(gè)字節(jié)單元的內(nèi)容_DDS:0000例如:顯示數(shù)據(jù)段中0000H到0010H各字節(jié)單元的內(nèi)容_DDS:00000010⑥E命令修改存儲(chǔ)單元的內(nèi)容例如:修改數(shù)據(jù)段0002H字節(jié)單元的內(nèi)容為0FFH_EDS:0002XXXX:0002XXFF⑦Q命令退出DEBUG程序大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)二、分支程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?、掌握分支程序的結(jié)構(gòu)形式2、掌握分支程序的設(shè)計(jì)方法二、實(shí)驗(yàn)內(nèi)容1、計(jì)算分段函數(shù),X為8位帶符號(hào)數(shù)|X+5|,-10≤x≤20Y=0,其它2、算法分析先將X的范圍確定在-10≤x≤20之內(nèi),除此之外結(jié)果全為0,然后計(jì)算X+5,再根據(jù)結(jié)果的符號(hào)求絕對(duì)值。三、流程圖大全標(biāo)準(zhǔn)文案BeginX(AL)(AL)<-10?(AL)>20?(AL)=(AL)+5(AL)=0SF=0?NEGAL(AL)YEND實(shí)驗(yàn)三、循環(huán)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?、掌握循環(huán)程序的結(jié)構(gòu)形式2、掌握循環(huán)程序的設(shè)計(jì)方法3、進(jìn)一步熟悉DEBUG的常用命令二、實(shí)驗(yàn)內(nèi)容1、根據(jù)題意編寫程序若需對(duì)某單位職工人數(shù)中的男性和女性人數(shù)分別進(jìn)行統(tǒng)計(jì)。在人口屬性統(tǒng)計(jì)表中,男性用‘0’表示,女性用‘1’表示。假設(shè)人口屬性統(tǒng)計(jì)表存放在COUNT,統(tǒng)計(jì)出的男性總?cè)藬?shù)存入BLOCK為首地址的內(nèi)存中,該單位總?cè)藬?shù)為MAN字節(jié)單元,女性總?cè)藬?shù)存入WOMAN字節(jié)單元。數(shù)據(jù)段定義如下:DATASEGMENT大全標(biāo)準(zhǔn)文案BLOCKDB1,0,0,1,0,1……0(長(zhǎng)度為20)MANDB?WOMANDB?COUNTEQU20DATAENDS2、算法分析已知單位的總?cè)藬?shù),首先明確可以使用計(jì)數(shù)器控制法。使用一個(gè)變址寄存器指向人口屬性統(tǒng)計(jì)表的首單元,然后判斷該字節(jié)單元是“1”還是“0”,分別在相應(yīng)計(jì)數(shù)器中加1。直至判斷完每個(gè)字節(jié)結(jié)束。三、流程圖大全標(biāo)準(zhǔn)文案BeginSI指向BLOCKCOUNT(CX)計(jì)數(shù)器BH,BL清零[SI](Al)(AL)=1?INCBHINCBLINCSIDECCX(CX)=0?保存結(jié)果END大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)環(huán)境概述⒈1實(shí)驗(yàn)系統(tǒng)主要特點(diǎn)⒈采用主頻為4.77MHZ的8088CPU為主CPU,并以最小工作方式構(gòu)成系統(tǒng)。⒉配有二片61C256靜態(tài)RAM構(gòu)成系統(tǒng)的W27C512(64K)EP1存放監(jiān)控程序,W27C512EP2存放實(shí)驗(yàn)程序,為實(shí)驗(yàn)系統(tǒng)獨(dú)立運(yùn)行時(shí)下載實(shí)驗(yàn)程序提供方便。64K基本內(nèi)存,地址范圍為00000H-0FFFFH,其中地址范圍F0000H-FFFFF。00000H-00FFFH監(jiān)控占用。另配一片還配有一片⒊自帶鍵盤、顯示器,能獨(dú)立運(yùn)行,為實(shí)驗(yàn)程序調(diào)試帶來(lái)方便。⒋配備Windows仿真調(diào)試軟件,支持機(jī)器碼、匯編、C等三種語(yǔ)言的開(kāi)發(fā)和調(diào)試。⒌提供標(biāo)準(zhǔn)⒍配有各種微機(jī)常用轉(zhuǎn)換接口芯片RS232異步通訊口,以連接IBM-PC機(jī)。/計(jì)數(shù)接口芯片I/O接口芯片,定時(shí)8253、A/D轉(zhuǎn)換接口芯片8279、并行I/O接口芯片0809、D/A8255、通訊接口0832、中斷控制器8259、鍵盤顯示接口8237等。芯片8250、8251、485和DMA控制器配備鍵盤、數(shù)碼顯示、發(fā)光二極管顯示、開(kāi)關(guān)量、電機(jī)、直流電機(jī)、揚(yáng)聲器等輸入輸出設(shè)備。⒎LED16×16、LCD12864、溫度壓力、步進(jìn)⒏帶有脈沖發(fā)生器、計(jì)數(shù)器電路、單脈沖發(fā)生器等常用電路。⒐可以單步、斷點(diǎn)、全速調(diào)試各實(shí)驗(yàn)程序。⒑內(nèi)置開(kāi)關(guān)電源,為實(shí)驗(yàn)提供⒒使用環(huán)境:環(huán)境溫度+5V/3A、±l2V/0.5A直流穩(wěn)壓電源。0~+40℃,無(wú)明顯潮濕,無(wú)明顯振動(dòng)碰撞。⒓配備USB接口的電子實(shí)驗(yàn)演示裝置,通過(guò)編制程序,對(duì)模擬控制對(duì)象進(jìn)行實(shí)時(shí)控制。⒈2實(shí)驗(yàn)系統(tǒng)資源分配8088有1兆存儲(chǔ)空間,序。具體分配如下:系統(tǒng)提供用戶使用的空間為00000H-0FFFFH,用于存放、調(diào)試實(shí)驗(yàn)程⑴存貯器地址分配⑵I/O地址分配大全標(biāo)準(zhǔn)文案監(jiān)控占用00004H-0000FH作為單步(T)、斷點(diǎn)(INT3)、無(wú)條件暫停(NM1)中斷矢量區(qū),用戶也可以更改這些矢量,指向用戶的處理,但失去了相應(yīng)的單步、斷點(diǎn)、暫停等監(jiān)控功能。F0000H-FFFFFH監(jiān)控程序區(qū)系統(tǒng)占用。大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)四8255A并行口實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康恼莆胀ㄟ^(guò)8255A并行口傳輸數(shù)據(jù)的方法,以控制發(fā)光二極管的亮與滅。二、實(shí)驗(yàn)內(nèi)容用8255做輸出口,控制十二個(gè)發(fā)光管亮滅,模擬交通燈管理。三、實(shí)驗(yàn)接線圖四、編程指南⑴通過(guò)8255A控制發(fā)光二極管,PB4-PB7對(duì)應(yīng)黃燈,PC0-PC3對(duì)應(yīng)紅燈,PC4-PC7對(duì)應(yīng)綠燈,以模擬交通路燈的管理。⑵要完成本實(shí)驗(yàn),必須先了解交通路燈的亮滅規(guī)律,設(shè)有一個(gè)十字路口l、3為南北方向,2、4路口的紅2、4為東西方向,初始狀態(tài)為四個(gè)路口的紅燈全亮,之后,燈亮,1、3路口方向通車。延時(shí)一段時(shí)間后,1、3路口的綠燈亮,l、3路口的綠燈熄滅,而2、4路口的綠燈亮,l、3路口的黃燈開(kāi)始閃2、4路口方向通車,延時(shí)l、3路口方爍,閃爍若干次以后,一段時(shí)間后,l、3路口紅燈亮,而同時(shí)2、4路口的綠燈熄滅,而黃燈開(kāi)始閃爍,閃爍若干次以后,再切換到向,之后,重復(fù)上述過(guò)程。⑶程序中設(shè)定好8255A的工作模式及三個(gè)端口均工作在方式0,并處于輸出狀態(tài)。0。⑷各發(fā)光二極管共陽(yáng)極,使其點(diǎn)亮應(yīng)使8255A相應(yīng)端口的位清五、實(shí)驗(yàn)程序框圖大全標(biāo)準(zhǔn)文案六、實(shí)驗(yàn)步驟⒈在系統(tǒng)顯示監(jiān)控提示符“⒉按圖6-4連好實(shí)驗(yàn)線路P.”時(shí),按SCAL鍵。8255APC0-L3PC1-L6PC2-L9PC3-L12PC4-L2PC5-L5PC6-L8PC7-L11PB4-L1PB5-L4PB6-L7PB7-L10⒊在“P.”態(tài)時(shí),輸入11E0后,按EXEC鍵;系統(tǒng)顯示執(zhí)行符“┌”,同時(shí)Ll-Ll5發(fā)光二極管模擬交通燈顯示。七、實(shí)驗(yàn)程序CODESEGMENT;H8255-2.ASMASSUMECS:CODEORG11e0HSTART:MOVAL,82HMOVDX,IOCONPTIOCONPTEQU0FF2BHIOAPTEQU0FF28HIOBPTEQU0FF29HIOCPTEQU0FF2AHOUTDX,ALMOVDX,IOBPTINAL,DX大全標(biāo)準(zhǔn)文案MOVBYTEPTRDS:[0601H],ALMOVDX,IOCONPTMOVAL,80HCALLDELAY1CALLDELAY1ORAL,0F0HOUTDX,ALOUTDX,ALMOVDX,IOBPTMOVAL,DS:[0601H]ORAL,0F0HMOVCX,8HIOLED2:MOVDX,IOBPTMOVAL,DS:[0601H]OUTDX,ALANDAL,01011111BOUTDX,ALMOVDX,IOCPTMOVAL,0F0HCALLDELAY2ORAL,10100000BOUTDX,ALOUTDX,ALCALLDELAY1IOLED0:MOVAL,10100101BMOVDX,IOCPTOUTDX,ALCALLDELAY2LOOPIOLED2MOVDX,IOCPTMOVAL,0F0HOUTDX,ALCALLDELAY1CALLDELAY1ORAL,0F0HCALLDELAY2JMPIOLED0OUTDX,ALMOVCX,8HDELAY1:PUSHAXIOLED1:MOVDX,IOBPTMOVAL,DS:[0601H]ANDAL,10101111BOUTDX,ALPUSHCXMOVCX,0030HDELY2:CALLDELAY2LOOPDELY2POPCXCALLDELAY2ORAL,01010000BOUTDX,ALPOPAXRETCALLDELAY2DELAY2:PUSHCXMOVCX,8000HDELA1:LOOPDELA1POPCXLOOPIOLED1MOVDX,IOCPTMOVAL,0F0HOUTDX,ALRETCALLDELAY2CODEENDSENDSTARTMOVAL,01011010BOUTDX,AL大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)五中斷特性及8259應(yīng)用編程實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康蘑闭莆?259中斷控制器的接口方法。⒉掌握8259中斷控制器的應(yīng)用編程。二、實(shí)驗(yàn)內(nèi)容利用8259實(shí)現(xiàn)對(duì)外部中斷的響應(yīng)和處理,要求程序?qū)γ看沃袛噙M(jìn)行計(jì)數(shù),并將計(jì)數(shù)結(jié)果送數(shù)碼顯示。三、實(shí)驗(yàn)接線圖四、編程指南⑴8259芯片介紹中斷控制器8259A是專為控制優(yōu)先級(jí)中斷而設(shè)計(jì)的芯片。它將中斷源優(yōu)先級(jí)排隊(duì)、辨別中斷源以及提供中斷矢量的電路集于一片中。因此無(wú)需附加任何電路,只需對(duì)8259A進(jìn)行編程,就可以管理8級(jí)中斷,并選擇優(yōu)先模式和中斷請(qǐng)求方式。即中斷結(jié)構(gòu)可以由用戶編程來(lái)設(shè)定。同時(shí),在不需要增加其它電路的情況下,通過(guò)多片8259A的級(jí)聯(lián),構(gòu)能成多達(dá)64級(jí)的矢量中斷系統(tǒng)。⑵本實(shí)驗(yàn)中使用3號(hào)中斷源IR3,“5次中斷,顯示“Err”?!辈蹇缀虸R3相連,中斷方式為邊沿觸發(fā)方式,每撥二次AN開(kāi)關(guān)產(chǎn)生一次中斷,滿8259——good”。如果中斷源電平信號(hào)不符合規(guī)定要求,則自動(dòng)轉(zhuǎn)到7號(hào)中斷,顯示“五、實(shí)驗(yàn)程序框圖大全標(biāo)準(zhǔn)文案IR3中斷服務(wù)程序:IR7中斷服務(wù)程序:六、實(shí)驗(yàn)步驟1、按圖5-6連好實(shí)驗(yàn)線路圖。⑴8259的INT連8088的INTR(Xl5);⑵8259的INTA連8088的INTA(Xl2);⑶“”插孔和8259的3號(hào)中斷IR3插孔相連,“”端初始為低電平;⑷連JX4→JX17。8259的CS端接EX1;⑸2、運(yùn)行實(shí)驗(yàn)程序,在系統(tǒng)處于命令提示符“鍵,系統(tǒng)顯示8259-1。P.”狀態(tài)下,按SCAL鍵,輸入12D0,按EXEC3、撥動(dòng)AN開(kāi)關(guān)按鈕,按滿l0次顯示good。七、實(shí)驗(yàn)程序CODESEGMENT;H8259.ASMASSUMECS:CODEINTQ7EQUINTREEUP7PAEQU0FF21H;字位口PBEQU0FF22H;字形口PCEQU0FF23H;鍵入口ORG12D0HINTPORT1EQU0060HINTPORT2EQU0061HINTQ3EQUINTREEUP3大全標(biāo)準(zhǔn)文案START:JMPSTART0BUFDB?,?,?,?,?,?int.tdb?data1:dbMOVCX,05HINTRE0:MOV[BX],ALINCBXLOOPINTRE0MOVAL,20HMOVDX,INTPORT1OUTDX,ALADDINT.T,01HCMPINT.T,06HJNAINTRE2CALLBUF2;DISP:goodINTRE1:CALLDISPJMPINTRE1CONVERS:ANDAL,0FHMOVBX,offsetbufMOV[BX+5],AL0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1hdb86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FHSTART0:CLDCALLBUF1CALLWRINTVER;WRITEINTRRUPTMOVAL,13HMOVDX,INTPORT1OUTDX,ALMOVAL,08HRETMOVDX,INTPORT2OUTDX,ALINTRE2:MOVAL,20HMOVDX,INTPORT1OUTDX,ALSTIMOVAL,09HOUTDX,ALMOVAL,0F7HIRETOUTDX,ALINTREEUP7:CLIMOVint.t,01H;TIME=1STIMOVAL,20HMOVDX,INTPORT1OUTDX,ALcallbuf3;disp:errINTRE3:CALLDISPJMPINTRE3DISP:MOVAL,0FFH;00HMOVDX,PAWATING:CALLDISP;DISP8259-1JMPWATINGWRINTVER:MOVAX,0HMOVES,AXMOVDI,002CHLEAAX,INTQ3STOSWOUTDX,ALMOVAX,0000hSTOSWMOVCL,0DFH;MOVBX,OFFSETBUFDIS1:MOVAL,[BX]MOVAH,00HPUSHBXMOVDI,003CHLEAAX,INTQ7STOSWMOVAX,0000hSTOSWMOVBX,OFFSETDATA1ADDBX,AXMOVAL,[BX]POPBXRETINTREEUP3:CLIMOVAL,INT.TMOVDX,PBCALLCONVERSOUTDX,ALMOVBX,OFFSETBUFMOVAL,10H大全MOVAL,CLMOVDX,PA標(biāo)準(zhǔn)文案OUTDX,ALPUSHCXMOVBUF+5,01HRETDIS2:MOVCX,00A0HLOOP$POPCXBUF2:MOVBUF,09HMOVBUF+1,00HMOVBUF+2,00HMOVBUF+3,0dHMOVBUF+4,10HMOVBUF+5,10HRETCMPCL,0FEH;01HJZLX1INCBXRORCL,1;SHRCL,1JMPDIS1BUF3:MOVBUF,0eHLX1:MOVAL,0FFHMOVBUF+1,18HMOVBUF+2,18HMOVBUF+3,10HMOVBUF+4,10HMOVBUF+5,10HRETMOVDX,PBOUTDX,ALRETBUF1:MOVBUF,08HMOVBUF+1,02HMOVBUF+2,05HMOVBUF+3,09HMOVBUF+4,17HCODEENDSENDSTART大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)六定時(shí)器/計(jì)數(shù)器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康蘑睂W(xué)會(huì)8253芯片和微機(jī)接口的原理和方法。⒉.掌握8253定時(shí)器/計(jì)數(shù)器的工作方式和編程原理。二、實(shí)驗(yàn)內(nèi)容用8253的0通道工作在方式三、實(shí)驗(yàn)接線圖3,產(chǎn)生方波。四、編程指南⒈8253芯片介紹8253是一種可編程定時(shí)/計(jì)數(shù)器,有三個(gè)十六位計(jì)數(shù)器,其計(jì)數(shù)頻率范圍為0-2MHz,用+5V單電源供電。8253的功能用途:⑴延時(shí)中斷⑸實(shí)時(shí)時(shí)鐘⑵可編程頻率發(fā)生器⑹數(shù)字單穩(wěn)⑶事件計(jì)數(shù)器⑷二進(jìn)制倍頻器⑺復(fù)雜的電機(jī)控制器8253的六種工作方式:⑴方式0:計(jì)數(shù)結(jié)束中斷⑷方式3:方波頻率發(fā)生器⑵方式l:可編程頻率發(fā)生⑶方式2:頻率發(fā)生器⑸方式4:軟件觸發(fā)的選通信號(hào)⑹方式5:硬件觸發(fā)的選通信號(hào)五、實(shí)驗(yàn)程序框圖六、實(shí)驗(yàn)步驟⒈按圖6-5連好實(shí)驗(yàn)線路⑴8253的GATE0接+5V。⑵8253的CLK0插孔接分頻器(3)T→8.0MHZ。74LS393(左下方)的T2插孔,分頻器的頻率源為8.0MHZ,大全標(biāo)準(zhǔn)文案⒉運(yùn)行實(shí)驗(yàn)程序在系統(tǒng)處于提示符“⒊用示波器測(cè)量P.”狀態(tài)下,按SCAL鍵,輸入1290,按EXEC鍵。8253的OUT0輸出插孔有方波產(chǎn)生。七、實(shí)驗(yàn)程序CODESEGMENT;H8253.ASMASSUMECS:CODEORG1290HSTART:JMPTCONTTCONTROEQU0043HTCON0EQU0040HTCONT:MOVDX,TCONTROMOVAL,36HOUTDX,ALMOVDX,TCON0MOVAL,00HOUTDX,ALMOVAL,04HOUTDX,ALMOVDX,TCONTROMOVAL,36HOUTDX,ALMOVDX,TCON0MOVAL,00HOUTDX,ALMOVAL,02HOUTDX,ALJMP$CODEENDSENDSTART大全標(biāo)準(zhǔn)文案實(shí)驗(yàn)七電子琴實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康膌、進(jìn)一步掌握定時(shí)器編程和應(yīng)用。2、了解微機(jī)利用定時(shí)器產(chǎn)生音樂(lè)的基本方法。二、實(shí)驗(yàn)內(nèi)容利用實(shí)驗(yàn)儀鍵盤,使數(shù)字鍵調(diào),PB0作為定時(shí)器門控信號(hào),三、實(shí)驗(yàn)接線圖1、2、3、4、5、6、7作為電子琴鍵,按下數(shù)字鍵發(fā)出相應(yīng)的音OUT1發(fā)出音頻信號(hào),驅(qū)動(dòng)喇叭。圖6-11四、編程指南1、根據(jù)音階頻率表,利用定時(shí)器可以產(chǎn)生相應(yīng)頻率的脈沖信號(hào),不同頻率的脈沖信號(hào)經(jīng)驅(qū)動(dòng)電路放大后,就會(huì)發(fā)生不同的音調(diào)。2、對(duì)于每個(gè)按鍵的音調(diào)發(fā)音時(shí)間由軟件延時(shí)控制,如鍵一直按下,就會(huì)連續(xù)發(fā)音各音階標(biāo)稱頻率值:五、實(shí)驗(yàn)程序框圖大全標(biāo)準(zhǔn)文案六、實(shí)驗(yàn)步驟⑴8253的CLK1接分頻輸出端T2。⑵GATE1接PB0。⑶OUT1接VIN。⑷8M→T。⑸JP→+5V(ON)。⑹在P.態(tài),按SCAL鍵,輸入18F0,按EXEC鍵,顯P.,按1、2……7鍵,依次發(fā)出1、2……7音調(diào)聲。CODESEGMENT;DZQ.ASMASSUMECS:CODE,ds:codeCONTROLequ43hCOUNT0equ40hCOUNT1equ41hCOUNT2equ42hIOCONPTEQU0FF2BHIOBPTEQU0FF29HIOAPTEQU0FF28HPAEQU0FF21H;字位口PBEQU0FF22H;字形口PCEQU0FF23H;鍵入口ORG18F0HSTART:JMPSTART0BUFDB?,?,?,?,?,?KZDB?大全標(biāo)準(zhǔn)文案ltimedb?lkeydb?ZPDW?data1:db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1hdb86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F1Hdata3:dw2273,2024,1805,1704dw1517,1353,1205,1136START0:movax,csmovds,axCALLBUF1MOVAL,88HMOVDX,IOCONPTOUTDX,ALmovdx,IOBPTmoval,00outdx,almovzp,offsetbufredikey:calldispkeycmpKZ,09hJNCredikeycmpkz,01hjcredikeymovbx,zpmoval,kzmov[bx],alcmpbx,offsetbuf+5jzzp1incbxmovzp,bxjmpouttonezp1:movzp,offsetbufouttone:movdx,IOBPTmoval,0ffhoutdx,almoval,kzmovah,00hdecaxshlax,1movbx,offsetdata3addbx,axmovax,[bx]callt8253movcx,20hcon1:pushcxcalldisp大全標(biāo)準(zhǔn)文案popcxloopcon1movdx,IOBPTmoval,00outdx,aljmpredikeyt8253:pushaxmoval,76h;計(jì)數(shù)器1,16位二進(jìn)制,方式3。movdx,CONTROLoutdx,alpopaxmovdx,COUNT1outdx,almoval,ahoutdx,alret;-------------------------dispkey:calldispcallkeymovah,al;newkeymovbl,ltime;ltimemovbh,lkey;lkeymoval,01hmovdx,0ff21houtdx,alcmpah,bhmovbh,ah;bh=newkeymovah,bl;al=timejzdisk4movbl,88hmovah,88hdisk4:decahcmpah,82hjzdisk6cmpah,0ehjzdisk6cmp
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程教師團(tuán)隊(duì)建設(shè)方案
- 梯控啟用實(shí)施方案
- 市場(chǎng)營(yíng)銷數(shù)字化2026降本增效項(xiàng)目分析方案
- 創(chuàng)建健康小屋工作方案
- 吉安市公益訴訟工作方案
- 兒歌比賽實(shí)施方案
- 智慧管理體系建設(shè)方案
- 設(shè)計(jì)項(xiàng)目工作實(shí)施方案
- 2026許昌煙草機(jī)械有限責(zé)任公司招聘38人考試參考試題及答案解析
- 2026廣西梧州市考試招聘中小學(xué)(幼兒園)教師260人參考考試題庫(kù)及答案解析
- 貴州省黔東南苗族侗族自治州2024-2025學(xué)年高一上學(xué)期1月期末英語(yǔ)試題(含答案無(wú)聽(tīng)力原文及音頻)
- GB/T 18376.2-2024硬質(zhì)合金牌號(hào)第2部分:鑿巖及工程用硬質(zhì)合金牌號(hào)
- 醫(yī)院總值班培訓(xùn)-文檔資料
- 施工影像資料交底
- 中國(guó)急性胰腺炎診治指南解讀2019
- 2023年杭州市臨平區(qū)事業(yè)單位筆試試題
- 幼兒學(xué)前班數(shù)學(xué)寒假作業(yè)25
- 2024年鋼絲繩索具相關(guān)項(xiàng)目創(chuàng)業(yè)計(jì)劃書
- 幼小銜接數(shù)學(xué)計(jì)算每日一練39天(幼兒園大班)
- 基于蛋白代謝多組學(xué)探討參麻益智方治療高血壓合并血管性癡呆大鼠作用機(jī)制演示稿件
- 上海布邦流體過(guò)濾產(chǎn)品知識(shí)課件
評(píng)論
0/150
提交評(píng)論