>
首页 » 技术文章 » 智能仪器电源的MCU控制程序设计

智能仪器电源的MCU控制程序设计

作者:申文达 刘海云   时间:2006-11-27 11:17  来源:电子设计信息网-www.edires.net
摘要: 本文介绍了一种仪器仪表电源供电程序的设计方法,提供了硬件框图及软件程序。

关键词: 电源;程序设计;单片机

为了给仪器仪表提供可靠的供电电源,作者设计了一种双电源。仪器仪表正常工作的时候由220V交流电提供电源;当交流电突然断电时,立即启动内部的直流电源为其供电,从而使该仪器仪表能继续工作。

1 硬件框图及其功能简介
以AT89C52为核心的系统框图如图1所示。该仪器的电源主要由220V交流电经过整流稳压电路输出6V直流电为MCU供电,供电的同时可以选择是否为仪器内置的备用电源(4节5号充电电池)充电。图中K为机械开关,当交流供电时, K断开,检测电路输出DCAC=1,面板上的“交流”指示灯亮。当仪器在工作中突然掉电时, 发出报警声, ALARM = 1。此时立即启动备用电源, K闭合,检测电路输出DCAC=0,面板上的“电池”指示灯亮。在备用电源供电的情况下,如果交流电220V又重新恢复,则K断开,DCAC=1,“交流”指示灯亮,“电池”指示灯灭,不发报警声,ALARM=0。

图1 系统框图

另外,在仪器工作的同时,备用电源是否充电由CHARGE来控制。当电池电压小于某个参数值时,CHARGE=1,开始充电,“充电”灯亮。它还可以对备用电源的充电时间进行控制,对其输出电压进行检测,随时进行报警提示,以保证仪器的可靠工作。

2 流程图及其源程序
主程序主要包括对各个模块的初始化和对各个存储器单元置初值等。其中针对电源的控制部分包括初始化记录交流直流转换的标志单元C_DCAC和C_DCAC1,以及调用电源管理子程序。该子程序的扫描时间由定时器中断服务子程序来完成,在这里,只画出电源管理子程序的流程图如图2所示。

图2 电源管理程序流程图

源程序:
DCAC B ITP1. 4 ;交流供电与直流供电检测位 接收到1表示交流供电
CHARGE B ITP1. 5;充电标志位 接收到1 表示可以开始充电
DC_TOL DATA37H;充电定时器单元
DC_TOH DATA38H
D E1 DATA9AH;电池欠压判断值单元,
C_DCAC DATA9DH;记录DCAC的状态, 0—电池, 1—交流
C_DCAC1DATA9EH ;记录上一次值的临时单元
ALARMB ITP2. 4 ;报警信号, 1表示响
LAC B ITP2. 5 ;交流指示灯输出, 1表示亮
LDC B ITP2. 6 ;备用电源指示灯输出, 1表示亮
LCHARGEB ITP2. 7 ;充电标志指示灯输出, 1表示亮
......

;主程序
ORG 0100H
MAN: MOV SP, #63H ;设置堆栈指针
.......
MOV TMOD, #21H ;计数器方式控制寄存器,计数器0为
方式1 (16位计数器)
MOV TL0, #9BH ; 0. 1ms产生1次中断
MOV TH0, #0FFH ; (12MHz)
SETB TR0
SETB ET0
SETB EA ;允许中断
.......
MOM R0, #C DCAC ;设置标志单元和临时单元初始值为零
MOV A, #00H
MOV @R0,A
MOV R0, #C DCAC1
MOV A, #00H
MOV @R0,A
.......
LCALL BATTERY ;电源工作程序
.......
; T0中断服务程序
PIT0: .......
MOV TL0, #9BH
MOV TH0, #0FFH ; (晶振12MHz) 0. 1ms溢出中断一次
.......
PIT01: ACALL KEY ;调用键盘子程序
.......
RETI
;电源管理子程序
BATTERY: .......
BAT_G: JNB DCAC,BAT_ A ;如果为电池供电,则转移
MOV R0, #C_ DCAC
MOV @R0, #01H
SETB LAC ;交流灯亮
CLR LDC ;电池灯灭
CLR LCHARGE ;充电灯灭
AJMP BAT B
BAT_A: MOV R0, #C_DCAC
MOV @R0, #00H
SETB LDC ;电池灯亮
CLR LAC ;交流灯灭
CLR LCHARGE ;充电灯灭
BAT_B: MOV R0, #C_DCAC ;判断是交流掉电了吗?
MOV A, @R0
MOV R1, #C DCAC1
CLR C;
SUBB A, @R1
JNC BAT_B1 ;如果是电池供电,则转移
SETB ALARM
.......
BAT_B1: ...... ;读电池电压的AD值,来进行比较
BAT_E: MOV R0, #C_DCAC
MOV R1, #C_DCAC1
MOV A, @R0
MOV @R1,A
RET

根据交流掉电启用备用电源时要报警,而当交流恢复供电时不报警的实际要求,在程序设计时,用一个标志单元CDCAC和一个临时单元CDCAC1的内容来判断仪器仪表是否交流掉电、是否报警。

此MCU的电源控制系统设计实用可靠,程序全部用汇编语言编写,实时性强。该设计已经成功地用在智能医疗仪器(如:智能输液泵)中,对于其他智能仪器的开发也有借鉴的作用。

相关推荐

Vicor 推出隔离式、稳压 DC-DC 模块的全新低功耗 DCM2322 系列

产品与技术 2019-10-14

Vicor 启动产品国产化,服务本土客户再升级

产品与技术 2019-08-16

飞兆半导体:“不停产”产品和终身供应政策

飞兆半导体  电源  2013-11-29

触底反弹 光伏业走进春天?

光伏  电源  2013-11-26

电子变压器的技术创新之路该如何走?

电源  电子变压器  2013-11-13

中国电子填补国内空白 攻克电源技术难点

电源  智能监控  2013-07-22
在线研讨会
焦点