【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设计,视频分享,技术交流。

相关推荐
彭于晏Yan11 小时前
Redisson分布式锁
spring boot·redis·分布式
蓝凌y11 小时前
51单片机之外部中断
c语言·单片机·嵌入式硬件
冲,干,闯12 小时前
矩阵按钮部件
单片机
12.=0.13 小时前
【stm32_2.2】【快速入门】对GPIO解析、外设的初始化和配置、细节分析GPIO
stm32·单片机·嵌入式硬件
我是标同学13 小时前
单片机IO增强电流驱动能力的三极管几种接法
单片机·嵌入式硬件
心语星愿1113 小时前
STM32单片机高级篇-物联网通信之CAN通讯(学习笔记)
stm32·单片机·物联网
野犬寒鸦14 小时前
Redis复习记录day1
服务器·开发语言·数据库·redis·缓存
Nyarlathotep011314 小时前
Redis的内存回收和对象共享
redis·后端
野犬寒鸦16 小时前
Redis热点key问题解析与实战解决方案(附大厂实际方案讲解)
服务器·数据库·redis·后端·缓存·bootstrap
爱喝纯牛奶的柠檬16 小时前
【已验证】STM32+MPU6050 姿态解算 + 运动状态识别 + 四阶段摔倒检测
stm32·单片机·嵌入式硬件