用M8与LM2576制作可调数控开关电源 (本文转自我爱方案网论坛) 电源的输出电压从0-30V,电流1.5A(设计3A) 输出电流保护0-3A连续调整 输出电流分两档0-300mA,0-3A 电源的输入电压从12-35V(电源输入电压决定电源的最高输出电压,这是一个降压开关电源。) 这是不同输入输出电压电流下电源效率 文件名:效率 这个制作存的一个问题:当电源的输出电压大于 9V时,电源关闭后(LM2576第五脚 TTL电平)不能重新启动,它与负载大小没有关系,不知什么原因,只要不关闭全程调压正常。我把这个不完善的制作发表,希望与网友们共同研究。 源程序我整理好后会放上来 这是原理图 文件名: Schematic M8 文件名: Schematic Lm2576 下面回复说是原理图不清楚,现在补发一下原理图: 这是完成后的样子 文件名: DSCF3691-1 可热转印的电路板 文件名: DSCF3692-1 这是实验系统 文件名: DSCF3695-1 文件名: DSCF3696-1 这是源代码: '/////////////////////////////////////////////////////////////////////////////// '/ / '/ 用M8与 LM2576制作可调数控开关电源 / '/ 输出电压 0-30V / '/ 最大输出电流 3.0A / '/ 截止型过电流保护 0-3.0A 连续调节 / '/////////////////////////////////////////////////////////////////////////////// $regfile = "m8def.dat" $crystal = 8000000 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.0 , Rs = Portd.2 Config Lcd = 16 * 2 '定义LED是16字符,2行 Config Adc = Single , Prescaler = Auto , Reference = Internal '定义ADC为单次运行模式,转换时钟-自动,内部参考电压 Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Prescale = 1 'PWM1A配置,用于数模转换, Ddrb.1 = 1 'PWM1A输出端子 '定义所需要变量 //////////////////////////////////////////////////////////////// Dim V_dc As Long , V_dc1 As Long , A_dc As Long , A_dc1 As Long Dim V1_dc As Word , V2_dc As Word Dim A1_dc As Word , A2_dc As Word , A As Word , C As Word , A1 As Word Dim V1 As String * 5 Dim V2 As String * 5 Dim V3 As String * 5 Dim V4 As...