我是一初學(xué)者,正在頭破血流的學(xué)習(xí)為了能夠讓自己填飽肚子的(單片機(jī)),現(xiàn)試圖修改一些程序來提高自己,卻遇到一難題。以下程序我想把他修改成無過流采樣次數(shù)及無過流次數(shù)到轉(zhuǎn)報(bào)警程序時(shí),卻怎么也不成功。我試過刪除 INC 3AH ,3BH, 3CH.或增加 DEC 3AH, 3BH, 3CH;蚋淖兘^對(duì)轉(zhuǎn)移命令...等等。都達(dá)不到要求,只有來請(qǐng)大俠高手門來指點(diǎn)迷津。謝謝
程序如下: 沒關(guān)聯(lián)的程序沒有寫上來
MOV 3AH,#00H ;關(guān)門過流采樣次數(shù)清零
MOV 3BH,#00H ;開門過流采樣次數(shù)清零
MOV 3CH,#00H
、、、、、、、、、、、、、、、、、、、、、、、
CLOSE: CLR TR0
CLR 03H
CLR P1.3
SETB P1.4 ;電機(jī)反轉(zhuǎn),關(guān)門
CLOSEKH: SETB P3.4 ;P3.4輸出高脈沖
ACALL DELY
JB P3.6,CLKK ;關(guān)門過程中遇到阻力(過流)嗎?沒有,轉(zhuǎn)CLKk
INC 3AH ;過流采樣次數(shù)加1
ACALL CLKKK
JNB 04H,CLKK1 ;確實(shí)過流嗎?不是,轉(zhuǎn)CLKK1
INC 3CH ;非正常過流次數(shù)加1
AJMP CLKK2 ;確實(shí)過流,轉(zhuǎn)反向開門程序CLKK2
CLKK: MOV 3AH,#00H
CLKK1: JB P3.2,CLKH ;有人接近門感應(yīng)器嗎?沒有,轉(zhuǎn)CLKH
CLKK2: MOV 3AH,#00H
ACALL OPENPP ;有人接近門感應(yīng)器,或關(guān)門過程中遇到阻力,調(diào)用OPENPP開門判斷處理子程序
MOV A,3CH
CJNE A,#03H,CLKK3 ;非正常過流已經(jīng)3次嗎?否,轉(zhuǎn)CLKK3
AJMP ALARM ;非正常過流已經(jīng)3次,轉(zhuǎn)停車報(bào)警子程序
CLKK3: AJMP MAIN1
、、、、、、、、、、、、、、、、、、、、、、、、、、、、
CLSLOWH: ;關(guān)門慢速高電平程序
SETB P3.4 ;P3.4輸出高電平
ACALL DELY
JB P3.6,CLKK5 ;關(guān)門過程中遇到阻力(過流)嗎?沒有,轉(zhuǎn)CLKk5
INC 3AH ;過流采樣次數(shù)加1
ACALL CLKKK
JNB 04H,CLKK6
INC 3CH
AJMP CLKK7
CLKK5: MOV 3AH,#00H
CLKK6: JB P3.2,CLMH ;有人接近門感應(yīng)器嗎?沒有,轉(zhuǎn)CLMH
CLKK7: MOV 3AH,#00H
ACALL OPENPP ;有人接近門感應(yīng)器,或關(guān)門過程中遇到阻力,調(diào)用OPENPP開門判斷處理子程序
MOV A,3CH
CJNE A,#03H,CLKK8
AJMP ALARM
、、、、、、、、、、、、、、、、、、、、、、、、、
OPKKK: MOV A,3BH ;開門過流判斷子程序
CJNE A,#20,NOOVERO
MOV 3BH,#00H
SETB 05H
AJMP OVEROP
NOOVERO: CLR 05H ;過流標(biāo)志清零
OVEROP: RET
、、、、、、、、、、、、、、、、
ALARM: CLR P1.3 停車報(bào)警子程序
CLR P1.4
CLR P3.4
CLR P3.7
MOV 3CH,#00H
AJMP $
END
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |