刚学习AVR时,我就想从作一件实用的设备开始,这样即学习了单片机,又得到一件作品,电源是每一个实验都离不开的设备,所以就从电源作起。
LM317是一个各项指标都优秀的线性稳压电路,用它制作的稳压电源电压调整率、负载调率都很高,另外它的保护功能均很完善。用M8去控制它可得到一个电压从0一20V,最大电流1.5A的稳压电源。
基本原理,用M8的PWM作数模转换,经过两级RC滤波后得到0一5V的控制电压,PWM是用M8的定时器1来实现的,有10位的分辨能力,控制电压从0一5V分1024步进行,这个控制电压经过运放U3A放大后得到-1.25V一18.75V的控制电压到LM317的调整端,实现电压的调整,输出电压
Uout=Uu3a十1.25V
Uout 电源输出电压,Uu3a运放U3A的输出电压
为了降低功耗电源的输入电压由继电器K1切换,当输出电压<=9V时K1切换到12V ,输出电压>9V时切换到24V。
这种线性稳压电源损耗比较大,LM317的散热用了一个P3 CPU散热器和风扇,由M8计算当LM317上的功耗大于4W时启动风扇工作,这样可降低噪声和延长风扇的使用寿命,我作过测试,采用这种散热方式,在各电压范围内均可连续满负荷工作。
电源设置有一个截止型电流保护,由软件控制,调节范围0一1.5A ,我们可跟据自已实验内容来设置这个保护值,当输出电流大于这个设定保护值时,电源关闭输出电压为0V ,并产生声音报警。为了使用方便,初始值为最大输出电流1.500A 。
参数如下:
/ 输出电压 0-20V 连续调节 /
'/ 最大输出电流 1.5A /
'/ 截止型过电流保护 0-1.5A 连续调节
电源的的工作状态如图所示
电源的启动工作状态:
电源的停止关闭状态:
电源的过电流保护状态说明:
按键S1作为电源输出的启动、停止开关,按一下开,再按一下关。S2、S3调节输出电压的加减,S4、S5调节输出电流的保护值,这四个按键开关均有步进调节、连续调节和按下一定时间后快速调节功能。
电源的调整,调节R16使LCD显示电压与电源输出电压一致。调节R20使LCD显示电流与输出电流一致。
电路板上还有一个通讯接口,要加电平转换的,有时间我会作一个上位机软件来实现电源更多功能。
程序是用BASCCOM-AVR写的,我把原程序放上,是为了大家能把它作的更好。
实验用0一20V数控电源,程序升级,具体看源程序注释.
注意下载时把EEPROM存储器文件DC04.EEP也下载到单片机.
升级后程序部分截图: