微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 交流稳压电源模拟采样stc单片机程序

交流稳压电源模拟采样stc单片机程序

时间:12-02 来源:互联网 点击:
采用STC12C2052单片机自带的ad做的 程序如下:

;==自制作全自动交流稳压电源控制线路板程序=
P1M0 EQU 91H ;端口设置寄存器
P1M1 EQU 92H ;端口设置寄存器
AK EQU 0C5H ;A/D转换控制寄存器
ADATA EQU 0C6H ;保存转换数据的高8位
ADATAD EQU 0BEH ;保存转换数据的低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 ;设置端口为A/D模式
MOV P1M1,#4H ;设置端口为A/D模式
MOV ADATA,#00H
MOV AK,#80H ;打开A/D电源
;==================================================
MOV AK,#0E2H ;选择通道P1。2为A/D输入端
;==================================================
LOOP_22: ORL Ak,#08H ;启动转换
LOOP_0: MOV A,#10H
ANL A,AK ;判断是否转换完成
JZ LOOP_0
;================================================
ANL AK,#0E7H ;把标志位清零
MOV A,ADATA
CALL DDD ;调用调压服务子程序
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
;======稳压控制程序================================
LOOP_44:CJNE A,#00B,LOOP_55
NOP
NOP
NOP
CLR P1.4
CALL T2MS
CLR P1.5
CALL T2MS
LOOP_55: RET
;=======延时子程序=========================
T2MS: MOV TH0,#0FCH
MOV TL0,#17H
SETB TR0
JNB TF0,$
CLR TF0
DJNZ 65H,T2MS
RET
;=============================================
END

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top