標題:
請各位大神看看智能輸液監(jiān)控系統(tǒng)的程序哪錯了
[打印本頁]
作者:
莫西干沒喜感
時間:
2017-4-5 16:59
標題:
請各位大神看看智能輸液監(jiān)控系統(tǒng)的程序哪錯了
各位大神看看我做的智能輸液監(jiān)控系統(tǒng)的程序哪錯了?現(xiàn)在還沒加控制電機模塊,只用顯示出檢測到的液滴滴速就行。但是在
proteus
中
仿真
顯示器沒反應(yīng)怎么回事
;滴速定時5s得出的T1計數(shù)值再乘以12就是1分鐘的滴數(shù),可是為什么不顯示呢?
DS:
MOV TMOD , #51H;定時器T0定時方式一,T1計數(shù)方式一(01010001)
MOV TL0 , #0B0H
MOV TH0 , #3CH;置50ms初值
MOV 20H , #100;設(shè)置循環(huán)次數(shù)100,100*50ms=5s
MOV TH1 , #00H
MOV TL0 , #000H
MOV 21H , #0
MOV 22H , #0;存放采集到的數(shù)據(jù)
SETB TR1;啟動T1
SETB TR0;啟動T0
WAIT: AJMP WAIT;等待中斷
RET
T0INT: ;定時5s產(chǎn)生中斷
DJNZ 20H , NEXT1
CLR TR1;關(guān)閉T1
CLR TR0;關(guān)閉T0
MOV 21H , TL1
MOV 22H , TH1
ACALL DISPLAY
AJMP EXIT
NEXT1: MOV TL0 , #0B0H
MOV TH0 , #3CH;繼續(xù)定時
EXIT: RETI;顯示
DISPLAY:
MOV A , 21H;取5s計數(shù)值
MOV B , #10;16進制轉(zhuǎn)換為10進制
DIV AB;A/B的商存入A,余數(shù)存入B
MOV R1 , A;R1存放十位數(shù)
MOV R2 , B;R2存放個位數(shù)
ADD B , R2;相當(dāng)于B*2
MOV R2 , B
ADD B , R2;相當(dāng)于B*4
MOV R2 , B
ADD B , R2;相當(dāng)于B*8
ADD B , R2;相當(dāng)于B*12
ADDC A , R1;相當(dāng)于A*2
MOV R1 , A
ADDC A , R1;相當(dāng)于A*4
MOV R1 , A
ADDC A , R1;相當(dāng)于A*8
ADDC A , R1;相當(dāng)于A*12
MOV R1 , A;此時R1存放以分為單位的十位數(shù)
MOV R2 , B;此時R2存放以分為單位的個位數(shù)
MOV R3 , #50;設(shè)導(dǎo)通頻率為50
LOOP1:MOV A , R2;取個位數(shù)
ACALL CHANG;調(diào)用顯示
CLR P2.1;開個位顯示
ACALL DLY10ms;調(diào)用延時10ms程序
SETB P2.1;開關(guān)個位顯示
MOV A , R1;取十位數(shù)
ACALL CHANG;調(diào)用顯示
CLR P2.0;開十位顯示
ACALL DLY10ms;調(diào)用延時10ms程序
SETB P2.0;開關(guān)十位顯示
RET
CHANG:MOVC A , @A+DPTR;取表子程序
MOV P0 , A
RET
DLY10ms:
MOV R6 , #20
D1:
MOV R7 , #248
DJNZ R7 , $
DJNZ R6 , D1
RET;延時返回
TABLE:DB 0C0H,0F9H,0A4H,0B0H
DB 99H,92H,82H,0F8H
DB 80H,90H,88H,83H
DB 0C6H,0A1H,86H,8EH
RET;液位
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1