交流穩(wěn)壓電源模擬采樣stc單片機(jī)程序
;==自制作全自動(dòng)交流穩(wěn)壓電源控制線路板程序=
P1M0 EQU 91H ;端口設(shè)置寄存器
P1M1 EQU 92H ;端口設(shè)置寄存器
AK EQU 0C5H ;A/D轉(zhuǎn)換控制寄存器
ADATA EQU 0C6H ;保存轉(zhuǎn)換數(shù)據(jù)的高8位
ADATAD EQU 0BEH ;保存轉(zhuǎn)換數(shù)據(jù)的低2位
ORG 00H
JMP MAIN
;====================================== MAIN: MOV P1,#00H
MOV P3,#00H
MOV TMOD,#01H
MOV TH0,#0FCH
MOV TL0,#17H
MOV 8EH,#00H
MOV PCON,#00H
MOV P1,#00H
MOV P3,#0FFH
MOV P1M0,#4H ;設(shè)置端口為A/D模式
MOV P1M1,#4H ;設(shè)置端口為A/D模式
MOV ADATA,#00H
MOV AK,#80H ;打開A/D電源
;==================================================
MOV AK,#0E2H ;選擇通道P1。2為A/D輸入端
;==================================================
LOOP_22: ORL Ak,#08H ;啟動(dòng)轉(zhuǎn)換
LOOP_0: MOV A,#10H
ANL A,AK ;判斷是否轉(zhuǎn)換完成
JZ LOOP_0
;================================================
ANL AK,#0E7H ;把標(biāo)志位清零
MOV A,ADATA
CALL DDD ;調(diào)用調(diào)壓服務(wù)子程序
JMP MAIN
;=======降壓控制程序=============================
DDD:
MOV R2,#0011B
XRL A,R2
CJNE A,#0010B,LOOP_11
NOP
NOP
NOP
SETB P1.4
CALL T2MS
CLR P1.5
CALL T2MS
;========升壓控制程序=============================
LOOP_11:CJNE A,#0100B,LOOP_66
NOP
NOP
NOP
SETB P1.5
CALL T2MS
CLR P1.4
CALL T2MS
;========降壓控制程序==============================
LOOP_66:CJNE A,#0001B,LOOP_33
NOP
NOP
NOP
SETB P1.4
CALL T2MS
CLR P1.5
CALL T2MS
;=======升壓控制程序================================
LOOP_33:CJNE A,#0110B,LOOP_44
NOP
NOP
NOP
SETB P1.5
CALL T2MS
CLR P1.4
CALL T2MS
;======穩(wěn)壓控制程序================================
LOOP_44:CJNE A,#00B,LOOP_55
NOP
NOP
NOP
CLR P1.4
CALL T2MS
CLR P1.5
CALL T2MS
LOOP_55: RET
;=======延時(shí)子程序=========================
T2MS: MOV TH0,#0FCH
MOV TL0,#17H
SETB TR0
JNB TF0,$
CLR TF0
DJNZ 65H,T2MS
RET
;=============================================
END
評(píng)論