微機(jī)原理及其應(yīng)用--微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第1頁(yè)
微機(jī)原理及其應(yīng)用--微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第2頁(yè)
微機(jī)原理及其應(yīng)用--微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第3頁(yè)
微機(jī)原理及其應(yīng)用--微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第4頁(yè)
微機(jī)原理及其應(yīng)用--微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、微機(jī)原理及其應(yīng)用課程設(shè)計(jì)報(bào)告 201年3月日課程設(shè)計(jì)題目及系統(tǒng)功能介紹微型計(jì)算機(jī)溫度控制系統(tǒng)設(shè)計(jì),假設(shè)工業(yè)現(xiàn)場(chǎng)溫度范圍為07,溫度值經(jīng)傳感器檢測(cè)后,經(jīng)變送器變成05V范圍內(nèi)的電壓信號(hào)。電壓信號(hào)送D轉(zhuǎn)換器ADC0809轉(zhuǎn)換成對(duì)應(yīng)的數(shù)字量。數(shù)字量經(jīng)數(shù)字濾波后送入CU作為本次采樣值。在LED數(shù)碼顯示器上顯示溫度值(采用十進(jìn)制顯示),并對(duì)溫度進(jìn)行測(cè)試和控制,當(dāng)檢測(cè)溫度到達(dá)溫度上限0時(shí)紅燈亮,蜂鳴器報(bào)警,低于下限30時(shí)黃燈亮,蜂鳴器報(bào)警,以達(dá)到監(jiān)控溫度的目的.本設(shè)計(jì)采用程序控制方式。系統(tǒng)功能:每隔0.秒鐘對(duì)現(xiàn)場(chǎng)溫度連續(xù)采集三次取平均值作為本次采樣的有效值;判斷溫度是否高于上限值60或低于下限值30,如超

2、出該范圍則分別用紅、黃發(fā)光二極管和報(bào)警;把采集來(lái)的電壓值轉(zhuǎn)化成溫度值在LED顯示器上顯示;若鍵盤(pán)輸入“則返回DOS,結(jié)束程序.硬件設(shè)計(jì)系統(tǒng)的硬件工作原理: CPU通過(guò)8255查詢83的定時(shí)時(shí)間是否已到,若到則對(duì)83接口2重新初始化且用AD89模數(shù)轉(zhuǎn)換器采樣,不到則繼續(xù)七段數(shù)碼管顯示與LE燈和蜂鳴器的過(guò)程,循環(huán)以上。系統(tǒng)框圖如下:地址分配: 825 288 8253 0ADC 9h-29fDAC83 29h 重要芯片功能介紹:可編程并行接口825采取工作方式0,輸入控制字 88h,即A口輸出,C口高四位輸入,C口低四位輸出A0-PA6對(duì)應(yīng)接七段數(shù)碼管a d e f 接口,C P1對(duì)應(yīng)七段數(shù)碼管的

3、位碼接口C2PC3對(duì)應(yīng)黃紅ED燈,P接853計(jì)數(shù)器2的UT2端口可編程定時(shí)器/計(jì)數(shù)器(8253) 分別對(duì)823的計(jì)數(shù)器和計(jì)數(shù)器初始化采用方式3和方式,使計(jì)數(shù)器2產(chǎn)生每隔0 .秒的高電平3、DC009模數(shù)轉(zhuǎn)換器如圖虛線接線即可、A832數(shù)模轉(zhuǎn)換器DAC832是用于蜂鳴器報(bào)警的三、軟件設(shè)計(jì) 先對(duì)硬件8255 5進(jìn)行初始化且用AD809第一次采樣,通過(guò)8255的PC4端口查詢8253的定時(shí)時(shí)間是否已到,若到則對(duì)8253接口2重新初始化且用DC089模/數(shù)轉(zhuǎn)換器采樣,不到則繼續(xù)七段數(shù)碼管顯示與LED燈和蜂鳴器的過(guò)程,最后若有鍵按下則返回O,否則返回繼續(xù)查詢PC4端口、循環(huán).主程序流程圖:七段數(shù)碼管流程

4、圖 紅黃燈及蜂鳴器程序如下: mv c,huju p c,60 ;采樣得來(lái)的數(shù)據(jù)與30和60進(jìn)行比較,不在它們之間的紅黃燈、蜂鳴器報(bào)警 jnc li cp cl,30 jc xong p e l: oral,08h call eep jmp xiong: o l,04h call eeexit:mvdx,i85a ;通過(guò)8255端口輸出到LD燈 ou dx,a 采樣子程序ov b,0 mov,3 xun:mvdx,io00 out ,alpushcxmov c,FF ;延時(shí)dla1: lop elay1po c i al,dxmo ,0 odl,5 ;將采樣數(shù)據(jù)轉(zhuǎn)化為05之間的溫度值 mu d

5、l mvd,17 div dlmovah,0dd bx,x ;循環(huán)三次取樣ou mo ax,bx mv ,3iv cl;取三次數(shù)據(jù)后平均值 ovhju,al mov ah,0 ocl,10divc movdi,ofset bufer ;將采樣三次得出的均值的個(gè)位與十位分別存在buffer與uffer1中movdi,ahmov i+,l四、討論和感想 首先感受最深的的是匯編的基礎(chǔ)一定要扎實(shí),否則很容易出現(xiàn)低級(jí)錯(cuò)誤,比如說(shuō)一些死循環(huán)之類(lèi)的東西. 我們這組最開(kāi)始的時(shí)候連硬件檢測(cè)都沒(méi)做就直接執(zhí)行程序,當(dāng)然做不出什么來(lái)的。后來(lái)又入入續(xù)續(xù)發(fā)現(xiàn)了一些低級(jí)錯(cuò)誤,不過(guò)都一步步改正了.還有就是主程序一定要簡(jiǎn)潔易讀

6、,最好事先畫(huà)好流程圖。硬件不要頻繁初始化,最好是在程序開(kāi)頭就全部初始化完畢,像8255 8253一類(lèi). 為保證程序易讀、便于添加和修改,必要的注釋是很好的,子程序中最好開(kāi)頭和結(jié)尾對(duì)子程序中用到的寄存器都進(jìn)行入出棧操作,這能有效的防止一些低級(jí)錯(cuò)誤。以上是我碰到的問(wèn)題及其解決方法、心得體會(huì)五、源程序的清單: data sementooreq 0c400h080hio855aeu iopor+2ah ;8255口地址i82beq iop+28h ;25控制寄存器地址io255 euoport28h;25A口地址io0832a equ iopor+290hio8253aqu oport83h;82工作

7、方式控制寄存器地址io853buprt21h;計(jì)數(shù)器1io8253ceq irt+22h;計(jì)數(shù)器2o08 eu ioort+98h ;蜂鳴器e db 3,06h,5bh,4h,6,6h,7h,07h,fh,6fh ;段碼bufer1 d ,0 ;存放要顯示的十位和個(gè)位b d ? ;位碼data1 h,,,0,0,0, db ffh,0,0,0,0,0,0, d 80,0,0,,0,,,0 b 00h,0,0,0,0,;紅燈正弦波數(shù)據(jù)a2 db 80h,96,0aeh,c5,0d8h,0eh,05h,0fh db 0ffh,0fh,f5,09h,d8,0c5h,0h,96 d80,66h,4h,

8、38h,h,15h,09h,04 d00h,0h,h,5,25,8,eh,6h;黃燈正弦波數(shù)據(jù)suju b 0 ;存放采樣三次后的均值data escode segmentss c:coe,ds:datasrt: ov ,datamovds,amv dx,io8255b ;將855設(shè)為A口輸出 高4位輸入低四位輸出mov a,88h ot x,a moal,70h ;設(shè)825通道1工作方式0mvdx,85autx,al mvax,100 ;寫(xiě)入計(jì)數(shù)器初值200mov,o823odx,oal,hodx,l mvl,b6h ;設(shè)853通道工作方式3ovd,io53aoutd,al ox,100 ;

9、寫(xiě)入計(jì)數(shù)器初值50mvdx,io5coutx,alval,hutx,acall adcypadan: mv dx,io8255 ;從825的口輸入 n al,x al,0h z xinshi ;Pc不為1跳到顯示cal deaal acianshi: calldun push a ;LED燈與蜂鳴器程序段 us cx ph dx mv c,shuu cml,0 jnc i cmp cl,30 jc xong jmp ex i: r al,8h call beep jmpxitong: ora,04h cal eepexit: mov dx,io8255 outdx,a ppdx ppc pop

10、 x mov dx,0ffh mov ah,0int 21je panuan;有按鍵退出 否則循環(huán)moa,4ch ;返回int21iduan ronea ;七段數(shù)碼管子程序 ush dipus siuh bxush xpush dxm di,ofe bffe ;設(shè)di為顯示緩沖區(qū)loop2:mo bh,2lll: ov bte ptr bz,bhpushidec diadd di, bzm ,d ;bl為要顯示的數(shù)pp di mov al,0 ov dx,o855 out dx,a ov bh,0movsi,fst e ;置led數(shù)碼表偏移地址為SIad si,b ;求出對(duì)應(yīng)的le數(shù)碼mova

11、,byte ptr simov dx,i25c ;自85a的口輸出 ut dx,a mal,ye pt z ;使相應(yīng)的數(shù)碼管亮mv x,io8255a ;位選變化tdx,ov cx,3000ely2:loop dlay ;延時(shí) mov bh,byte ptr bz sr bh,1 jnz l p dx pop cxopbx pps pp di ret ;子程序返回qiuendpdcyrocnear ;D采樣子程序push apushbpush cxpushdpsh dmbx,0 mov x, xun: mov x,i080 out dx,apush cxmo ,0FFH ;延時(shí)dely1: l

12、oop deaypop cx in a,dxmo ah,0 mov dl,5 ul d ov l,17 i lm h, a x,ax ;循環(huán)三次取樣lu mv a,b mo c,3ivcl;取三次數(shù)據(jù)后平均值 mv hu,al oh,0 movcl,10di mov i,ofst buffer1mov di,ahmov di+1,alpoipo dxpxpp bxop axrdcy endpay pocearpusax ;825初始化pshdxmol,7h ;設(shè)853通道0工作方式dx,o825otd,a mvax,500 ;寫(xiě)入計(jì)數(shù)器初值50md,io8253utdx,lmoval,ahtx,al pdxoaxret ;子程序返回lay enpbeep pro er ;蜂鳴器子程序uh cxpsh push xps si mov cx,60 ;取0次32個(gè)正弦波數(shù)據(jù)dd:mov

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論