当前位置:   article > 正文

基于TLC5615的多路可调数控直流稳压电源,51单片机,含Proteus仿真和C代码等_proteus仿真电源芯片

proteus仿真电源芯片

设计要求

  1. 5V单电源工作;
  2. 电压输出范围为基准输入电压2倍,本设计调节范围为:0V~3.9V;
  3. 电压调整精度达0.02%;
  4. 两种调压方式:自动模式和手动模式;
  5. 3路电压输出通道,且可分别单独控制;
  6. 当电压超出设定范围时,自动报警;

TLC5615简介
TLC5615是带有缓冲基准输入(高阻抗)的10位电压输出数字-模拟转换器(DAC),DAC具有基准电压两倍的输出电压范围,且DAC是单调变化的。器件使用简单,用单5V电源工作。
基准电压VREFIN = VCC * [ R8/(R7+R8) ]
基准电压VREFIN = VCC * [ R8/(R7+R8) ]

系统概述
多路可调TLC5615数控直流电源由51单片机最小系统,3路TLC5615电压数模转换电路、数码管显示模块、4*4矩阵键盘和报警模块组成。
在这里插入图片描述
自动模式
单片机控制3路直流电压输出,数码管实时显示当前路数以及该路输出的电压值,按键控制路数的切换和电压大小的设定,报警模块则监测输出电压是否超出最高设定值(3.9V)。

数字量通过矩阵键盘输入后,经TLC5615数模芯片转换,输出模拟量直流电压,电压调整范围为0.1V。

当设定值大于3.9V时,报警模块LED灯点亮,同时数码管显示0.0,提示重新修改输入值。

手动模式
将某一路开关SW打至左边,则该路电压的输出由滑动变阻器控制。

手动模式下,电压输出不再受51单片机、数模转换芯片和矩阵键盘的控制。整个电压输出电路由滑动变阻器、运算放大器和PNP三极管组成。

系统仿真电路图
在这里插入图片描述
在这里插入图片描述
仿真结果分析

  1. 通过矩阵键盘,设置第2路通道的输出电压为2.8V,结果如下。
    在这里插入图片描述
    在这里插入图片描述
  2. 当键盘设定电压输出值为4.2V(大于3.9V)时,按下确认键后,数码管显示0.0,LED报警灯点亮,电压实际输出为0.02V≈0V。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 点击SW2,将开关打至左边,此时电压的输出由滑动变阻器控制,不再由单片机控制,本例中输出电压为1.95V。
    在这里插入图片描述
    部分C代码
void main(void)				 //主程序
{  
//	timer0_init();			//初始化定时器0
	while(1)
	{ 
		key_scan();			//调用键盘扫描函数
		TLC5615_DA_1(val_1);	//处理键盘发送过来的值
		TLC5615_DA_2(val_2);
		TLC5615_DA_3(val_3);
		switch(choice_flag)
		{
			case 1 : display(Vol_1+num_1-1);	break;
			case 2 : display(Vol_2+num_2-1);	break;
			case 3 : display(Vol_3+num_3-1);	break;
		}
		

	} 
}

void timer0_isr(void)  interrupt 1       	// timer0中断服务函数
{
                         					//数码管的位选变量
	TR0 = 0;                       		 	//停止计数
	TL0 = (65536-5000)%256;					//重新载入计数器初值
	TH0 = (65536-5000)/256; 
                              	//位循环变量加1
	if(cp >= 4)
		cp = 0; 
	switch(choice_flag)
	{
		case 1:    deal(val_1);break;
		case 2 :   deal(val_2);break;
		case 3:    deal(val_3);break;
	}
	
//	deal(5698);                       //循环显示1次,j清零
   	TR0 = 1;
//	deal(val_1);
//	delay(100);
	P0=0xff;  //与j对应,P2输出数码管的位选信号
	switch(cp)
	{
		case 0: P0 = 0xc1;break;   	
		case 1: P0 = LED[shi];break;   	
		case 2: P0 = LED[bai]&0x7f;break;
//		case 3: P0 = 0xbf;break; 	
		case 3: P0 = LED[choice_flag];break; 
	} 
	P2 = Bit_sel[cp]; 
	cp++;  	
}  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52

分享的资源有

(1)C程序 ;

(2)Proteus仿真文件 ;

(3)TLC5615芯片手册 ;

(4)程序设计流程图;

全套资源如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
获取多路可调TLC5615数控直流稳压电源系统设计,Proteus仿真、C程序、Visio流程图、TLC5615等参考资料。

请微信搜索关注我的公众号:交院小智

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/712306
推荐阅读
相关标签
  

闽ICP备14008679号