計(jì)算機(jī)硬件技術(shù)基礎(chǔ)實(shí)驗(yàn)報(bào)告.doc
《計(jì)算機(jī)硬件技術(shù)基礎(chǔ)實(shí)驗(yàn)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《計(jì)算機(jī)硬件技術(shù)基礎(chǔ)實(shí)驗(yàn)報(bào)告.doc(29頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
計(jì)算機(jī)硬件技術(shù)基礎(chǔ)實(shí)驗(yàn) 實(shí)驗(yàn)報(bào)告 學(xué) 校:__________________ 院 系:__________________ 學(xué) 號(hào):__________________ 姓 名:__________________ 同組人員:__________________ 實(shí)驗(yàn)一 電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn) 一,實(shí)驗(yàn)?zāi)康? 學(xué)習(xí)用8254定時(shí)/計(jì)數(shù)器使揚(yáng)聲器發(fā)聲的編程方法。 二,實(shí)驗(yàn)設(shè)備 PC微機(jī)一臺(tái)、TD-PIT+ 實(shí)驗(yàn)系統(tǒng)一套。 三,實(shí)驗(yàn)內(nèi)容 根據(jù)實(shí)驗(yàn)提供的音樂頻率表和時(shí)間表,編寫程序控制8254,使其輸出連接到揚(yáng)聲器上能發(fā)出相應(yīng)的樂曲。 四,實(shí)驗(yàn)說明及步驟 一個(gè)音符對(duì)應(yīng)一個(gè)頻率,將對(duì)應(yīng)一個(gè)音符頻率的方波通到揚(yáng)聲器上,就可以發(fā)出這個(gè)音符的聲音。音符與頻率對(duì)照關(guān)系如表1所示。將一段樂曲的音符對(duì)應(yīng)頻率的方波依次送到揚(yáng)聲器,就可以發(fā)出這段樂曲的聲音。 表1 音符與頻率對(duì)照表 (單位:Hz) 利用8254的方式3—“方波發(fā)生器”,將相應(yīng)一種頻率的計(jì)數(shù)初值寫入計(jì)數(shù)器,就可產(chǎn)生對(duì)應(yīng)頻率的方波。計(jì)數(shù)初值的計(jì)算如下: 計(jì)數(shù)初值 = 輸入時(shí)鐘 輸出頻率 例如輸入時(shí)鐘采用系統(tǒng)總線上CLK(1.041667MHz),要得到800Hz的頻率,計(jì)數(shù)初值即為1041667/800。對(duì)于每一個(gè)音符的演奏時(shí)間,可以通過軟件延時(shí)來處理。首先確定單位延時(shí)時(shí)間程序(這個(gè)要根據(jù)PC機(jī)的CPU頻率做相應(yīng)的調(diào)整)。然后確定每個(gè)音符演奏需要幾個(gè)單位時(shí)間,將這個(gè)值送入DL中,調(diào)用DALLY子程序即可。 單位延時(shí)時(shí)間 DALLY PROC D0: MOV CX,200H D1: MOV AX,0FFFFH D2: DEC AX JNZ D2 LOOP D1 RET DALLY ENDP N個(gè)單位延時(shí)時(shí)間 (N送至DL) DALLY PROC D0: MOV CX,200H D1: MOV AX,0FFFFH D2: DEC AX JNZ D2 LOOP D1 DEC DL JNZ D0 RET DALLY ENDP 下面提供了樂曲《友誼地久天長(zhǎng)》的頻率表和時(shí)間表。頻率表是將曲譜中的音符對(duì)應(yīng)的頻率值依次記錄下來(B調(diào)、四分之二拍),時(shí)間表是將各個(gè)音符發(fā)音的相對(duì)時(shí)間記錄下來(由曲譜中節(jié)拍得出)。 頻率表: FREQ_LIST DW 371,495,495,495,624,556,495,556,624 ; DW 495,495,624,742,833,833,833,742,624 DW 624,495,556,495,556,624,495,416,416,371 DW 495,833,742,624,624,495,556,495,556,833 DW 742,624,624,742,833,990,742,624,624,495 DW 556,495,556,624,495,416,416,371,495,0 時(shí)間表: TIME_LIST DB 4, 6, 2, 4, 4, 6, 2, 4, 4 ; DB 6, 2, 4, 4, 12, 1, 3, 6, 2 DB 4, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 12, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 12, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 6, 2, 4, 4, 12 頻率表和時(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所示。 五,實(shí)驗(yàn)步驟: (1) 確認(rèn)從PC機(jī)引出的兩根扁平電纜已經(jīng)連接在實(shí)驗(yàn)平臺(tái)上。 (2) 首先運(yùn)行CHECK程序,查看I/O空間始地址。 (3) 利用查出的地址參考流程圖編寫程序,然后編譯鏈接。 (4) 參考圖2所示連接實(shí)驗(yàn)線路。 (5) 運(yùn)行程序,聽電子發(fā)聲單元的揚(yáng)聲器發(fā)出的音樂是否正確。 圖1 電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn)參考程序流程圖 圖2 電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn)參考接線圖 ;Sound.asm ;電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn) ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 9C00H ;***************************************************************** MY8254_COUNT0 EQU IOY0+00H*4 ;8254計(jì)數(shù)器0端口地址 MY8254_COUNT1 EQU IOY0+01H*4 ;8254計(jì)數(shù)器1端口地址 MY8254_COUNT2 EQU IOY0+02H*4 ;8254計(jì)數(shù)器2端口地址 MY8254_MODE EQU IOY0+03H*4 ;8254控制寄存器端口地址 STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT FREQ_LIST DW 371,495,495,495,624,556,495,556,624 ;頻率表 DW 495,495,624,742,833,833,833,742,624 DW 624,495,556,495,556,624,495,416,416,371 DW 495,833,742,624,624,495,556,495,556,833 DW 742,624,624,742,833,990,742,624,624,495 DW 556,495,556,624,495,416,416,371,495,0 TIME_LIST DB 4, 6, 2, 4, 4, 6, 2, 4, 4 ;時(shí)間表 DB 6, 2, 4, 4, 12, 1, 3, 6, 2 DB 4, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 12, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 12, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 6, 2, 4, 4, 12 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV DX,MY8254_MODE ;初始化8254工作方式 MOV AL,36H ;定時(shí)器0、方式3 OUT DX,AL BEGIN:MOV SI,OFFSET FREQ_LIST ;裝入頻率表起始地址 MOV DI,OFFSET TIME_LIST ;裝入時(shí)間表起始地址 PLAY: MOV DX,0FH ;輸入時(shí)鐘為1.0416667MHz,1.0416667M = 0FE502H MOV AX,0E502H DIV WORD PTR [SI] ;取出頻率值計(jì)算計(jì)數(shù)初值,0F4240H / 輸出頻率 MOV DX,MY8254_COUNT0 OUT DX,AL ;裝入計(jì)數(shù)初值 MOV AL,AH OUT DX,AL MOV DL,[DI] ;取出演奏相對(duì)時(shí)間,調(diào)用延時(shí)子程序 CALL DALLY ADD SI,2 INC DI CMP WORD PTR [SI],0 ;判斷是否到曲末? JE BEGIN MOV AH,1 ;判斷是否有按鍵按下? INT 16H JZ PLAY QUIT: MOV DX,MY8254_MODE ;退出時(shí)設(shè)置8254為方式2,OUT0置0 MOV AL,10H OUT DX,AL MOV AX,4C00H ;結(jié)束程序退出 INT 21H DALLY PROC ;延時(shí)子程序 D0: MOV CX,200H D1: MOV AX,0FFFFH D2: DEC AX JNZ D2 LOOP D1 DEC DL JNZ D0 RET DALLY ENDP CODE ENDS END START 初始效果: 播放了《友誼天長(zhǎng)地久》 修改點(diǎn): FREQ_LIST 和 TIME_LIST 重新編排了了頻率表和時(shí)間表的內(nèi)容 修改效果: 發(fā)出了音樂《兩只老虎》 修改后代碼: ;Sound.asm ;電子發(fā)聲設(shè)計(jì)實(shí)驗(yàn) ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 0d800H ;***************************************************************** MY8254_COUNT0 EQU IOY0+00H*4 ;8254計(jì)數(shù)器0端口地址 MY8254_COUNT1 EQU IOY0+01H*4 ;8254計(jì)數(shù)器1端口地址 MY8254_COUNT2 EQU IOY0+02H*4 ;8254計(jì)數(shù)器2端口地址 MY8254_MODE EQU IOY0+03H*4 ;8254控制寄存器端口地址 STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT FREQ_LIST DW 262,294,330,262,262,294,330,262,330,350,393,330,350,393 ;頻率表 DW 393,441,393,350,330,262,393,441,393,350,330,262 DW 294,196,262,294,196,262 TIME_LIST DB 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 4, 4, 8 ;時(shí)間表 DB 2, 2, 2, 2, 4, 4, 2, 2, 2, 2, 4, 4 DB 4, 4, 8, 4, 4, 8 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV DX,MY8254_MODE ;初始化8254工作方式 MOV AL,36H ;定時(shí)器0、方式3 OUT DX,AL BEGIN:MOV SI,OFFSET FREQ_LIST ;裝入頻率表起始地址 MOV DI,OFFSET TIME_LIST ;裝入時(shí)間表起始地址 PLAY: MOV DX,0FH ;輸入時(shí)鐘為1.0416667MHz,1.0416667M = 0FE502H MOV AX,0E502H DIV WORD PTR [SI] ;取出頻率值計(jì)算計(jì)數(shù)初值,0F4240H / 輸出頻率 MOV DX,MY8254_COUNT0 OUT DX,AL ;裝入計(jì)數(shù)初值 MOV AL,AH OUT DX,AL MOV DL,[DI] ;取出演奏相對(duì)時(shí)間,調(diào)用延時(shí)子程序 CALL DALLY ADD SI,2 INC DI CMP WORD PTR [SI],0 ;判斷是否到曲末? JE BEGIN MOV AH,1 ;判斷是否有按鍵按下? INT 16H JZ PLAY QUIT: MOV DX,MY8254_MODE ;退出時(shí)設(shè)置8254為方式2,OUT0置0 MOV AL,10H OUT DX,AL MOV AX,4C00H ;結(jié)束程序退出 INT 21H DALLY PROC ;延時(shí)子程序 D0: MOV CX,0A00H D1: MOV AX,0FFFFH D2: DEC AX JNZ D2 LOOP D1 DEC DL JNZ D0 RET DALLY ENDP CODE ENDS END START 六,實(shí)驗(yàn)心得 這是我們第一次接觸硬件實(shí)驗(yàn),第一次接觸TD-PIT+實(shí)驗(yàn)系統(tǒng),以前都只是在書本上看過有關(guān)方面的內(nèi)容,這次終于見到真的了!我們懷著好奇和激動(dòng)的心情完成了這次實(shí)驗(yàn),但總體來說效果沒有想象中的那樣美好,我們不懂的東西太多了。雖然實(shí)驗(yàn)倒是圓滿完成了,但我們只是像個(gè)技工一樣按照講義按部就班地把線接好,把程序改好,至于線路為什么要這樣連接,具體的程序語言是什么意思卻并不是很清楚,整體的認(rèn)識(shí)和把握還是比較模糊的。不過這個(gè)實(shí)驗(yàn)還是極大地激發(fā)了我們的好奇心,在課后我們查閱了一些文獻(xiàn),大致了解一些關(guān)于電子發(fā)生器的原理以及運(yùn)用,我們了解到它很重要的一個(gè)作用就是用作有源消聲器,就是一種在風(fēng)道內(nèi),用電腦控制電子發(fā)聲器產(chǎn)生一種與需消噪聲的頻率、強(qiáng)度相合,但相位相反的干涉聲波來消除噪聲的消聲裝置。有源消聲器基本原理是在原來的聲場(chǎng)中,利用電子設(shè)備再產(chǎn)生一個(gè)與原來的聲壓大小相等、相位相反的聲波,使其在一定范圍內(nèi)與原來的聲場(chǎng)相抵消。有源消聲器被廣泛使用于發(fā)電、化工、冶金、紡織等工業(yè)廠礦中用于各種型號(hào)鍋爐、汽機(jī)排汽;風(fēng)機(jī);安全門等設(shè)備的消聲降音。 實(shí)驗(yàn)二 點(diǎn)陣LED顯示設(shè)計(jì)實(shí)驗(yàn) 一,實(shí)驗(yàn)?zāi)康? 學(xué)習(xí)點(diǎn)陣LED的操作方法。 二,實(shí)驗(yàn)設(shè)備 PC微機(jī)一臺(tái)、TD-PIT+ 實(shí)驗(yàn)系統(tǒng)一套。 三,實(shí)驗(yàn)內(nèi)容 使用基本輸入輸出單元中的兩路輸出OA[7:0]和OB[7:0]分別控制點(diǎn)陣LED的行控制R[7:0]和列控制L[7:0]。編寫程序,使點(diǎn)陣LED的每一行和每一列依次循環(huán)顯示。 四,實(shí)驗(yàn)說明 88點(diǎn)陣LED相當(dāng)于88個(gè)發(fā)光管組成的陣列,其中每一行共用一個(gè)陽極(行控制),每一列共用一個(gè)陰極(列控制)。行控制和列控制滿足正確的電平就可使相應(yīng)行列的發(fā)光管點(diǎn)亮。實(shí)驗(yàn)平臺(tái)上點(diǎn)陣LED的管腳及相應(yīng)的行、列控制位如圖1所示。 (a) (b) 圖1 88點(diǎn)陣LED管腳圖 本實(shí)驗(yàn)利用基本輸入輸出單元的兩路輸出分別控制點(diǎn)陣LED的行和列,編寫一個(gè)簡(jiǎn)單的程序,使每一行和每一列依次循環(huán)顯示。參考程序流程如圖2所示。 五,實(shí)驗(yàn)步驟 (1) 確認(rèn)從PC機(jī)引出的兩根扁平電纜已經(jīng)連接在實(shí)驗(yàn)平臺(tái)上。 (2) 首先運(yùn)行Tdpit集成操作軟件,檢查端口資源分配情況。記錄與所使用片選信號(hào)對(duì)應(yīng)的I/O端口始地址。 (3) 利用查出的地址編寫程序,然后編譯鏈接。 (4) 實(shí)驗(yàn)參考接線如圖4所示連接實(shí)驗(yàn)線路。 (5) 運(yùn)行程序,觀察LED顯示是否正確。 圖2 點(diǎn)陣LED顯示實(shí)驗(yàn)參考程序流程圖 圖3 88點(diǎn)陣LED顯示實(shí)驗(yàn)參考接線圖 圖4 1616點(diǎn)陣LED顯示實(shí)驗(yàn)參考接線圖 源代碼: ;Led-HZ.asm ;32位LED點(diǎn)陣漢字顯示實(shí)驗(yàn) INCLUDE LED-HZ.inc .386P ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 0DC00H ;片選IOY0對(duì)應(yīng)的端口始地址 ;***************************************************************** STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT USE16 ADDR DW ? DATA ENDS CODE SEGMENT USE16 ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX A2: MOV ADDR,OFFSET HZDOT ;取漢字?jǐn)?shù)組始地址 MOV SI,ADDR A1: MOV CX,20H ;控制1屏顯示時(shí)間 LOOP2: CALL DISPHZ SUB SI,32 LOOP LOOP2 KEY: MOV AH,1 ;判斷是否有按鍵按下? INT 16H JNZ QUIT ADD SI,2 MOV AX,SI SUB AX,ADDR CMP AX,352 ;比較文字是否顯示完畢 JNB A2 JMP A1 QUIT: MOV EAX,0 ;滅燈 MOV DX,IOY0 OUT DX,EAX MOV AX,4C00H ;結(jié)束程序退出 INT 21H DISPHZ PROC NEAR ;顯示1屏漢字子程序 PUSH CX MOV CX,16 MOV BX,0FFFEH LOOP1: MOV AL,BYTE PTR[SI] MOV AH,BYTE PTR[SI+1] ROL EAX,16 MOV AX,BX ADD SI,2 ROL BX,1 NOT EAX MOV DX,IOY0 OUT DX,EAX CALL DALLY LOOP LOOP1 POP CX RET DISPHZ ENDP DALLY PROC NEAR ;軟件延時(shí)子程序 MOV AX,0FFFFH D1: DEC AX JNZ D1 RET DALLY ENDP CODE ENDS END START DATA SEGMENT HZDOT: ;空白 DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H ;西 CCEF7 DB 000H,000H,0FFH,0FFH,060H,006H,060H,006H DB 0FEH,07FH,066H,066H,066H,066H,066H,066H DB 066H,066H,036H,07CH,01EH,060H,00EH,060H DB 006H,060H,0FEH,07FH,006H,060H,000H,000H ;安 CB0B2 DB 0C0H,000H,080H,001H,0FCH,0FFH,00CH,060H DB 066H,030H,0E0H,000H,060H,000H,0FFH,0FFH DB 030H,00CH,030H,00CH,030H,006H,0E0H,003H DB 080H,001H,0E0H,007H,038H,03CH,00FH,018H ;唐 CCCC6 DB 080H,001H,000H,003H,0FCH,07FH,00CH,003H DB 0FCH,01FH,00CH,01BH,0FCH,07FH,00CH,01BH DB 0FCH,01FH,00CH,003H,0FCH,01FH,03CH,018H DB 036H,018H,0F6H,01FH,033H,018H,000H,000H ;都 CB6BC DB 030H,000H,030H,0FCH,0FEH,0CFH,0B0H,06DH DB 0F0H,03CH,0FFH,01FH,030H,03CH,018H,06CH DB 0FCH,0CDH,08EH,0CDH,0FFH,0CDH,08CH,0FDH DB 08CH,06DH,0FCH,00DH,08CH,00DH,000H,00CH ;科 CBFC6 DB 0E0H,030H,03EH,033H,030H,036H,030H,036H DB 0FFH,030H,038H,033H,078H,036H,0FCH,036H DB 03CH,0F0H,036H,03EH,0F3H,033H,030H,030H DB 030H,030H,030H,030H,030H,030H,030H,030H ;教 CBDCC DB 030H,00CH,030H,00CH,0FEH,00DH,0F0H,0FEH DB 0FFH,067H,030H,066H,018H,067H,0FCH,036H DB 067H,03CH,030H,03CH,0F0H,019H,03FH,018H DB 030H,03CH,030H,037H,0FCH,0E1H,018H,060H ;儀 CD2C7 DB 030H,003H,030H,006H,018H,03EH,0D8H,036H DB 0CCH,030H,0CEH,018H,08FH,019H,08CH,019H DB 00CH,00FH,00CH,00FH,00CH,006H,00CH,00FH DB 08CH,019H,0CCH,0F0H,07CH,060H,00CH,000H ;器 CC6F7 DB 0FCH,07EH,0CCH,066H,0CCH,066H,0FCH,07EH DB 080H,019H,080H,031H,0FFH,07FH,0E0H,007H DB 038H,01CH,00FH,0F0H,0FCH,07FH,0CCH,033H DB 0CCH,033H,0CCH,033H,0FCH,03FH,000H,000H ;公 CB9AB DB 000H,000H,060H,006H,0E0H,006H,060H,006H DB 030H,00CH,030H,018H,018H,038H,0CCH,0F0H DB 0C6H,061H,0C0H,000H,060H,00CH,030H,018H DB 098H,03FH,0FCH,039H,018H,018H,000H,000H ;司 CCBBE DB 000H,000H,0FCH,07FH,000H,060H,000H,060H DB 0FEH,06FH,000H,060H,000H,060H,0FCH,067H DB 00CH,066H,00CH,066H,0FCH,067H,00CH,066H DB 00CH,060H,000H,078H,000H,030H,000H,000H ;空白 DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DATA ENDS 初始效果: LED屏上滾動(dòng)顯示“西安唐都科教儀器公司” 修改點(diǎn): DATA SEGMENT A1: MOV CX,20H 原文為“西安唐都科教儀器”,現(xiàn)改編為實(shí)驗(yàn)小組兩成員的名字和學(xué)院“材料的劉昊陽和馮恩科”,并且控制顯示時(shí)間,使字幕滾動(dòng)速度變慢 修改效果: LED屏上以較慢速度滾動(dòng)顯示“材料學(xué)院的劉昊陽和馮恩科” 修改后代碼: ;Led-HZ.asm ;32位LED點(diǎn)陣漢字顯示實(shí)驗(yàn) INCLUDE LED-HZ.inc .386P ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 0DC00H ;片選IOY0對(duì)應(yīng)的端口始地址 ;***************************************************************** STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT USE16 ADDR DW ? DATA ENDS CODE SEGMENT USE16 ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX A2: MOV ADDR,OFFSET HZDOT ;取漢字?jǐn)?shù)組始地址 MOV SI,ADDR A1: MOV CX,100H ;控制1屏顯示時(shí)間 LOOP2: CALL DISPHZ SUB SI,32 LOOP LOOP2 KEY: MOV AH,1 ;判斷是否有按鍵按下? INT 16H JNZ QUIT ADD SI,2 MOV AX,SI SUB AX,ADDR CMP AX,352 ;比較文字是否顯示完畢 JNB A2 JMP A1 QUIT: MOV EAX,0 ;滅燈 MOV DX,IOY0 OUT DX,EAX MOV AX,4C00H ;結(jié)束程序退出 INT 21H DISPHZ PROC NEAR ;顯示1屏漢字子程序 PUSH CX MOV CX,16 MOV BX,0FFFEH LOOP1: MOV AL,BYTE PTR[SI] MOV AH,BYTE PTR[SI+1] ROL EAX,16 MOV AX,BX ADD SI,2 ROL BX,1 NOT EAX MOV DX,IOY0 OUT DX,EAX CALL DALLY LOOP LOOP1 POP CX RET DISPHZ ENDP DALLY PROC NEAR ;軟件延時(shí)子程序 MOV AX,0FFFFH D1: DEC AX JNZ D1 RET DALLY ENDP CODE ENDS END START DATA SEGMENT HZDOT: ;空白 DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H ;材 CB2C4 DB 000H,000H,008H,008H,008H,008H,008H,008H DB 0BFH,07FH,008H,008H,01CH,00CH,02CH,00CH DB 02CH,00AH,00AH,00AH,00AH,009H,089H,008H DB 048H,008H,008H,008H,008H,00AH,008H,004H ;料 CC1CF DB 010H,010H,010H,011H,052H,012H,034H,012H DB 018H,010H,0FFH,010H,038H,011H,054H,012H DB 054H,072H,092H,01FH,012H,010H,011H,010H DB 010H,010H,010H,010H,010H,010H,010H,010H ;的 CB5C4 DB 008H,001H,008H,001H,004H,001H,03EH,03FH DB 0A2H,020H,0A2H,020H,062H,020H,03EH,021H DB 022H,022H,022H,026H,022H,024H,022H,020H DB 03EH,020H,022H,014H,002H,008H,000H,000H ;劉 CC1F5 DB 008H,020H,010H,020H,020H,020H,0FEH,025H DB 080H,024H,084H,024H,048H,024H,050H,024H DB 020H,024H,060H,024H,050H,024H,088H,020H DB 084H,021H,082H,028H,001H,010H,000H,000H ;昊 CEABB DB 000H,000H,0F8H,01FH,008H,010H,0F8H,01FH DB 008H,010H,0F8H,01FH,000H,000H,0FCH,03FH DB 080H,000H,080H,000H,0FFH,07FH,040H,001H DB 020H,002H,018H,00CH,007H,070H,000H,020H ;陽 CD1F4 DB 000H,000H,0BEH,03FH,0A2H,020H,092H,020H DB 092H,020H,08AH,020H,092H,03FH,0A2H,020H DB 0A2H,020H,0A2H,020H,096H,020H,08AH,020H DB 082H,03FH,082H,020H,002H,000H,002H,000H ;和 CBACD DB 000H,000H,0E0H,000H,01EH,000H,010H,03EH DB 010H,022H,0FEH,022H,010H,022H,018H,022H DB 038H,022H,054H,022H,0D4H,022H,052H,022H DB 011H,03EH,010H,022H,010H,000H,010H,000H ;馮 CB7EB DB 000H,000H,0E2H,01FH,004H,010H,094H,010H DB 090H,008H,090H,008H,088H,008H,0C8H,03FH DB 084H,020H,007H,020H,0F4H,02FH,004H,020H DB 004H,020H,004H,020H,004H,014H,004H,008H ;恩 CB6F7 DB 0F8H,01FH,008H,011H,008H,011H,0E8H,01FH DB 008H,011H,088H,012H,048H,014H,0F8H,01FH DB 000H,000H,080H,000H,014H,011H,014H,021H DB 012H,068H,012H,028H,0E0H,00FH,000H,000H ;科 CBFC6 DB 060H,010H,01EH,011H,010H,012H,010H,012H DB 07FH,010H,018H,011H,038H,012H,054H,012H DB 014H,070H,012H,01EH,0D1H,011H,010H,010H DB 010H,010H,010H,010H,010H,010H,010H,010H ;空白 DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DB 000H,000H,000H,000H,000H,000H,000H,000H DATA ENDS 六,實(shí)驗(yàn)心得 無論你在火車站,還是在醫(yī)院,或是在商場(chǎng),你都隨時(shí)可以發(fā)現(xiàn)LED的身影,它已經(jīng)融入了人們的生產(chǎn)生活當(dāng)中,用它那單調(diào)的顏色給我們傳遞了豐富的信息。今天有幸在硬件實(shí)驗(yàn)課上碰到這位老朋友,心里十分激動(dòng),終于可以一探究竟了。在一番操作之下,看到LED上閃爍著自己的名字,很是自豪。這個(gè)實(shí)驗(yàn)操作比較簡(jiǎn)單,我們小組很快就完成了這個(gè)實(shí)驗(yàn),其間基本上沒有遇到什么困難。課后大家搜集了一些有關(guān)LED的資料,匯總?cè)缦? LED(Light Emitting Diode),發(fā)光二極管,是一種固態(tài)的半導(dǎo)體器件,它可以直接把電轉(zhuǎn)化為光。LED的心臟是一個(gè)半導(dǎo)體的晶片,晶片的一端附在一個(gè)支架上,一端是負(fù)極,另一端連接電源的正極,使整個(gè)晶片被環(huán)氧樹脂封裝起來。半導(dǎo)體晶片由兩部分組成,一部分是P型半導(dǎo)體,在它里面空穴占主導(dǎo)地位,另一端是N型半導(dǎo)體,在這邊主要是電子。但這兩種半導(dǎo)體連接起來的時(shí)候,它們之間就形成一個(gè)P-N結(jié)。當(dāng)電流通過導(dǎo)線作用于這個(gè)晶片的時(shí)候,電子就會(huì)被推向P區(qū),在P區(qū)里電子跟空穴復(fù)合,然后就會(huì)以光子的形式發(fā)出能量,這就是LED發(fā)光的原理。而光的波長(zhǎng)也就是光的顏色,是由形成P-N結(jié)的材料決定的。 上個(gè)世紀(jì)60年代,科技工作者利用半導(dǎo)體PN結(jié)發(fā)光的原理,研制成了LED發(fā)光二極管。當(dāng)時(shí)研制的LED,所用的材料是GaASP,其發(fā)光顏色為紅色。經(jīng)過近30年的發(fā)展,現(xiàn)在大家十分熟悉的LED,已能發(fā)出紅、橙、黃、綠、藍(lán)等多種色光。然而照明需用的白色光LED僅在近年才發(fā)展起來。 1. 可見光的光譜和LED白光的關(guān)系。 眾所周之,可見光光譜的波長(zhǎng)范圍為380nm~760nm,是人眼可感受到的七色光——紅、橙、黃、綠、青、藍(lán)、紫,但這七種顏色的光都各自是一種單色光。例如LED發(fā)的紅光的峰值波長(zhǎng)為565nm。在可見光的光譜中是沒有白色光的,因?yàn)榘坠獠皇菃紊?,而是由多種單色光合成的復(fù)合光,正如太陽光是由七種單色光合成的白色光,而彩色電視機(jī)中的白色光也是由三基色黃、綠、藍(lán)合成。由此可見,要使LED發(fā)出白光,它的光譜特性應(yīng)包括整個(gè)可見的光譜范圍。但要制造這種性能的LED,在目前的工藝條件下是不可能的。根據(jù)人們對(duì)可見光的研究,人眼睛所能見的白光,至少需兩種光的混合,即二波長(zhǎng)發(fā)光(藍(lán)色光+黃色光)或三波長(zhǎng)發(fā)光(藍(lán)色光+綠色光+紅色光)的模式。上述兩種模式的白光,都需要藍(lán)色光,所以攝取藍(lán)色光已成為制造白光的關(guān)鍵技術(shù),即當(dāng)前各大LED制造公司追逐的“藍(lán)光技術(shù)”。目前國(guó)際上掌握“藍(lán)光技術(shù)”的廠商僅有少數(shù)幾家,所以白光LED的推廣應(yīng)用,尤其是高亮度白光LED在我國(guó)的推廣還有一個(gè)過程。 2. 白光LED的工藝結(jié)構(gòu)和白色光源。 對(duì)于一般照明,在工藝結(jié)構(gòu)上,白光LED通常采用兩種方法形成,第一種是利用“藍(lán)光技術(shù)”與熒光粉配合形成白光;第二種是多種單色光混合方法。這兩種方法都已能成功產(chǎn)生白光器件。第一種方法產(chǎn)生白光的系統(tǒng)如圖1所示,圖中LED GaM芯片發(fā)藍(lán)光(λp=465nm),它和YAG(釔鋁石榴石)熒光粉封裝在一起,當(dāng)熒光粉受藍(lán)光激發(fā)后發(fā)出黃色光,結(jié)果,藍(lán)光和黃光混合形成白光(構(gòu)成LED的結(jié)構(gòu)如圖2所示)。第二種方法采用不同色光的芯片封裝在一起,通過各色光混合而產(chǎn)生白光。 3.白光LED照明新光源的應(yīng)用前景。 為了說明白光LED的特點(diǎn),先看看目前所用的照明燈光源的狀況。白熾燈和鹵鎢燈,其光效為12~24流明/瓦;熒光燈和HID燈的光效為50~120流明/瓦。對(duì)白光LED:在1998年,白光LED的光效只有5流明/瓦,到了1999年已達(dá)到15流明/瓦,這一指標(biāo)與一般家用白熾燈相近,而在2000年時(shí),白光LED的光效已達(dá)25流明/瓦,這一指標(biāo)與鹵鎢燈相近。有公司預(yù)測(cè),到2005年,LED的光效可達(dá)50流明/瓦,到2015年時(shí),LED的光效可望達(dá)到150~200流明/瓦。那時(shí)的白光LED的工作電流便可達(dá)安培級(jí)。由此可見開發(fā)白光LED作家用照明光源,將成可能的現(xiàn)實(shí)。 LED光源具有使用低壓電源、耗能少、適用性強(qiáng)、穩(wěn)定性高、響應(yīng)時(shí)間短、對(duì)環(huán)境無污染、多色發(fā)光等的優(yōu)點(diǎn),雖然價(jià)格較現(xiàn)有照明器材昂貴,仍被認(rèn)為是它將不可避免地現(xiàn)有照明器件。 實(shí)驗(yàn)三 步進(jìn)電機(jī)控制實(shí)驗(yàn) 一,實(shí)驗(yàn)?zāi)康? (1) 學(xué)習(xí)步進(jìn)電機(jī)的控制方法。 (2) 學(xué)會(huì)用8255控制步進(jìn)電機(jī)。 二,實(shí)驗(yàn)設(shè)備 PC微機(jī)一臺(tái)、TD-PIT+ 實(shí)驗(yàn)系統(tǒng)一套、選配四項(xiàng)八拍步進(jìn)電機(jī)一個(gè)。 三,實(shí)驗(yàn)內(nèi)容 學(xué)習(xí)步進(jìn)電機(jī)的控制方法,編寫程序,利用8255的B口來控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)。 四,實(shí)驗(yàn)說明及步驟 使用開環(huán)控制方式能對(duì)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向、速度、角度進(jìn)行調(diào)節(jié)。所謂步進(jìn),就是指每給步進(jìn)電機(jī)一個(gè)遞進(jìn)脈沖,步進(jìn)電機(jī)各繞組的通電順序就改變一次,即電機(jī)轉(zhuǎn)動(dòng)一次。根據(jù)步進(jìn)電機(jī)控制繞組的多少可以將電機(jī)分為三相、四相和五相。實(shí)驗(yàn)平臺(tái)可連接的步進(jìn)電機(jī)為四項(xiàng)八拍電機(jī),電壓為DC12V,其勵(lì)磁線圈及其勵(lì)磁順序如圖1及表1所示。 表1 單次脈沖勵(lì)磁順序 圖1 四項(xiàng)八拍電機(jī)勵(lì)磁線圈 實(shí)驗(yàn)中PB端口各線的電平在各步中的情況如表2所示。實(shí)驗(yàn)電路如圖2所示。 表2 PB端口各線的電平在各步中的情況 圖2 步進(jìn)電機(jī)控制實(shí)驗(yàn)參考接線圖 五,實(shí)驗(yàn)步驟: (1) 確認(rèn)從PC機(jī)引出的兩根扁平電纜已經(jīng)連接在實(shí)驗(yàn)平臺(tái)上。 (2) 首先運(yùn)行CHECK程序,查看I/O空間始地址。 (3) 利用查出的地址編寫程序,然后編譯鏈接。 (4) 參考圖4-1-3所示連接實(shí)驗(yàn)線路。 (5) 運(yùn)行程序,觀察步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)情況。 注意:步進(jìn)電機(jī)不使用時(shí)請(qǐng)斷開連接器,以免誤操作使電機(jī)過分發(fā)熱。 ;Bujin.asm ;步進(jìn)電機(jī)控制實(shí)驗(yàn) ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 9C00H ;片選IOY0對(duì)應(yīng)的端口始地址 ;***************************************************************** MY8255_A EQU IOY0+00H*4 ;8255的A口地址 MY8255_B EQU IOY0+01H*4 ;8255的B口地址 MY8255_C EQU IOY0+02H*4 ;8255的C口地址 MY8255_MODE EQU IOY0+03H*4 ;8255的控制寄存器地址 STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT TTABLE DB 01H,03H,02H,06H,04H,0CH,08H,09H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MAIN: MOV DX,MY8255_MODE ;定義8255工作方式 MOV AL,80H ;工作方式0,A口和B口為輸出 OUT DX,AL A1: MOV BX,OFFSET TTABLE MOV CX,0008H A2: MOV AL,[BX] MOV DX,MY8255_B OUT DX,AL CALL DALLY INC BX LOOP A2 MOV AH,1 ;判斷是否有按鍵按下 INT 16H JZ A1 ;無按鍵則跳回繼續(xù)循環(huán),有則退出 QUIT: MOV AX,4C00H ;結(jié)束程序退出 INT 21H DALLY PROC NEAR ;軟件延時(shí)子程序 PUSH CX PUSH AX MOV CX,0FFFH D1: MOV AX,5000H D2: DEC AX JNZ D2 LOOP D1 POP AX POP CX RET DALLY ENDP CODE ENDS END START 初始效果: 步進(jìn)電機(jī)運(yùn)轉(zhuǎn)正常,指針順時(shí)針轉(zhuǎn)動(dòng),速率平穩(wěn),每轉(zhuǎn)4.45 S 修改點(diǎn): TTABLE DB 01H,03H,02H,06H,04H,0CH,08H,09H D1: MOV AX,5000H 修改效果: 指針逆時(shí)針轉(zhuǎn)動(dòng),并且轉(zhuǎn)速變快 修改后代碼: ;Bujin.asm ;步進(jìn)電機(jī)控制實(shí)驗(yàn) ;****************根據(jù)查看端口資源修改下列符號(hào)值******************* IOY0 EQU 9C00H ;片選IOY0對(duì)應(yīng)的端口始地址 ;***************************************************************** MY8255_A- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 計(jì)算機(jī)硬件 技術(shù) 基礎(chǔ) 實(shí)驗(yàn) 報(bào)告
鏈接地址:http://m.jqnhouse.com/p-9606067.html