匯編語言課程設(shè)計(jì)報(bào)告模擬電壓采集電路及程序設(shè)計(jì)_第1頁
匯編語言課程設(shè)計(jì)報(bào)告模擬電壓采集電路及程序設(shè)計(jì)_第2頁
匯編語言課程設(shè)計(jì)報(bào)告模擬電壓采集電路及程序設(shè)計(jì)_第3頁
匯編語言課程設(shè)計(jì)報(bào)告模擬電壓采集電路及程序設(shè)計(jì)_第4頁
匯編語言課程設(shè)計(jì)報(bào)告模擬電壓采集電路及程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、微型計(jì)算機(jī)技術(shù)課程設(shè)計(jì)指導(dǎo)教師: 白凱 趙立輝 學(xué)生班級(jí): 計(jì)科11003 學(xué)生姓名: 唐阿彪 學(xué) 號(hào): 201003711 班內(nèi)序號(hào): 19 課設(shè)日期:2012年12月17日2012年12月28日 目錄一.課設(shè)任務(wù)1二.課設(shè)目的1三.設(shè)計(jì)內(nèi)容1四.設(shè)計(jì)思路2五.設(shè)計(jì)步驟2六.試驗(yàn)流程3七.源代碼4八.實(shí)驗(yàn)結(jié)果10九.實(shí)驗(yàn)總結(jié)12一、課程設(shè)計(jì)任務(wù):模擬電壓采集電路及程序設(shè)計(jì)利用匯編語言與微型計(jì)算機(jī)技術(shù)課程中所學(xué)的主要可編程接口芯片8253、8255A、ADC0809和微機(jī)內(nèi)部的中斷控制器8259A(從保留的IRQ2或IRQ10端引入)設(shè)計(jì)一個(gè)模擬電壓采集電路及程序。二、設(shè)計(jì)目的1. 通過本設(shè)計(jì)

2、,使學(xué)生綜合運(yùn)用匯編語言與微型計(jì)算機(jī)技術(shù)課程以及其它電子類課程的內(nèi)容,為以后從事計(jì)算機(jī)硬件開發(fā)工作奠定一定的基礎(chǔ)。2. 主要掌握并行I/O接口芯片8253、8255A、ADC0809及中斷控制芯片8259A等可編程器件的使用,掌握譯碼器74LS138的使用。3. 學(xué)會(huì)用匯編語言編寫一個(gè)較完整的實(shí)用程序。4. 掌握微型計(jì)算機(jī)技術(shù)應(yīng)用開發(fā)的全過程:分析需求、設(shè)計(jì)原理圖、選用元器件、布線、編程、調(diào)試、撰寫報(bào)告等步驟。三、設(shè)計(jì)內(nèi)容1功能要求 采用ADC0809設(shè)計(jì)一個(gè)單通道模擬電壓采集電路,要求對(duì)所接通道變化的模擬電壓值進(jìn)行采集,采集來的數(shù)字量一路送至發(fā)光二極管顯示,一路送至計(jì)算機(jī)顯示到屏幕上,每行顯

3、示5個(gè)數(shù)據(jù),采集完100個(gè)數(shù)據(jù)后停止采集過程,采集過程中按下ESC鍵也可中斷采集過程。2. 設(shè)計(jì)所需器材與工具 一塊實(shí)驗(yàn)面包板(內(nèi)含時(shí)鐘電路)。 可編程芯片8253、8255A 、ADC0809和譯碼器芯片74LS138、74LS245各一片。74LS06兩片,發(fā)光二極管8個(gè)。 可調(diào)電位器4.7K一個(gè)。 導(dǎo)線若干。 示波器、萬用表、常用工具等共用(從實(shí)驗(yàn)室現(xiàn)借現(xiàn)還)。8255的自檢測這部分要求我們初始化8255,為了能夠正確的看出8255已經(jīng)初始化,當(dāng)8255初始化后向B口送數(shù)據(jù)0FH到發(fā)光二管上顯示,如果能夠正確顯示就說明8255已經(jīng)被初始化。8253的自檢測這部分要求我們初始化8253,8

4、253初始化后可以通過示波器觀察輸出的波形是否滿足要求。進(jìn)行A/D轉(zhuǎn)換。這部分是本次課設(shè)的關(guān)鍵部分,在做此之前,必須保證8255和8253都被正確的初始化,通過8255的C口控制ADC0809對(duì)模擬數(shù)據(jù)的采集,然后從A口讀取轉(zhuǎn)換后的數(shù)據(jù),一路送發(fā)光二極管顯示,一路送顯示器上顯示,這里模擬量由電位器得到。退出系統(tǒng)想結(jié)束程序的時(shí)候,從菜單上選擇Esc鍵就可以退出程序。四、設(shè)計(jì)思路 1. 4.7K電位器一端接+5V,一端接地,調(diào)節(jié)電位器得到變化的模擬電壓,該電壓接至ADC0809的某一通道輸入端(如IN0),ADC0809的時(shí)鐘為500KHz,由8253對(duì)面包板上時(shí)鐘1MHz或2MHz分頻后得到,8

5、253的端口地址:300H303H。2. 編程啟動(dòng)ADC0809轉(zhuǎn)換(ADC0809完成一次轉(zhuǎn)換的時(shí)間大約為120s),將ADC0809的EOC引腳信號(hào)作為中斷信號(hào),若轉(zhuǎn)換結(jié)束則進(jìn)入中斷服務(wù)程序。在中斷服務(wù)程序中讀入模數(shù)轉(zhuǎn)換結(jié)果,一路送至發(fā)光二極管顯示,一路送至計(jì)算機(jī)顯示到屏幕上。3. 8255A用做CPU和ADC0809間的接口芯片,ADC0809的控制信號(hào)(如OE、ALE、START等)可由8255A的PC口提供,模數(shù)轉(zhuǎn)換后的數(shù)字量可經(jīng)8255A的PA口讀入,經(jīng)8255A的PB口輸出到發(fā)光二極管。8255A端口地址:304H307H。4. 譯碼電路由74LS138提供。74LS245用于總

6、線和8255A之間的雙向傳輸和隔離。5. 硬件珠城際工作原理五、設(shè)計(jì)步驟1. 設(shè)計(jì)出正確的接口電路原理圖,要求用專業(yè)繪圖軟件繪制電路圖,并注明器件的名稱和管腳。2. 根據(jù)要求用74LS138設(shè)計(jì)出正確的I/O譯碼電路。3. 正確運(yùn)用所給器件布線,搭接硬件電路。4. 選用匯編語言編寫主程序以及各芯片調(diào)試子程序,要求: 具有操作界面、使用方便; 實(shí)現(xiàn)功能要求; 功能模塊應(yīng)有詳細(xì)注釋。5. 調(diào)試并排錯(cuò),包括硬件電路和軟件編程部分的錯(cuò)誤。6. 按照下圖連接電路六、實(shí)驗(yàn)流程1、ADC主程序編寫2、ADC中斷服務(wù)程序的編寫七、源代碼DATA SEGMENTMESG1 DB 1s invoke interr

7、upt one time,and to light one of LEDs,0ah,0dh DB Exit with Esc,0ah,0dh,$INT0A_OFF DW(?)INT0A_SEG DW(?) DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATADELAY PROC PUSH CX PUSH BX MOV BX,0FFFHLOOP2:MOV CX,0FFFFHLOOP1:LOOP LOOP1 DEC BX JNZ LOOP2 POP BX POP CX RET DELAY ENDPDISP PROC push ax show: and al,0f

8、0h ;顯示高4位 shr al,4 cmp al,9 ja hex add al,30h jmp nexthex: add al,37hnext: mov dl,al mov ah,2 int 21H pop ax and al,0fh ;顯示低4位 cmp al,9 ja hex1 add al,30h jmp next1hex1: add al,37hnext1: mov dl,al mov ah,2 int 21h mov dl,13 ;向屏幕送回車符 mov ah,2 int 21h mov dl,10 ;向屏幕送換行符 mov ah,2 int 21h RETDISP ENDPST

9、ART: MOV AX,DATA MOV DS,AX MOV AH,09H MOV DX,OFFSET MESG1 INT 21h ;顯示提示信息 MOV DX,303H ;初始化8255 MOV AL,80H 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

10、POP DS STI ;開中斷 IN AL,0A1H ;打開IRQ10 AND AL,0FBH OUT 0A1H,AL IN AL,21H ;打開IRQ2 AND AL,0FBH OUT 21H,AL MOV DX,307H ;8253定時(shí)1S MOV AL,01110110B OUT DX,AL MOV DX,305H MOV AL,0E8H OUT DX,AL MOV AL,03H OUT DX,AL MOV DX,307H MOV AL,10110110B OUT DX,AL MOV DX,306H MOV AL,0E8H OUT DX,AL MOV AL,03H OUT DX,ALL1

11、: MOV AH,0BH ;檢查是否有Esc鍵按下 INT 21H INC AL JNZ NEXT0 ; 若無鍵按下,則程序往下執(zhí)行 MOV AH,08H ;如有Esc鍵按下,則程序退出 INT 21H CMP AL,27 JZ EXIT NEXT0: CALL DELAY JMP L1 LEDLIGHT PROC FAR ;中斷服務(wù)程序 PUSH SI PUSH AX PUSH DX CLI ;關(guān)中斷 mov dx,303h ;初始化8255狀態(tài)字,A口輸出 mov al,80h out dx,al mov dx,300h;送通道號(hào)至A口 mov al,0 out dx,al mov dx,

12、303h mov al,3h;00000011,使PC1為1 out dx,al;PC1置1進(jìn)行地址鎖存; mov dx,303h; mov al,90h; out dx,al;重寫8255方式字,A口輸入,B口輸出,C口低四位輸出 mov dx,303h ;使PC0置高發(fā)啟動(dòng)信號(hào) mov al,1h;00000001,先使PC0為1 out dx,al mov cx,0f00h ;delay;lop1:loop lop1 mov dx,303h mov al,0h;00000000,延時(shí)后使PC0為0發(fā)啟動(dòng)信號(hào) out dx,al nopnopmov dx,303h mov al,5h;00

13、000101,使PC2為高,發(fā)出OE out dx,al mov dx,300h;從A口讀數(shù)據(jù) in al,dx MOV DX,301H;從B口向LED輸出數(shù)據(jù) OUT DX,AL CALL DISP ;向屏幕輸出數(shù)據(jù) MOV AL,62H ;發(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 ENDPEXIT: MOV AX,2572H ;恢復(fù)中斷向量 MOV DX,INT0A_SEG PUSH DS MOV DS,

14、DX MOV DX,INT0A_OFF INT 21H POP 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 CODE ENDS END START八、實(shí)驗(yàn)結(jié)果(如下圖)1、鍵入單選項(xiàng)“1”進(jìn)入主菜單后選擇1進(jìn)行8255的初始化自檢,這時(shí)候會(huì)發(fā)現(xiàn)在實(shí)驗(yàn)板上的一半燈亮,一半滅。界面和實(shí)驗(yàn)箱效果如下圖所示:2、鍵入菜單項(xiàng)“2” 8255初始化完成后鍵入“2”,程序?qū)⒉杉瘮?shù)據(jù),一路送往電腦顯示,一路送往二極管顯示,調(diào)節(jié)電位器,采集不同的數(shù)據(jù)八、實(shí)驗(yàn)總結(jié) 個(gè)人覺得這次實(shí)驗(yàn)主要考驗(yàn)的是學(xué)習(xí)態(tài)度和細(xì)心。實(shí)驗(yàn)用到的芯片基本都學(xué)習(xí)過,實(shí)驗(yàn)原理、程序代碼及電路圖老師都有講解,就是看平時(shí)學(xué)習(xí)時(shí)認(rèn)真與否。做實(shí)驗(yàn)時(shí)得細(xì)心和有耐心才能事半功倍。對(duì)于我來說,這次實(shí)驗(yàn)由于之前上機(jī)做單個(gè)芯片測試的實(shí)驗(yàn)時(shí)不是很認(rèn)真,加上對(duì)匯編語言不能熟練使用導(dǎo)致實(shí)驗(yàn)完成起來比較吃力,但得到老師和同學(xué)點(diǎn)撥后編程還是比較順利的。由于線路較多,實(shí)驗(yàn)在連線上耗費(fèi)了過多的時(shí)間,連接線路時(shí)沒有考慮到走線的合理性和美觀性,線路接地毫無條理,導(dǎo)致實(shí)驗(yàn)出現(xiàn)問題時(shí)檢查線路非常困難。從每根線路檢查起,到更換芯片

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論