版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、聲光報(bào)警器接口實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康氖煜た删幊滩⑿薪涌谛酒?255的使用和學(xué)習(xí)開關(guān)量接口電路及其控制程序的設(shè)計(jì)方法。二、 實(shí)驗(yàn)內(nèi)容基本實(shí)驗(yàn) 按下SW開關(guān),開始報(bào)警,即喇叭發(fā)聲,同時(shí)LED燈閃光。按任意鍵,結(jié)束報(bào)警,喇叭停止發(fā)聲,LED熄滅。三、 實(shí)驗(yàn)要求利用MFID實(shí)驗(yàn)平臺(tái)和聲-光報(bào)警器模塊板進(jìn)行硬件電路連接,利用MF集成開發(fā)環(huán)境進(jìn)行聲光報(bào)警器軟件控制程序設(shè)計(jì)、調(diào)試,直到報(bào)警器正常工作。四、 實(shí)驗(yàn)原理a) 聲-光報(bào)警器模塊板電路原理如圖1所示。模塊板上包括4種簡(jiǎn)單的I/O外設(shè):揚(yáng)聲器、8個(gè)LED彩燈、8位DIP開關(guān)及按鈕開關(guān)SW。它們都是并行接口的對(duì)象,雖然功能單一,結(jié)構(gòu)簡(jiǎn)單,但都必須通過接口電路才
2、能進(jìn)入微機(jī)系統(tǒng),接受CPU的控制,發(fā)揮相應(yīng)的作用。b) 聲-光報(bào)警器接口的設(shè)計(jì)原理與方法,參考“微機(jī)接口技術(shù)及應(yīng)用”教材第7.2節(jié)(P142)圖1 聲-光報(bào)警器模塊板電路原理框圖五、實(shí)驗(yàn)資源配置1電源:機(jī)內(nèi)供電,實(shí)驗(yàn)時(shí)將電源開關(guān)打到“內(nèi)”的位置上。2I/O端口地址:8255的4個(gè)端口地址為300H303H。其中A口=300H,B口=301H,C口=302H,命令口=303H。3中斷資源:IRQ10。4軟件資源:MFID軟件提供的用戶應(yīng)用程序集成開發(fā)環(huán)境與工具,包含了豐富的匯編語(yǔ)言和C語(yǔ)言程序開發(fā)軟件包。六、實(shí)驗(yàn)的硬件連接與軟件編程c) 實(shí)驗(yàn)資源配置好之后,使用26芯扁平電纜線(短型),將聲-光
3、報(bào)警器模塊板與平臺(tái)上的并行接口插座J5連接起來(lái)如圖2所示,即可進(jìn)行聲-光報(bào)警接口實(shí)驗(yàn)。圖2 聲-光報(bào)警器模塊與CPU的連接d) 實(shí)驗(yàn)步驟:步驟一:硬件連線:跳線設(shè)置:?jiǎn)尉€將模塊電源L區(qū)JP7和JP8跳接;排線將模塊電源L區(qū)JP8跳接。單線連法如右圖:排線接法如右圖:步驟二:將平臺(tái)的電源開關(guān)拔到“內(nèi)”的位置上。在配套集成環(huán)境下進(jìn)行硬件檢測(cè),達(dá)到初始化芯片的目的.步驟三:(學(xué)生實(shí)驗(yàn)步驟)打開集成環(huán)境在“文件”菜單下學(xué)生可以選擇新建自己的C+/ASM文件或者使用集成環(huán)境自帶的C+/ASM參考程序進(jìn)行調(diào)試、運(yùn)行。步驟四:觀看實(shí)驗(yàn)現(xiàn)象得出結(jié)論。8255初始化熄滅LED關(guān)閉SPKSW按下?LED發(fā)光Cal
4、l LEDflashSPK發(fā)聲(高)Call outSPKLED全滅SPK發(fā)聲(低)Call outSPK熄滅LED任意鍵按下?關(guān)閉SPKYNYN開始結(jié)束七、聲-光報(bào)警器接口控制參考程序 流程圖 如圖3所示。圖3流程聲-光報(bào)警程序 sseg segment para stack 'stack' dw 200 dup (?)sseg endsdseg segment para public 'data'message db 'press SW3 to start and then press SW3 to stop,and so on!',0ah,
5、0dh ;系統(tǒng)提示信息db 'if you want to quit,please hit ''q'' or ''Q''!',0ah,0dh,'$' flag db 0 ;初始化狀態(tài)標(biāo)志變量為0t dw 0 ;初始化延時(shí)變量為0 dseg endscseg segment para public 'code' assume ss:sseg,cs:cseg,ds:dsegm proc farstart: mov ax,ds push ax mov ax,00h push ax ;保留程
6、序數(shù)據(jù)段地址 mov ah,09h ;顯示系統(tǒng)提示信息 mov dx,seg message mov ds,dx mov dx,offset message int 21h ;初始化8255 mov dx,303h ;取8255的控制端口的地址 mov al,83h ;初始化8255的A口和C口高四位為輸出模式 out dx,al ;B口和C口低四位為輸入模式 ;初始化燈LED全滅 mov dx,300h ;取8255的端口A的地址 mov al,00h ;使8255的PA0-PA7全為0 out dx,al ;使所有的燈LED全滅 wait1: ;檢測(cè)"q"或者"
7、;Q"鍵 mov ah,0bh int 21h ;調(diào)用DOS 21H 功能0BH 進(jìn)行鍵盤判斷 inc al jnz readpc ;檢測(cè)是否有鍵按下 mov ah,08h int 21h ;調(diào)用DOS 21H 功能08H 進(jìn)行鍵盤輸入判斷 cmp al,'q' jz quit ;檢測(cè)到"q",退出 cmp al,'Q' jz quit ;檢測(cè)到"Q",退出 readpc: ;判斷開關(guān)SW3的狀態(tài) mov dx,302h ;讀端口C的值 in al,dx ;當(dāng)按下開關(guān)SW3時(shí),PC2口為低電 test al,04
8、h ;檢測(cè)PC2口狀態(tài) jnz caselp: in al,dx test al,04h jz lp ;循環(huán)檢測(cè)直至放開 xor flag,01h ;將狀態(tài)值取反case: cmp flag,01h ;進(jìn)行狀態(tài)值比較 jne stop begin: ;燈LED全亮 mov dx,300h ;取8255的端口A的地址 mov al,0ffh ;使8255的PA0-PA7全為1 out dx,al ;使所有的燈LED全亮 mov bx,800 mov t,800 d1: call outport ;喇叭發(fā)出高頻的聲音 dec bx jnz d1 ;所有的燈LED全亮的時(shí)間 ;燈LED全滅 mov
9、dx,300h ;取8255的端口A的地址 mov al,00h ;使8255的PA0-PA7全為0 out dx,al ;使所有的燈LED全滅 mov bx,200 mov t,4000d2: call outport ;喇叭發(fā)出低頻的聲音 dec bx jnz d2 ;所有的燈LED全滅的時(shí)間 call delay2 jmp wait1 ;燈LED全滅stop: mov dx,300h ;取8255的端口A的地址 mov al,00h ;使8255的PA0-PA7全為0 out dx,al ;使所有的燈LED全滅 jmp wait1 quit: ;燈LED全滅 mov dx,300h ;取
10、8255的端口A的地址 mov al,00h ;使8255的PA0-PA7全為0 out dx,al ;使所有的燈LED全滅 ;返回DOS mov ah,4ch ;DOS功能調(diào)用 int 21h ;返回DOSm endpdelay1 proc push bx mov bx,tdl1: dec bx jnz dl1 pop bx retdelay1 endp delay2 proc push cx push bx mov cx,1ffhdl3: mov bx,0ffffhdl4: dec bx jnz dl4 dec cx jnz dl3 pop bx pop cx retdelay2 endp
11、 ;喇叭發(fā)出聲音outport procmov dx,303h ;取8255的控制端口的地址mov al,0dhout dx,al ;置PC6=1call delay1mov dx,303h ;取8255的控制端口的地址mov al,0chout dx,al ;置PC6=0call delay1 retoutport endpcseg ends end start八、心得體會(huì) 通過此次實(shí)驗(yàn)我感覺到:在做微機(jī)接口實(shí)驗(yàn)時(shí),必須先讀懂試驗(yàn)箱的使用方法,和試驗(yàn)箱芯片的使用說(shuō)明,不能完全用課本上的方法編寫程序。音樂發(fā)生器接口實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康耐ㄟ^音樂發(fā)生器實(shí)驗(yàn),學(xué)習(xí)如何利用8253定時(shí)/計(jì)數(shù)器進(jìn)行聲音控制
12、電路的設(shè)計(jì)原理與方法。二、實(shí)驗(yàn)內(nèi)容基本實(shí)驗(yàn) 通過編程使音樂發(fā)生器奏出音樂.三、實(shí)驗(yàn)要求利用MFID實(shí)驗(yàn)平臺(tái)和音樂發(fā)生器模塊進(jìn)行硬件連接,利用MF2KI集成開發(fā)環(huán)境進(jìn)行音樂發(fā)生器控制程序設(shè)計(jì),調(diào)試,直至聽到正常的樂曲。四、實(shí)驗(yàn)原理1音樂發(fā)生器驅(qū)動(dòng)模塊電路原理如圖1所示。模塊包含喇叭SPK,LM386A,74LS08,以及74LS245和LED等。其中LED是配合演奏音樂時(shí)產(chǎn)生發(fā)光效果而設(shè)置的。圖1 音樂發(fā)生器模塊板電路原理框圖2利用8253控制發(fā)聲原理與方法的詳細(xì)闡述,參考計(jì)算機(jī)接口技術(shù)相關(guān)參考書.五、實(shí)驗(yàn)步驟a) 電源:機(jī)內(nèi)供電,將JP-1跳接塊置于1-2位置(見圖1.10)。請(qǐng)注意:此括號(hào)內(nèi)
13、的圖號(hào),系指”MFID實(shí)驗(yàn)平臺(tái)技術(shù)說(shuō)明書”第一章中的圖號(hào),以下相同。b) I/O端口地址:8255的4個(gè)端口地址為300H303H。其中A口=300H,B口=301H,C口=302H,命令口=303H。DIP4開關(guān)的4位開關(guān)全部向上置為ON(見圖1.7)注c) 中斷資源:采用無(wú)條件傳送。d) 電纜線:采用短型20芯扁平電纜e) 步進(jìn)電機(jī)模塊板上的兩上開關(guān)SW1和SW2的功能:可以配置為用來(lái)控制步進(jìn)電機(jī)的運(yùn)行方向,速度和啟動(dòng)/停止,其作用根據(jù)實(shí)驗(yàn)的內(nèi)容與要求由控制程序來(lái)定義。f) 軟件資源:MF軟件提供的用戶應(yīng)用程序集成開發(fā)環(huán)境與工具,有DOS和Windows兩個(gè)版本,兩個(gè)版本都包含了豐富的匯編
14、語(yǔ)言和C語(yǔ)言程序開發(fā)軟件包。六、實(shí)驗(yàn)步驟:步驟一:硬件連線跳線設(shè)置:將電源模塊的JP7跳接.單線連接如右圖:排線連接如右圖:步驟二:將平臺(tái)的電源開關(guān)拔到“內(nèi)”的位置上。在配套集成環(huán)境下進(jìn)行硬件檢測(cè),達(dá)到初始化芯片的目的步驟三:(示實(shí)驗(yàn)步驟)打開集成環(huán)境在“演示實(shí)驗(yàn)”菜單下點(diǎn)開“基本接口實(shí)驗(yàn)”。在“基本接口實(shí)驗(yàn)”中的“定時(shí)記數(shù)器實(shí)驗(yàn)”中選擇“音樂發(fā)生器”實(shí)驗(yàn)進(jìn)行演示。步驟四:(學(xué)生實(shí)驗(yàn)步驟)打開集成環(huán)境在“文件”菜單下學(xué)生可以選擇新建自己的C+/ASM文件或者集成環(huán)境自帶的C+/ASM參考程序進(jìn)行調(diào)試、運(yùn)行。步驟五:觀看實(shí)驗(yàn)現(xiàn)象得出結(jié)論。七、實(shí)驗(yàn)過程中遇到的問題及解決方案 在實(shí)驗(yàn)前,是通過參照老
15、師程序來(lái)實(shí)現(xiàn)音樂發(fā)生器接口實(shí)驗(yàn)程序,由于其端口地址并不是試驗(yàn)箱上的8253端口地址,從而導(dǎo)致主板在發(fā)聲。后來(lái)發(fā)現(xiàn)錯(cuò)誤出在端口地址上后,將端口地址改好,然后在運(yùn)行,但只能聽見節(jié)拍,開始任認(rèn)為是軟件的問題,通過查詢無(wú)結(jié)果后,才往硬件上找原因,后來(lái)發(fā)現(xiàn)試驗(yàn)箱有問題,通過換試驗(yàn)箱后,最后在規(guī)定的時(shí)間內(nèi)完成了預(yù)期的效果。八、算法及流程圖 1.流程圖 ASM流程圖,如圖3所示,包括一個(gè)主程序和一個(gè)延時(shí)子程序。圖3 音樂ASM程序流程圖2、源程序sstack segment stack dw 200 dup(?)sstack endsdata segmentbg db 'Two tigers .
16、39; db 0ah,0dh db 'press any key to stop! ',0ah,0dh,'$'freq dw 2 dup(262,294,330,262) ;"兩只老虎"樂曲中,音符的頻率(音階) dw 2 dup(330,349,392) ;其中,0頻率表示結(jié)尾 dw 2 dup(392,440,392,349,330,262) dw 2 dup(294,196,262),0time dw 10 dup(8),16,8,8,16 ; "兩只老虎"樂曲中,音符的延時(shí)(節(jié)拍) dw 2 dup(4,4,4,4
17、,8,8) ;其中4,8,16表示延時(shí)的次數(shù) dw 2 dup(8,8,16)old_seg dw ?old_off dw ?data endscode segment assume cs:code, ds:data, ss:sstackstar proc far ;程序開始 mov ax,data mov ds,ax mov ax,sstack mov ss,ax push di ;寄存器壓棧 push si push bp push bx mov al,90h ;8255初始化 mov dx,303h out dx,al mov al,0ch ;關(guān)閉8253的T2計(jì)數(shù)器(8255的PC6=
18、0) mov dx,303h out dx,al mov al,00h ;關(guān)閉喇叭(8255的PC0=0) mov dx,303h out dx,al mov al,0b6h ;8253初始化 mov dx,307h out dx,al mov dx,offset bg ;顯示提示信息 mov ah,9 int 21h mov si,offset freq ;設(shè)置頻率指針si mov bp,offset time ;設(shè)置延時(shí)指針bppp: mov ah, 0bh ;檢測(cè)是否有任意鍵按下? int 21h cmp al,00 jne end_sing ;若有,則結(jié)束演湊 mov di,si ;取
19、1個(gè)音符的頻率di cmp di,0 ;檢測(cè)是否是樂曲結(jié)尾 je end_sing ;若是,則結(jié)束演湊 mov dx,12h ;計(jì)算音符的頻率所對(duì)應(yīng)的8253計(jì)數(shù)初值 mov ax,34dch ;1.19318MHz div di mov dx,306h ;向8253裝入計(jì)數(shù)初值 out dx,al ;先裝低字節(jié) mov al,ah out dx,al ;再裝高字節(jié) mov dx,303h ;打開喇叭(8255的PC0=1) mov al,01h out dx,al mov al,0dh ;打開8253的T2(PC6=1),開始發(fā)聲 out dx,al mov bx,ds:bp ;取1個(gè)音符的
20、延時(shí)次數(shù)bx call time_delay ;調(diào)用延時(shí)子程 mov dx,303h ;關(guān)閉8253的T2(PC6=0) mov al,0ch out dx,al mov al,00h ;關(guān)閉喇叭(PC0=0) out dx,al add si,2 ;取下1 個(gè)音符的頻率 add bp,2 ;取下1 個(gè)音符的延時(shí)次數(shù) jmp pp ;繼續(xù) end_sing: mov dx, 303h ;關(guān)閉8253的T2 mov al, 0ch out dx, al mov al, 00h ;關(guān)閉喇叭 out dx, al pop bx ;寄存器出棧 pop bp pop si pop di mov ax,4
21、c00h ;返回DOS int 21hstar endpnew_intr proc ;新中斷服務(wù)程序 dec bx ;該服務(wù)程序只將延時(shí)次數(shù)-1 iretnew_intr endptime_delay proc near ;延時(shí)子程序 pushf ;壓棧 push ds push es push bx mov ah,35h ;取原中斷(INT1CH)的向量,并保存 mov al,1ch int 21h mov old_off, bx mov bx, es mov old_seg, bx pop bx pop espush ds mov ah, 25h ;設(shè)置新中斷服務(wù)程序的向量 mov al,
22、 1ch mov dx, seg new_intr mov ds,dx lea dx, new_intr int 21h pop dsTD: cmp bx,0h ;延時(shí)次數(shù)已到? jnz TD ;未到,則繼續(xù) mov ah,25h ;已到,則恢復(fù)原中斷向量 mov al,1ch mov dx,old_seg push dx mov dx,old_off pop ds int 21h pop ds popf ;time delay end rettime_delay endpcode ends end star ;程序結(jié)束九、實(shí)驗(yàn)心得體會(huì) 由于上次實(shí)驗(yàn)中對(duì)中斷理解的不透徹,導(dǎo)致本次實(shí)驗(yàn)開始時(shí)出現(xiàn)
23、很多問題。所以對(duì)于理論的學(xué)習(xí),我認(rèn)為應(yīng)該學(xué)扎實(shí)。在本次試驗(yàn)中遇到有這樣幾個(gè)問題:1.芯片的地址 2.錯(cuò)誤的判斷和檢查。對(duì)于芯片的端口地址問題我們需要參考實(shí)驗(yàn)指導(dǎo)書,對(duì)于錯(cuò)誤判斷和檢查問題,應(yīng)該多方面、對(duì)角度的考慮問題,這樣才能迅速的查出問題,解決問題。8259應(yīng)用實(shí)驗(yàn)中斷方式控制彩燈閃亮一、實(shí)驗(yàn)?zāi)康耐ㄟ^8259中斷控制器應(yīng)用編程實(shí)驗(yàn),學(xué)習(xí)中斷控制器的工作原理及中斷控制程序的設(shè)計(jì)方法。二、實(shí)驗(yàn)內(nèi)容在聲光報(bào)警模塊上按動(dòng)SW3開關(guān),通過8255向主機(jī)內(nèi)的中斷控制器申請(qǐng)10號(hào)中斷,在中斷服務(wù)程序中,點(diǎn)亮聲光報(bào)警模塊上的LED燈。三、實(shí)驗(yàn)原理利用平臺(tái)上的開關(guān)SW3,通過8255的PC4申請(qǐng)IRQ10號(hào)中
24、斷,實(shí)驗(yàn)的原理圖3.2.12所示 四、實(shí)驗(yàn)資源配置1IBM PC兼容機(jī)2windows2003MFID多功能微機(jī)實(shí)驗(yàn)平臺(tái)4MF2kp微機(jī)原理實(shí)驗(yàn)集成開發(fā)環(huán)境五、實(shí)驗(yàn)步驟步驟一:在MFID實(shí)驗(yàn)平臺(tái)上的C區(qū)的IRQ10與PC4相連。步驟二:在MF2KP環(huán)境下輸入?yún)R編程序,編譯、連接、運(yùn)行。步驟三:每按1次SW3鍵,PC4申請(qǐng)1次中斷,LED點(diǎn)亮一次。六、軟件編程1.程序流程圖:如圖3.2.13所示 3.2.13實(shí)驗(yàn)流程圖2、實(shí)驗(yàn)的源程序STACK1 SEGMENT STACK DW 200 DUP(?)STACK1 ENDSDATA SEGMENTMESG1 DB 'Press SW3 o
25、ne time to invoke interrupt one time,and to light one of LEDs',0ah,0dh DB 'Exit with q/Q',0ah,0dh,'$'LEDDATA DB 01H,02H,04H,08H,10H,20H,40H,80HNUM DW(0) INT0A_OFF DW(?)INT0A_SEG DW(?) DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV AH,09H MOV DX,OFFSE
26、T MESG1 INT 21h ;顯示提示信息 MOV DX,303H ;初始化8255 MOV AL,83H OUT DX,AL MOV DX,300H ;LED燈熄滅 MOV AL,00H OUT DX,AL MOV AX,3572H ;獲取原中斷向量 INT 21H MOV INT0A_OFF,BX ;保存原中斷向量 MOV BX,ES MOV INT0A_SEG,BX CLI ;關(guān)中斷 MOV AX,2572H MOV DX,SEG LEDLIGHT ;設(shè)置新的中斷向量 PUSH DS MOV DS,DX MOV DX,OFFSET LEDLIGHT INT 21H POP DS ST
27、I ;開中斷 IN AL,0A1H ;打開IRQ10 AND AL,0FBH OUT 0A1H,AL IN AL,21H ;打開IRQ2 AND AL,0FBH OUT 21H,ALL1: MOV AH,0BH ;檢查是否有Q或q鍵按下 INT 21H INC AL JNZ NEXT0 ; 若無(wú)鍵按下,則程序往下執(zhí)行 MOV AH,08H ;如有Q或q鍵按下,則程序退出 INT 21H CMP AL,'q' JZ EXIT CMP AL,'Q' JZ EXITNEXT0: MOV DX,302H ;查PC2是否為0 IN AL,DX TEST AL,04H JN
28、Z L1 PUSH CX MOV CX,0FFHLOOP1:LOOP LOOP1 POP CX IN AL,DX AND AL,04H JZ L1 MOV DX,303H ;按下SW3,則PC41申請(qǐng)中斷 MOV AL,09H OUT DX,AL PUSH CX MOV CX,100WT: LOOP WT POP CX MOV DX,303H ;置PC4=0 MOV AL,08H OUT DX,AL JMP L1 EXIT: MOV AX,2572H ;恢復(fù)中斷向量 MOV DX,INT0A_SEG PUSH DS MOV DS,DX MOV DX,INT0A_OFF INT 21H POP
29、DS IN AL,0A1H ;屏蔽IRQ10 OR AL,04H OUT 0A1H,AL IN AL,21H ;屏蔽IRQ2 OR AL,04H OUT 21H,AL MOV AX,4C00H ;程序退出 INT 21H LEDLIGHT PROC FAR ;中斷服務(wù)程序 PUSH SI PUSH AX PUSH DX CLI ;關(guān)中斷 MOV SI,OFFSET LEDDATA ADD SI,NUM MOV AL,SI MOV DX,300H OUT DX,AL ;點(diǎn)亮LED INC NUM CMP NUM,07H JNE NEXT MOV NUM,00HNEXT : MOV AL,62H
30、;發(fā)中斷結(jié)束命令 MOV DX,0A0H OUT DX,AL ;向從片8259發(fā)EOI命令 OUT 020H,AL ;向主片8259發(fā)EOI命令 STI ;開中斷 POP DX POP AX POP SI IRETLEDLIGHT ENDPCODE ENDS END START七、 調(diào)試中出現(xiàn)的問題及解決方法 第一次調(diào)試成功代碼,出來(lái)的現(xiàn)象只有一個(gè)燈的亮滅,而且運(yùn)行的時(shí)候燈是全亮的,原因有兩個(gè),一個(gè)是硬件方面,實(shí)驗(yàn)箱本身有一定的不足,還有一個(gè)就是程序的不足;再經(jīng)過了多次的調(diào)試之后又出現(xiàn)了彩燈閃爍不停的現(xiàn)象,而且前面燈全亮的問題也沒得到解決;大概又過了幾小時(shí),才找到問題的根源,硬件方面:實(shí)驗(yàn)箱的
31、問題無(wú)法避免;軟件方面,用兩層延時(shí)就可以改變彩燈閃爍的快慢。這樣一來(lái),現(xiàn)象就明顯了。 八、 實(shí)驗(yàn)心得 通過這次實(shí)驗(yàn)我深刻體會(huì)到了自己中斷方式知識(shí)的不足以及匯編語(yǔ)言編程的不熟練,程序不斷出錯(cuò),有關(guān)中斷的以前沒有做過實(shí)驗(yàn),上課學(xué)的都沒有在實(shí)際中運(yùn)用過,只是懂得基本的原理,具體的還真不知道是怎么回事,導(dǎo)致我需要不斷地調(diào)試以及參考書本。不過經(jīng)過幾小時(shí)的功夫,還是出來(lái)了現(xiàn)象,通過這次實(shí)驗(yàn)也讓我對(duì)中斷有了更深的了解。步進(jìn)電機(jī)控制接口實(shí)驗(yàn)二、 實(shí)驗(yàn)?zāi)康耐ㄟ^步進(jìn)電機(jī)控制實(shí)驗(yàn),學(xué)習(xí)并行接口電路及其控制程序的設(shè)計(jì)原理與方法。三、 實(shí)驗(yàn)內(nèi)容基本實(shí)驗(yàn) 四相步進(jìn)電機(jī),以雙八拍方式運(yùn)行。自己設(shè)置按鍵來(lái)控制電機(jī)的啟停。四、
32、 實(shí)驗(yàn)要求利用MFID實(shí)驗(yàn)平臺(tái)和步進(jìn)電機(jī)驅(qū)動(dòng)模塊板進(jìn)行硬件連接,利用MF2KI集成開發(fā)環(huán)境進(jìn)行步進(jìn)電機(jī)軟件控制程序的設(shè)計(jì)、調(diào)試,直到使步進(jìn)電機(jī)正常運(yùn)行。五、 實(shí)驗(yàn)原理1步進(jìn)電機(jī)驅(qū)動(dòng)模塊板電路原理如圖2.1.2所示。模塊板上包括接口的對(duì)象永磁式四相步進(jìn)電機(jī)和驅(qū)動(dòng)電路達(dá)林頓管TIP,保護(hù)電路74LS373,相序指示燈以及開關(guān)SW1和SW2等。 2步進(jìn)電機(jī)接口設(shè)計(jì)原理與方法的詳細(xì)闡述,參考計(jì)算機(jī)接口技術(shù)相關(guān)參考書。圖1 步進(jìn)電機(jī)驅(qū)動(dòng)模塊電路原理框圖六、 實(shí)驗(yàn)資源配置a) 電源:機(jī)內(nèi)供電,將JP-1跳接塊置于1-2位置(見圖1.10)。請(qǐng)注意:此括號(hào)內(nèi)的圖號(hào),系指”MFID實(shí)驗(yàn)平臺(tái)技術(shù)說(shuō)明書”第一章中
33、的圖號(hào),以下相同。b) I/O端口地址:8255的4個(gè)端口地址為300H303H。其中A口=300H,B口=301H,C口=302H,命令口=303H。DIP4開關(guān)的4位開關(guān)全部向上置為ON(見圖1.7)注c) 中斷資源:采用無(wú)條件傳送,JP-3跳接塊置于5-10位置(見圖1.9)注d) 電纜線:采用短型26芯扁平電纜e) 步進(jìn)電機(jī)模塊板上的兩上開關(guān)SW4和SW2的功能:可以配置為用來(lái)控制步進(jìn)電機(jī)的運(yùn)行方向,速度和啟動(dòng)/停止,其作用根據(jù)實(shí)驗(yàn)的內(nèi)容與要求由控制程序來(lái)定義。f) 軟件資源:MF軟件提供的用戶應(yīng)用程序集成開發(fā)環(huán)境與工具,有DOS和Windows兩個(gè)版本,兩個(gè)版本都包含了豐富的匯編語(yǔ)言
34、和C語(yǔ)言程序開發(fā)軟件包。七、 實(shí)驗(yàn)步驟步驟一:硬件連接跳線設(shè)置:模塊電源L區(qū) JP8跳接。單線連法如右圖: PA0 PA2 PA4 PA6PC4PC0PC1 A相 B相 C相 D相OE#74LS373開關(guān)按鍵開關(guān)T區(qū)SW1SW2排線接法如右圖:步驟二:將平臺(tái)的電源開關(guān)拔到“內(nèi)”的位置上。在配套集成環(huán)境下進(jìn)行硬件檢測(cè),來(lái)達(dá)到初始化芯片的目的。 步驟三:(演示實(shí)驗(yàn)步驟)打開集成環(huán)境在“演示實(shí)驗(yàn)”菜單下點(diǎn)開“基本接口實(shí)驗(yàn)”。在“基本接口實(shí)驗(yàn)”中的“并行接口實(shí)驗(yàn)”中選擇“步進(jìn)電機(jī)”實(shí)驗(yàn)進(jìn)行演示。 步驟四:(學(xué)生實(shí)驗(yàn)步驟)打開集成環(huán)境在“文件”菜單下學(xué)生可以選擇新建自己的C+/ASM文件或者集成環(huán)境自帶
35、的C+/ASM參考程序進(jìn)行調(diào)試、運(yùn)行。 步驟五:觀看實(shí)驗(yàn)現(xiàn)象得出結(jié)論。八、 步進(jìn)電機(jī)接口控制參考程序i. 流程圖 如圖3所示。圖3 流程圖2、步進(jìn)電機(jī)接口控制主程序:NAMA BUJINDIANJIDATA SEGMENTPSTA DB 05H,15H,14H,54H,50H,51H,41H,45H ;DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:CODE ORG 100HBEGIN: MOV DX,303H ; 初始化8255A MOV AL, 10000001B ; 命令控制字 OUT DX,AL ; 送命令 MOV AL,00001001B ; 置PC4
36、=1關(guān)閉74LS373 OUT DX,AL L: MOV DX,302H IN AL,DX AND AL,00000010 ; 查SW2按下?未按下,等待 JNZ L ; 按下后繼續(xù)執(zhí)行 MOV DX,303H ; 置PC4=0,打開74LS37 MOV AL,08H OUT DX,ALRELOAD: MOV SI,OFFSET PSTA ; 設(shè)置相序表指針 MOV CX,8 ; 設(shè)8拍循環(huán)次數(shù)LOP: MOV DX,302H IN AL,DX AND AL,00000001 ; 查SW1按下?未按下,等待 JZ QUIT ; 已按下,退出 MOV AL,SI ; 未按下,送相序代碼到PA口
37、MOV DX,300H OUT DX,AL MOV DI,0AFH MOV BX,0FFFFH ; 延時(shí)DELAY: DEC BX JNZ DELAY DEC DI JNZ DELAY INC SI ; 相序表指針+1 DEC CX ; 循環(huán)次數(shù)-1 JNZ LOP ; 未到8次,繼續(xù) JMP RELOAD ; 已到8次,重新賦值QUIT: MOV DX,303H ; 置PC4=1,關(guān)閉74LS373 MOV AL,09 OUT DX,AL MOV AH,4CH ; 程序退出,帶返回碼結(jié)束 INT 21HCODE ENDS END START七、心得體會(huì)上機(jī)實(shí)驗(yàn)操作是一個(gè)把理論用于實(shí)踐的很好機(jī)
38、會(huì)。通過自己動(dòng)手才明白自己的理論知識(shí)不過關(guān),很多老師經(jīng)常強(qiáng)調(diào)的易出錯(cuò)的地方自己還是沒有重視起來(lái)導(dǎo)致實(shí)驗(yàn)過程當(dāng)中頻頻出問題,對(duì)于匯編程序自己還有很多需要補(bǔ)習(xí),心存僥幸便從網(wǎng)上下載了一個(gè)源代碼。最后盡管硬件連接沒問題通過了編譯成功運(yùn)行看到了實(shí)驗(yàn)現(xiàn)象,但是自己確實(shí)沒有經(jīng)過嚴(yán)格思考,以后會(huì)注意的。直流電機(jī)控制接口實(shí)驗(yàn)一、 實(shí)驗(yàn)?zāi)康?通過直流電機(jī)控制實(shí)驗(yàn),深入了解與掌握直流電機(jī)控制原理與方法。二、 實(shí)驗(yàn)內(nèi)容基本實(shí)驗(yàn) 執(zhí)行程序,直流電機(jī)可以完成啟動(dòng)與停止控制,速度控制,方向控制。三、 實(shí)驗(yàn)要求利用MFID實(shí)驗(yàn)平臺(tái)和直流電機(jī)驅(qū)動(dòng)模塊板進(jìn)行硬件連接,利用MF集成開發(fā)環(huán)境進(jìn)行直流電機(jī)軟件控制程序的設(shè)計(jì)、調(diào)試,直到使直流電機(jī)正常運(yùn)行。四、 實(shí)驗(yàn)原理1、 直流電機(jī)驅(qū)動(dòng)模塊電路原理如圖3所示。2、 直流電機(jī)接口設(shè)計(jì)原理與方法的詳細(xì)闡述,參考由劉樂善老師主編的微型計(jì)算機(jī)接口技術(shù)及應(yīng)用。五、實(shí)驗(yàn)資源配置1電源:機(jī)內(nèi)供電,實(shí)驗(yàn)時(shí)將電源開關(guān)打到“內(nèi)”的位置上。2I/O端口地址:8255的4個(gè)端口地址為3
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版特色餐飲店鋪出租管理協(xié)議3篇
- 2025版小額貸款抵押合同財(cái)務(wù)報(bào)告披露要求3篇
- 買賣合同糾紛代理詞3篇
- 二零二五版薦知識(shí)產(chǎn)權(quán)擔(dān)保交易合同集3篇
- 二零二五年度城市通勤車輛出租合作協(xié)議4篇
- 二零二五年度員工借款爭(zhēng)議調(diào)解及勞動(dòng)法執(zhí)行合同
- 二零二五年度農(nóng)業(yè)OEM產(chǎn)品種植與加工合同范本3篇
- 二零二五年度工業(yè)廠房租賃市場(chǎng)拓展合同范本3篇
- 二零二五年度光伏充電樁場(chǎng)地共享租賃合同3篇
- 2025年度倉(cāng)儲(chǔ)物流零星維修施工合同協(xié)議書3篇
- 湖北省黃石市陽(yáng)新縣2024-2025學(xué)年八年級(jí)上學(xué)期數(shù)學(xué)期末考試題 含答案
- 硝化棉是天然纖維素硝化棉制造行業(yè)分析報(bào)告
- 央視網(wǎng)2025亞冬會(huì)營(yíng)銷方案
- 《00541語(yǔ)言學(xué)概論》自考復(fù)習(xí)題庫(kù)(含答案)
- 《無(wú)砟軌道施工與組織》 課件 第十講雙塊式無(wú)砟軌道施工工藝
- 江蘇省南京市、鹽城市2023-2024學(xué)年高三上學(xué)期期末調(diào)研測(cè)試+英語(yǔ)+ 含答案
- 2024新版《藥品管理法》培訓(xùn)課件
- 《阻燃材料與技術(shù)》課件 第7講 阻燃橡膠材料
- 爆炸物運(yùn)輸安全保障方案
- 江蘇省南京市2025屆高三學(xué)業(yè)水平調(diào)研考試數(shù)學(xué)試卷(解析版)
- 2024年黑龍江省哈爾濱市中考數(shù)學(xué)試卷(附答案)
評(píng)論
0/150
提交評(píng)論