《硬件課程設計報告》word版
《《硬件課程設計報告》word版》由會員分享,可在線閱讀,更多相關《《硬件課程設計報告》word版(14頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、精品 計算機科學與技術學院 硬件課程設計報告 2011年 9月 徐州 1 選題與需求分析 1.1 選題 經(jīng)過小組成員的認真考慮,最終確定課程設計的題目為數(shù)字示波器。數(shù)字示波器是智能化數(shù)字存儲示波器的簡稱,是模擬示波技術、數(shù)字化測量技術和計算機技術的綜合產(chǎn)物。與傳統(tǒng)示波器相比,數(shù)字示波器不僅具有可存儲波形、體積小、功耗低、方便攜帶等特點,而且還具有強大的實時信號處理分析等功能。因此在電子電信類實驗室中使用越來越廣泛。但目前我國使用的高性能數(shù)字示波器主要依靠國外產(chǎn)品,因此研究數(shù)字示波器有重要意義。 1.2 需求分析 示波器在電子測量、測試儀器中有著很廣泛
2、的應用,是觀察模擬電路和數(shù)字電路實驗現(xiàn)象、分析實驗中的問題、測量實驗結(jié)果必不可少的重要儀器。該課程設計是基于HUSY試驗箱的示波器模擬,由于儀器限制,只實現(xiàn)示波器的基本功能。設計的初步思想是實現(xiàn)復位、波形延展、顯示模擬量的基本大小信息。 經(jīng)過小組討論,示波器可有兩種工作方式。一種用波形的幅度來表示模擬量的大小,另一種工作方式用波長來表示模擬量的大小。 2 總體設計 2.1 硬件方案 不論工作在哪種工作方式下,都需要用到8279、0809芯片。在方式二下還需要用到8253作分頻。在兩種方案中,0809做數(shù)模轉(zhuǎn)換,把模擬電壓量轉(zhuǎn)換成數(shù)字量,用8279控制顯示器。 一、 用波形
3、幅度來表示模擬量的大小 模擬信 號輸入 0809 轉(zhuǎn)換 8086CPU 8279 LED顯示器 二、 用波長來表示模擬量大小 0809轉(zhuǎn)換 8086CPU 8253分頻 8279 LED顯示器 0809 轉(zhuǎn)換 模擬信 號輸入 .2.2 軟件方案 在兩種方案下分別對應兩種軟件方案,都必須包括0809,8279這些器件的初始化,還有這些器件的控制,然后第二個方案還要有8253的相關程序。 一、 用波形幅度來表示模擬量的大小 輸出8279中對應編碼的AL,LED對應亮 將8279中的LED編碼改了 在8279中判斷該數(shù)
4、字的高低 0809轉(zhuǎn)換成數(shù)字量 給0809一個電壓 對8279初始化 對0809初始化 二、 用波長來表示模擬量大小 根據(jù)8255的數(shù)據(jù)總線的值看是否轉(zhuǎn)換完畢 轉(zhuǎn)換完畢后對8279進行編碼,控制波形。 對0809初始化 對8255初始化 對8279初始化 3 詳細設計 3.1 硬件實現(xiàn) 第一方案: 1、 在第一方案中,我們僅用到了0809、8279兩種芯片各一個。 2、 0809實現(xiàn)將電壓的模擬量轉(zhuǎn)化成數(shù)字量。然后8279實現(xiàn)一個將數(shù)字量按照一定的算法,轉(zhuǎn)化成一定的波形,呈現(xiàn)
5、在它自帶的LED顯示屏上。 3、 管腳的連接是這樣的,首先將電壓的輸出接到0809的一個輸入上。然后是0809的clock接到1M/S的接口上,再來是0809的使能接到一個地址上。然后是8279的使能接到另一個地址上。這樣就完成了接線。 4、 芯片用的計算主要有:首先是電壓值轉(zhuǎn)化成數(shù)字量之后要在8279的LED燈上進行轉(zhuǎn)化,所以就要對數(shù)字量進行一定的算法計算。因為轉(zhuǎn)化之后是0~255的數(shù)值范圍太大,所以我們將轉(zhuǎn)化之后的數(shù)除以16得到一個范圍為0~15的數(shù),這樣對于后面的LED燈的顯示編碼有了很大的簡便。再來是對LED顯示屏的對應編碼。由于我們是做一個示波器,所以不需要像8279提供的那樣,
6、顯示數(shù)值,所以必須對8279的LED顯示屏進行重新的編碼。然后我們將低電平編為08H也就是對應的下面的一個燈亮;將中等電平編為40H也就是對應的中間的一個燈亮;然后將高電平編為01H也就是對應的高的一個燈亮。至此我們的基本的算法就結(jié)束了。 5、 硬件連線圖: 以上為實驗連接圖 第二方案: 方案二用到的芯片有8255、8279、0809。 芯片圖如下: 8255芯片圖 電路連接圖 在該示波器中,0809起模數(shù)轉(zhuǎn)換的作用。用到的管腳有:用于啟動0809的START管腳、CLK管腳、ALE管腳,V
7、CC管腳、REF(+)管腳、REF(-)管腳、GND管腳,通道選擇ABC三個管腳,允許輸出管腳OE,結(jié)果數(shù)據(jù)輸出管腳D0-D7,模擬通道IN0。8279控制七段數(shù)碼管的顯示。用到的管腳有:D0-D7,RD,WR,RESET,OUT0-OUT7,CS,CLK,BD,A0,VCC,SL0-SL3,GND。8255主要用于檢測0809轉(zhuǎn)換完畢與否。用到的管腳有:PA0,CS,RD,WR,D0-D7,A1,A0,VDD,VSS。8255只用于檢測轉(zhuǎn)換完畢,因此只需工作在方式0,基本輸入輸出方式,用A口作輸入。 電路連接圖如上圖所示。 系統(tǒng)的工作流程為:當有模擬量輸入后,0809啟動轉(zhuǎn)換,8255檢
8、測轉(zhuǎn)換完畢與否。當連接EOC端的PA0口將數(shù)據(jù)傳送給8086CPU發(fā)現(xiàn)最低位為0時,說明轉(zhuǎn)換完畢。這時通過讀0809數(shù)據(jù)端口將轉(zhuǎn)換完的數(shù)據(jù)通過數(shù)據(jù)總線傳遞給8086的寄存器。然后8086CPU將轉(zhuǎn)換完后的數(shù)據(jù)與1、2、3、4進行比較。比較后再將數(shù)據(jù)進行處理,對0-5之間的數(shù)據(jù)進行編碼,通過數(shù)據(jù)總線將數(shù)據(jù)寫入8279的寄存器中,從而顯示波形。也就是說0809與8255是通過EOC連接在一起的,而0809與8279是通過8086的數(shù)據(jù)總線連接在一起的。為了方便比較,現(xiàn)把十進制的1、2、3、4轉(zhuǎn)化完成后比較的數(shù)值化成CPU用的16進制數(shù)。如表所示。 1 33H 2 66H 3 89H
9、4 CCH 3.2 軟件實現(xiàn) 第一方案: 在實現(xiàn)軟件的時候,我們先上網(wǎng)了解了8279芯片的一些知識,然后再展開的編程。我們的思路是這樣的,先讓0809檢測高地電平,然后根據(jù)編程把高低電平按照一定的算法轉(zhuǎn)化成8279的LED顯示屏的上中下的燈相應暗滅。 0809將模擬量轉(zhuǎn)化成數(shù)字量的0~255,然后一定算法后轉(zhuǎn)化成0~15的數(shù)值范圍,然后根據(jù)改變8279LED顯示屏的七段碼的編程方式來顯示相應的波形。以下給出對應高低中電平的對應的七段碼。 高電平 08H 中等電平 40H 低電平 01H 最后為了可以讓示波器的功能更加的齊全,我們加入了8279鍵盤狀態(tài)的檢測來檢測鍵盤的
10、狀態(tài)的,以增加示波器的功能,我們讓按下3之后,波形定性。然后按下4之后繼續(xù)掃描,波形繼續(xù)變化。這樣整體的思路就完成了,在下面我們將給出我們設計的代碼。 Z8279 EQU 212H D8279 EQU 210H LEDMOD EQU 00 ;左邊輸入,八位顯示外部譯碼八位顯示 LEDFEQ EQU 38H ;掃描頻率 CODE SEGMENT ASSUME CS:CODE,DS:code START: PUSH CS POP DS CALL
11、 DELAY MOV DX,Z8279 MOV AL,LEDMOD OUT DX,AL MOV AL,LEDFEQ OUT DX,AL MOV CX,06H XZ: MOV DX,D8279 MOV AL,00H OUT DX,AL LOOP XZ NOP MOV BL,79H bg: INC BL MOV DX,208H MOV AL,0
12、 OUT DX,AL CALL DELAY IN AL,DX MOV AH,00H MOV CL,16 DIV CL PUSH AX MOV DX,Z8279 MOV AL,BL OUT DX,AL POP AX PUSH BL LEA BX,LED XLAT MOV DX,D8279 ;將AL中內(nèi)容寫到數(shù)碼管上 OUT DX,AL MOV CX,25000 delay2:LOOP de
13、lay2 MOV DX,D8279 ;讀入FIFO RAM內(nèi)容 IN AL,DX NOP TEST AL,01H JE NEXT3 POP BL JMP bg NEXT3: MOV DX,D8279 ;讀入FIFO RAM內(nèi)容 IN AL,DX NOP POP BL TEST AL,02H JE bg JMP NEXT3 LE
14、D DB 08H,08H,08H,08H,08H,40H,40H,40H,40H,40H,01H,01H,01H DB 01H,01H,01H DELAY PROC NEAR PUSH CX MOV CX,01F00H LOOP $ POP CX RET DELAY ENDP CODE ENDS END START 第二方案: 通過對硬件電路的分析,軟件編寫的思想也就生成了。各個器件的連接用軟件方法來連接,就是用CPU進行讀寫芯片的寄存器實現(xiàn)的。8086CPU通過讀8255的寄存器得知
15、0809已經(jīng)轉(zhuǎn)換完畢,然后再讀0809的寄存器將轉(zhuǎn)換完的數(shù)字量進行比較,然后再對數(shù)字量編碼,通過寫8279控制8279顯示波形。 程序如下: Z8279 EQU 212H D8279 EQU 210H LEDMOD EQU 00h LEDFEQ EQU 38H CODE SEGMENT ASSUME CS:CODE START: PUSH CS POP DS
16、 NOP MOV DX,21BH MOV AL,10010000B OUT DX,AL ;以上為初始化8255 MOV DX,Z8279 MOV AL,LEDMOD OUT
17、 DX,AL MOV AL,LEDFEQ OUT DX,AL ;以上為初始化8279 MOV DX,200H MOV AL,00H OUT DX,AL ;以
18、上為啟動0809 MOV DX,218H CHECK: IN AL,DX TEST AL,01H JZ CHECK MOV DX,200H IN AL,DX
19、 ;檢測0809是否轉(zhuǎn)換完畢。 CMP AL,33H JA C2 C1: MOV DX,D8279 ;如果轉(zhuǎn)化后的值介于00H和33H之間執(zhí)行C1程序段。 MOV AL,08H OUT DX,AL MOV
20、 DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL
21、 MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,08H OUT
22、 DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL ;以上為顯示占空比為1的波形。 MOV CX,25000 DELAY0: LOOP DELAY0 JMP BLACK C2: CMP AL,66H ;如果轉(zhuǎn)
23、化后的值介于33H和66H之間執(zhí)行C2程序段。 JA C3 MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279
24、 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279
25、 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL ;以上為顯示占空比為2的波形。
26、 MOV CX,25000 DELAY1: LOOP DELAY1 JMP BLACK C3: CMP AL,89H ;如果轉(zhuǎn)化后的值介于66H和89H之間執(zhí)行C3程序段。 JA C4 MOV DX,D8279 MOV AL,01H OUT DX,AL
27、 MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL
28、 MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV
29、 DX,D8279 MOV AL,01H OUT DX,AL ;以上為顯示占空比為3的波形。 MOV CX,25000 DELAY2: LOOP DELAY2 JMP BLACK C4: CMP AL,11001100B ;如果轉(zhuǎn)化后的值介于89H和CCH之間,執(zhí)行C4程序段。
30、 JA C5 MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H
31、 OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H
32、 OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL ;以上為顯示占空比為4的波形。 MOV CX,25000 DELAY3
33、: LOOP DELAY3 JMP BLACK C5: MOV DX,D8279 ;不滿足以上情況的就執(zhí)行C5程序。 MOV AL,08H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL
34、MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL
35、 MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL MOV DX,D8279 MOV AL,01H OUT DX,AL
36、 ;以上為顯示占空比比為5的波形。 MOV CX,25000 DELAY4: LOOP DELAY4 JMP BLACK BLACK: NOP JMP START CODE ENDS END START 4 設計結(jié)果 第一方案 方案一的缺點是在電壓的大小方面,不能顯示更多幅值的電壓,只能實現(xiàn)三種電壓的模擬。但是優(yōu)點是能夠?qū)崟r的掃描電壓的變化,較明顯的
37、顯示電壓的變化,并且能夠暫停下來進行觀察分析,也是一個不錯的功能。當然由于試驗箱的局限性,不然我認為完全可以讓這個實驗的功能更加的強大。還有一個優(yōu)點是和很多的示波器一樣,我們制作的示波器也是以時間為X軸,以電壓的大小為Y軸,電壓的大小體現(xiàn)在幅值上。所以較為可觀。以下是實驗結(jié)果圖 以上兩張圖是實時掃描電壓的情況 (a) (b) 圖a是顯示按下3波形暫停,圖b是顯示按下4繼續(xù)開始掃描 第二方案: 方案二的不足之處在于不具有很好的適應性。如果脫離HKZK88實驗箱,有很
38、大的局限性。要顯示其他波形需重新編碼。但是該方案能較好的反應模擬量電壓的大小。 實驗后的結(jié)果圖如下所示。 5 實驗體會 在此次課程設計中,學到的最主要的就是8279的運用,8279控制鍵盤和七段數(shù)碼管。在實驗開始時,最主要的困難在于方案的確定和具體思路的實現(xiàn)問題。通過小組討論和請教老師,最終確定了實驗方案。在方案確定的問題上,由于方案二的特殊性,在設計初期用到了8253,0809芯片也用了兩次。后經(jīng)過分析,8253分頻的作用沒有起到很好的控制作用,0809芯片兩次進行采集模擬量的做法也是沒有必要的,于是,最終確定用0809、8255、8279芯片。在編碼過程中遇到的主要問題是如何控制七段數(shù)碼管。先用8279對數(shù)碼管進行控制,但由于方案二現(xiàn)實的波形是一定的,無法進行像方案一那樣的編碼表的方案。后用8255對數(shù)碼管進行控制,發(fā)現(xiàn)8255無法對單個數(shù)碼管進行控制,只能一起控制。最后通過對8279的賦值,從而實現(xiàn)了顯示波形的功能。開始時程序只能執(zhí)行一次,不符合工程上示波器的要求,于是對程序進行了改進,即能實現(xiàn)多次采樣,直至按下RET鍵后會自動復位。 .
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。