基于89C52單片機(jī)的實(shí)用八路物位測(cè)量?jī)x的設(shè)計(jì)
其中顯示部分程序如下:
DISP: MOV R0,#20H ;R0指向顯示緩沖區(qū)首地址
MOV R1,#01H
MOV R3,#08H
LOOP3: MOV a,@R0
MOV R4,A ;顯示緩沖區(qū)數(shù)據(jù)送R4
MOV A,R1
lCALL WRITE ;數(shù)據(jù)鎖存到273
INC R1
INC R0
DJNZ R3,LOOP3
3.3 采樣處理子程序
調(diào)試過的部分源代碼如下:
LOOP: MOV A,#0FH ;主程序循環(huán)開始
MOV P0,A ;先查詢P0口,讀取射線計(jì)數(shù)
MOV A,P0
XCH A,PQ
XRL A,PQ
MOV B,A
JB B.0,JIA1 ;第1路有計(jì)數(shù),跳至加1程序
JIA10:JB B.1,JIA2 ;第2路有計(jì)數(shù),跳至加1程序
JIA20:JB B.2,JIA3 ;…..
JIA30:JB B.3,JIA4
JIA40:JB B.4,JIA5
JIA50:JB B.5,JIA6
JIA60:JB B.6,JIA7
JIA70:JB B.7,JIA8 ;第8路有計(jì)數(shù),跳至加1程序
LJMP LOOP01 ;接著處理鍵盤的查詢
3.4主程序部分流程圖
主程序流程圖見圖3
圖3 主程序流程圖
4 結(jié)束語
本設(shè)計(jì)的創(chuàng)新點(diǎn)在于充分利用了AT89C52的硬件資源,實(shí)現(xiàn)了軟件計(jì)數(shù)器,能夠?qū)γ}沖量信號(hào)所反映的物位信號(hào)通過數(shù)碼管來顯示,顯示部分的處理采用Max7219顯示驅(qū)動(dòng)器,與軟件編程相結(jié)合,大大節(jié)約了硬件資源,減少了通用的單片機(jī)擴(kuò)展芯片,降低了成本。本儀表投入生產(chǎn)后成本比用其它方式組成的系統(tǒng)節(jié)約直接硬件成本每臺(tái)約300元,投產(chǎn)后產(chǎn)生年經(jīng)濟(jì)效益約60萬元(按每套儀表利潤(rùn)0.8萬元計(jì))。
參考文獻(xiàn):
[1].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
[2].Max7219datasheethttp://www.dzsc.com/datasheet/Max7219_1019200.html.
[3].AT89C52 datasheethttp://www.dzsc.com/datasheet/AT89C52+_1064535.html.
[4].MCS-51datasheethttp://www.dzsc.com/datasheet/MCS-51_477840.html.
[5].74LS273datasheethttp://www.dzsc.com/datasheet/74LS273_588907.html.
評(píng)論