版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 微機(jī)原理課程設(shè)計(jì)</b></p><p> —數(shù)據(jù)采集系統(tǒng)(查詢法)</p><p><b> 一、課設(shè)目的</b></p><p> 進(jìn)一步掌握微機(jī)原理只是,了解危機(jī)在實(shí)時(shí)采集過程中的應(yīng)用,學(xué)習(xí)、掌握編程和程序調(diào)試方法。</p><p><b> 二
2、、課設(shè)內(nèi)容</b></p><p> 用查詢法,將ADC 0809通道0外接0~5V電壓,轉(zhuǎn)換成數(shù)字量后,在七段LED數(shù)碼管上,以小數(shù)點(diǎn)后兩位(幾十毫伏)的精度,顯示其模擬電壓的十進(jìn)值;0809~道0的數(shù)字量以線性控制方式送DAC0832輸出,當(dāng)通道O的電壓為5V時(shí),0832的OUT為0v,當(dāng)通道O的電壓為0時(shí),0832的OUT為2.5V;此模擬電壓再送到ADC0809通道1,轉(zhuǎn)換后的數(shù)字量在CRT
3、上以十六進(jìn)制顯示;通道0的數(shù)字量經(jīng)74LS574輸出到八位LED上,且以一定的要求,點(diǎn)亮LED指示燈。調(diào)整電位器,用示波器或三用表觀察0832的變化,觀察七段LED數(shù)碼管數(shù)值的變化,觀察LED燈的變化,</p><p> ADC 0809的CLK脈沖,由定時(shí)器8254的OUT0提供;ADC 0809的EOC信號(hào),用8255的PC0檢測(cè);74LS574外接的LED燈變化如下:若電壓值小于0.5V,則最低位(DO)
4、’LED燈亮,若電壓值大于4.5V,則最高位LED燈亮,若電壓值在0.5V~4.5V,則八位LED燈由低向高變化亮,且高位LED燈亮?xí)r低位燈全亮。</p><p> 要有較好的人機(jī)對(duì)話界面;控制程序的運(yùn)行。</p><p><b> 三、硬件設(shè)計(jì)</b></p><p><b> 1、電原理框圖</b></p&
5、gt;<p><b> 見附件1</b></p><p> 2、電原理框圖工作過程的簡要說明</p><p> (1)、ADC 0809的INO采集電位器0—5V電壓,INl采集0832輸出的模擬量。</p><p> ?。?)、DAC 0832將ADC 0809的INO數(shù)字量后重新轉(zhuǎn)換成模擬量輸出。</p>
6、<p> ?。?)、8255用于檢測(cè)ADC 0809轉(zhuǎn)換是否,為七段LED數(shù)碼管顯示提供顯示驅(qū)動(dòng)信息。</p><p> (4)、七段LED數(shù)碼管顯示ADC 0809的INO的值。</p><p> (5)、74LS574驅(qū)動(dòng)八位發(fā)光二極管,使它們按要求點(diǎn)亮:來指示當(dāng)前采樣值的范圍。</p><p> ?。?)、8254提供ADC 0809的采樣時(shí)鐘脈
7、沖。</p><p> ?。?)、74LSl38譯碼器為各芯片提供地址信息。</p><p><b> 四、軟件設(shè)計(jì)</b></p><p> 首先進(jìn)行程序初始化顯示提示信息,判斷是否有鍵按下,按下1則繼續(xù)往下執(zhí)行,按下2則退出。首先對(duì)8254進(jìn)行初始化選擇工作方式及賦初值,然后啟動(dòng)0809的IN0,接著初始化8255,并檢測(cè)PA7的狀態(tài)檢
8、測(cè)轉(zhuǎn)換是否,否繼續(xù)檢測(cè)直至EOC為1,然后讀采樣值并保存,將其經(jīng)線性轉(zhuǎn)換后送0832,啟動(dòng)0809的IN1,然后重新對(duì)8255初始化及檢測(cè)PA7的EOC狀態(tài)端口,直至為1,讀IN1的采樣值并保存,將讀出值經(jīng)線性轉(zhuǎn)換后送往CRT顯示,然后將保存的INO采樣值進(jìn)行量綱轉(zhuǎn)換,調(diào)用數(shù)碼顯示子程序。然后對(duì)保存的IN0采樣值進(jìn)行比較,若小于0.48V,74574只驅(qū)動(dòng)最低位,最低位亮,若大于4.49則只有最高位亮,在中間值依次點(diǎn)亮一位,如大于0.4
9、8V小于1.15V則最低兩位亮,在1.15V至1.82V間低三位亮,在 1.82至2.48間低三位亮等。在0.48和4.49間選擇六個(gè)值依次控制選擇點(diǎn)亮LED燈.最后判斷主鍵盤是否有鍵按下,有結(jié)束,無重新回到啟動(dòng)0809的IN0程序段。最后列寫數(shù)碼管顯示的子程序、CRT顯示子程序、延時(shí)子程序。</p><p><b> 1、主程序流圖</b></p><p><
10、;b> 見附錄2</b></p><p><b> 2、程序</b></p><p> DATA SEGMENT</p><p> MES1 DB 'PRESS 1 TO BEGIN!',0DH,0AH</p><p> DB 'PRESS 2 TO QUIT!
11、',0DH,0AH,0DH,0AH,'$'</p><p> MES2 DB 'IN1 DATA= ','$'</p><p> MES3 DB 0DH,0AH,'$'</p><p> K0 DB ? </p><p> K1 DB
12、 ?</p><p> S DB 3 DUP(?)</p><p> DCTBL1 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,3EH</p><p> DCTBL2 DB 0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H,0FFH,0DFH</p><p>
13、 S1 DB 01H</p><p> S2 DB 80H</p><p> DATA ENDS</p><p> STACK1 SEGMENT PARA STACK 'STACK'</p><p> DB 256 DUP(?)</p><p> STACK1 ENDS
14、</p><p> CODE SEGMENT </p><p> ASSUME CS:CODE,DS:DATA</p><p> START:MOV AX,DATA</p><p><b> MOV DS,AX</b></p><p> LEA DX,MES1</p>
15、<p><b> MOV AH,9</b></p><p><b> INT 21H</b></p><p> LOP1: MOV DL,0FFH</p><p><b> MOV AH,6</b></p><p><b> INT 21H<
16、/b></p><p><b> JZ LOP1</b></p><p> CMP AL,'1'</p><p><b> JZ DA</b></p><p> CMP AL,'2'</p><p><b> JZ
17、 EXIT1</b></p><p><b> JMP START</b></p><p> DA: MOV AL,36H ;8254初始化</p><p> MOV DX,306CH</p><p><b> OUT DX,AL</b></p&g
18、t;<p> MOV AL,00H ;8254賦初值</p><p> MOV DX,3060H </p><p><b> OUT DX,AL</b></p><p> MOV AL,01H </p><p> MOV DX,3060H
19、</p><p> OUT DX,AL </p><p> BE: MOV AL,00H ;啟動(dòng)0809的IN0</p><p> MOV DX,3000H</p><p><b> OUT DX,AL</b></p><p> L1: MOV AL,
20、90H ;8255初始化</p><p> MOV DX,302CH</p><p><b> OUT DX,AL</b></p><p> MOV DX,3020H ;8255的PA7檢測(cè)EOC狀態(tài)</p><p><b> IN AL,DX</b>
21、;</p><p> TEST AL,80H </p><p><b> JZ L1</b></p><p> MOV DX,3000H ;讀0809采樣值</p><p><b> IN AL,DX</b></p><p>
22、 MOV K0,AL ;保存0809采樣值 </p><p> MOV AL,K0 ;線性控制方式轉(zhuǎn)換電壓,計(jì)算公式-1/2(X-5) </p><p> SUB AL,0FFH</p><p><b> ROR AL,1</b></p>&l
23、t;p><b> NEG AL</b></p><p> MOV K1,AL </p><p> MOV DX,30E0H ;把IN0計(jì)算值送給0832</p><p><b> OUT DX,AL</b></p><p> MO
24、V AL,10H ;啟動(dòng)0809的IN1</p><p> MOV DX,3004H</p><p><b> OUT DX,AL</b></p><p> L2: MOV AL,90H ;8255PA7檢測(cè)EOC狀態(tài)</p><p> MOV DX
25、,302CH</p><p><b> OUT DX,AL</b></p><p> MOV DX,3020H</p><p><b> IN AL,DX</b></p><p> TEST AL,80H</p><p><b> JZ L2</
26、b></p><p> NEXT: MOV DX,3004H ;讀IN1采樣值</p><p><b> IN AL,DX</b></p><p> MOV AL,7FH </p><p><b> MOV BL,K0</b&g
27、t;</p><p><b> SHR BL,1</b></p><p><b> SUB AL,BL</b></p><p> MOV K1,AL ;保存IN1 </p><p> LEA DX,MES2</p>
28、<p><b> MOV AH,9</b></p><p><b> INT 21H</b></p><p><b> JMP DE</b></p><p> EXIT1:JMP EXIT </p><p> DE: MOV AL,K1
29、 ;CRT顯示IN1的值</p><p><b> MOV BL,AL</b></p><p> AND AL,0F0H</p><p><b> MOV CL,4</b></p><p><b> ROR AL,CL</b></p>
30、<p><b> CALL CRT1</b></p><p><b> MOV AL,BL</b></p><p> AND AL,0FH</p><p><b> CALL CRT1</b></p><p> MOV DL,0DH</p>
31、<p><b> MOV AH,2</b></p><p><b> INT 21H</b></p><p> MOV AL,K0 ;量綱轉(zhuǎn)換</p><p> MOV AH,00H</p><p><b> MOV BL
32、,51</b></p><p><b> DIV BL</b></p><p><b> LEA SI,S</b></p><p> MOV [SI],AL</p><p><b> INC SI</b></p><p><b&
33、gt; MOV AL,AH</b></p><p><b> MOV BL,10</b></p><p><b> MUL BL</b></p><p><b> MOV BL,51</b></p><p><b> DIV BL</b&g
34、t;</p><p> MOV [SI],AL</p><p><b> INC SI</b></p><p><b> MOV AL,AH</b></p><p><b> MOV BL,10</b></p><p><b> MU
35、L BL</b></p><p><b> MOV BL,51</b></p><p><b> DIV BL</b></p><p><b> CMP AH,25</b></p><p><b> JA L3</b></p&g
36、t;<p><b> JMP L4</b></p><p> L3: ADD AL,1</p><p> L4: MOV [SI],AL</p><p><b> CALL DISP</b></p><p><b> MOV AL,K0</b>&
37、lt;/p><p> CMP AL,19H</p><p><b> JB L5</b></p><p> CMP AL,3BH</p><p><b> JB L6</b></p><p> CMP AL,5DH</p><p><b
38、> JB L7</b></p><p> CMP AL,7FH</p><p><b> JB L8</b></p><p> CMP AL,0A1H</p><p><b> JB L9</b></p><p> CMP AL,0C3H<
39、/p><p><b> JB L10</b></p><p> CMP AL,0E6H</p><p><b> JB L11</b></p><p> MOV DX,3080H</p><p> MOV AL,80H</p><p><b
40、> OUT DX,AL</b></p><p><b> JMP L12</b></p><p> L5: MOV DX,3080H</p><p> MOV AL,01H</p><p><b> OUT DX,AL</b></p><p>
41、<b> JMP L12</b></p><p> L6: MOV DX,3080H</p><p> MOV AL,00000011B</p><p><b> OUT DX,AL</b></p><p><b> JMP L12</b></p>
42、<p> L7: MOV DX,3080H</p><p> MOV AL,00000111B</p><p><b> OUT DX,AL</b></p><p> CALL DELAY</p><p><b> JMP EXIT0</b></p><p
43、> L8: MOV DX,3080H</p><p> MOV AL,00001111B</p><p><b> OUT DX,AL</b></p><p><b> JMP L12</b></p><p> L9: MOV DX,3080H</p><
44、p> MOV AL,00011111B</p><p><b> OUT DX,AL</b></p><p><b> JMP L12</b></p><p> L10: MOV DX,3080H</p><p> MOV AL,00111111B</p><p
45、><b> OUT DX,AL</b></p><p><b> JMP L12</b></p><p> L11: MOV DX,3080H</p><p> MOV AL,01111111B</p><p><b> OUT DX,AL</b></p
46、><p> L12: CALL DELAY</p><p> EXIT0:MOV DL,0FFH</p><p><b> MOV AH,6</b></p><p><b> INT 21H</b></p><p><b> JNZ EXIT</b&
47、gt;</p><p><b> JMP BE</b></p><p> EXIT: MOV AH,4CH</p><p><b> INT 21H</b></p><p> DISP PROC NEAR</p><p><b> PUSH DS&l
48、t;/b></p><p><b> PUSH CX</b></p><p><b> PUSH DX</b></p><p><b> PUSH AX</b></p><p><b> PUSH BX</b></p>
49、<p> MOV AL,10000000B ;8255初始化</p><p> MOV DX,302CH</p><p><b> OUT DX,AL</b></p><p> DIS1: MOV SI,OFFSET S ;七段數(shù)碼管顯示IN0轉(zhuǎn)換為十進(jìn)制后的個(gè)位、十分位、百分
50、位的值</p><p> MOV AL,[SI] ;顯示個(gè)位</p><p> LEA BX,DCTBL2</p><p><b> XLAT</b></p><p> MOV DX,3024H</p><p><b> OUT DX,AL<
51、;/b></p><p> MOV AL,000001000B</p><p> MOV DX,3020H</p><p><b> OUT DX,AL</b></p><p> CALL DELAY</p><p><b> INC SI</b></p
52、><p> MOV AL,[SI] ;顯示十分位</p><p> LEA BX,DCTBL1</p><p><b> XLAT</b></p><p> MOV DX,3024H</p><p><b> OUT DX,AL</b>
53、</p><p> MOV AH,000010000B</p><p><b> MOV AL,AH</b></p><p> MOV DX,3020H</p><p><b> OUT DX,AL</b></p><p> CALL DELAY</p>
54、<p><b> INC SI</b></p><p> MOV AL, [SI] ;顯示百分位</p><p> LEA BX,DCTBL1</p><p><b> XLAT</b></p><p> MOV DX,3024H</p><
55、;p><b> OUT DX,AL</b></p><p> MOV AL,100000B</p><p> MOV DX,3020H</p><p><b> OUT DX,AL</b></p><p> CALL DELAY</p><p><b&g
56、t; POP BX</b></p><p><b> POP AX</b></p><p><b> POP DX</b></p><p><b> POP CX</b></p><p><b> POP DS</b></p&g
57、t;<p><b> RET</b></p><p> DISP ENDP</p><p> CRT1 PROC ;CRT顯示子程序</p><p><b> PUSH AX</b></p><p>&
58、lt;b> PUSH DX</b></p><p> ADD AL,30H</p><p> CMP AL,39H</p><p><b> JBE D0</b></p><p><b> ADD AL,7</b></p><p> D0
59、: MOV DL,AL</p><p><b> MOV AH,2</b></p><p><b> INT 21H</b></p><p><b> POP DX</b></p><p><b> POP AX</b></p>&
60、lt;p><b> RET</b></p><p><b> CRT1 ENDP</b></p><p> DELAY PROC NEAR ;DELAY子程序</p><p><b> PUSH CX</b></p><p&g
61、t;<b> PUSH BX</b></p><p> MOV BX,18H</p><p> DEL1: MOV CX,0FFFFH</p><p><b> LOOP $</b></p><p><b> DEC BX</b></p><p&g
62、t;<b> JNZ DEL1</b></p><p><b> POP BX</b></p><p><b> POP CX</b></p><p><b> RET</b></p><p> DELAY ENDP</p><
63、;p><b> CODE ENDS</b></p><p> END START</p><p> 五、編程和調(diào)試中遇到的問題</p><p> 剛開始的時(shí)候LED數(shù)碼管不亮,經(jīng)檢查發(fā)現(xiàn)是插線一端接錯(cuò)位置,改正后數(shù)碼管亮,但發(fā)現(xiàn)調(diào)整電位器時(shí),八位發(fā)光二極管的點(diǎn)亮次序與預(yù)計(jì)值不同,且LED數(shù)碼管還會(huì)不停閃動(dòng)。經(jīng)檢查發(fā)現(xiàn)是排線接觸不
64、良,對(duì)可能接觸不良的排線進(jìn)行排查更換,最終LED和發(fā)光二極管正常顯示。</p><p> 編譯時(shí),程序報(bào)錯(cuò)Address Out of Range ,即跳轉(zhuǎn)時(shí)超程。在程序中間位置加入中繼跳轉(zhuǎn),同時(shí)在程序順序運(yùn)行時(shí)命令其跳過“中繼跳轉(zhuǎn)”指令運(yùn)行。</p><p><b> 六、運(yùn)行結(jié)果</b></p><p> 1.運(yùn)行程序后,屏幕輸出&l
65、t;/p><p> 2.按鍵盤‘1’后,屏幕顯示</p><p> 7段數(shù)碼管顯示 5.00 ;LED燈最高位點(diǎn)亮</p><p> 3.旋動(dòng)電位器直至極限位置,屏幕顯示</p><p> 7段數(shù)碼管顯示 0.00;LED燈最低位點(diǎn)亮</p><p><b> 附錄1:</b></p&
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機(jī)原理課程設(shè)計(jì)報(bào)告--數(shù)據(jù)采集系統(tǒng)三(中斷法)
- 微機(jī)原理課程設(shè)計(jì)報(bào)告--數(shù)據(jù)采集顯示系統(tǒng)
- 微機(jī)原理課程設(shè)計(jì)----電壓采集系統(tǒng)
- 微機(jī)原理課程設(shè)計(jì)--溫度采集系統(tǒng)
- 雙機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-計(jì)算機(jī)微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)---溫度采集系統(tǒng)報(bào)告
- 微機(jī)原理課程設(shè)計(jì)---鍵控?cái)?shù)據(jù)采集及數(shù)值顯示電路設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)--- 溫度測(cè)控系統(tǒng)
- 微機(jī)原理壓力測(cè)控系統(tǒng)課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)--電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 2017微機(jī)原理課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì).rar
- 微機(jī)原理課程設(shè)計(jì)報(bào)告
- 《微機(jī)原理》課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論