【Proteus仿真】【51单片机】数控稳压可调电源设计

文章目录


一、功能简介

本项目使用Proteus8仿真51单片机控制器,使用动态数码管、按键、PCF8591 AD/DAC、LM358放大电路模块等。

主要功能:

系统运行后,系统默认输出直流5V,数码管显示输出电压值。可通过按键K1和K2调节电源输出值,步进为0.1V;按下K3键可直接输出5V。系统最大输出0-10V。


二、软件设计

c 复制代码
/*
作者:嗨小易(QQ:3443792007)

*/


//系统数据设定
void sys_data_set(void)
{
	u8 key=0;

	key=key_scan(0);
	//加
	if(key==KEY1_PRESS)
	{
		sys_ctrl.vol+=2;//0.1V步进
		if(sys_ctrl.vol>200)sys_ctrl.vol=200;		
	}
	//减
	else if(key==KEY2_PRESS)
	{
		if(sys_ctrl.vol>=2)
			sys_ctrl.vol-=2;//0.1V步进		
	}
	//5V输出
	else if(key==KEY3_PRESS)
	{
		sys_ctrl.vol=100;	
	}
	
	//DAC输出
	pcf8591_set_dac_out(sys_ctrl.vol);
}

//系统数据显示
void sys_data_show(void)
{
	u8 buf[4];
	u8 temp=sys_ctrl.vol/2;
	while(1)
	{
		//数码管显示输出电压
		buf[0]=gsmg_code[temp/100];
		buf[1]=gsmg_code[temp%100/10]|0x80;
		buf[2]=gsmg_code[temp%100%10];
		buf[3]=0X3E;//U
		smg_display(buf,1);

		break;				
	}
}


//应用控制系统
void appdemo_show(void)
{
	sys_parm_init();//系统参数初始化
	
	while(1)
	{
		sys_data_set();//系统数据设定
		sys_data_show();//系统数据显示			
	}
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619



联系作者

视频地址:https://space.bilibili.com/444388619/video

专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

相关推荐
写后端的胖头鱼1 小时前
一文详解Cache Aside(旁路缓存模式)
redis·缓存·延迟双删·缓存一致
我叫洋洋1 小时前
Cadence CIS 元器件库合并实战:3000+ 焊盘、156 个符号零冲突并入自有库
数据库·单片机·嵌入式硬件·oracle·电路
Web3&Basketball2 小时前
用FastAPI+Redis 复刻常驻Agent
redis·bootstrap·fastapi
ebiobiz3 小时前
极海 APM32 使用 Nimmake 编译指南
c++·python·单片机·嵌入式硬件·mcu
小神兵4 小时前
对电压源与电流源的的简单理解
单片机·嵌入式硬件·物联网
comyccccc5 小时前
三极管与MOS管工作原理全解析学习笔记
单片机·嵌入式硬件
ly76896 小时前
Redis 主从复制全解析:从 PSYNC 协议到复制积压缓冲区的故障切换边界
java·数据库·redis·主从复制·故障切换·psync
FPGA小徐6 小时前
运放电路:负载必须接地时,如何做电流采样(浮地负载 vs 接地负载)
单片机·嵌入式硬件
hweiyu007 小时前
Redis命令:HPEXPIREAT
redis·缓存
女神下凡8 小时前
芯参谋(37):EEPROM_电路设计指南
arm开发·单片机·嵌入式硬件·fpga开发·设计规范