【51单片机】【protues仿真】基于51单片机数控直流稳压电源系统

目录

一、主要功能

二、使用步骤

三、硬件资源

四、软件设计

五、实验现象

一、主要功能

1、数码管显示输出电压值

2、滑动电阻调节输出电压

3、电压输出范围0-15V,步进值1

二、使用步骤

基于51单片机的数控直流稳压电源是一种通过数字控制实现电压调节的智能化电源系统,其核心设计结合了单片机控制、D/A转换、稳压电路。

三、硬件资源

1、51单片机核心模块

2、按键模块

3、数模转换模块

4、放大电路模块

5、模数转换模块

6、数码管显示模块

四、软件设计

#include<reg51.h>

#include<absacc.h>

#define dac0832 XBYTE[0X7fff]

unsigned char code shu[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

float s;

sbit ALE=P3^0;

sbit START=P3^1;

sbit EOC=P3^2;

sbit OE=P3^3;

sbit SHCP=P2^0;

sbit DS=P2^1;

sbit STCP=P2^2;

sbit P11=P3^5;

sbit P12=P3^7;

sbit clk=P2^6;

unsigned char j,k,m,n,i,a;

unsigned int b;

void delay(unsigned char t)

{ while(t--);

}

void display()

{

j=0x01;

for(i=0;i<8;i++)

{ if((shu[m]&j)==0)

{ DS=0;}

else {DS=1;}

SHCP=1;

SHCP=0;

j<<=1;

}

P12=0;

P11=1;

STCP=0;

STCP=1;

delay(200);

j=0x01;

for(i=0;i<8;i++)

{ if((shu[n]&j)==0)

{ DS=0;}

else {DS=1;}

SHCP=1;

SHCP=0;

j<<=1;

}

P11=0;

P12=1;

STCP=0;

STCP=1;

delay(200);

}

void main()

{

P2=0X87;

TMOD=0X20;

TH1=0X06;

TL1=0X06;

EA=1;

ET1=1;

TR1=1;

while(1)

{

ALE=1;

ALE=0;

START=1;

START=0;

while(EOC==0);

OE=1;

k=P1;

a=P1;

b=a*6;

m=b/1000;

n=b%1000/100;

dac0832=k;

display();

}

}

五、实验现象

演示视频:

相关推荐
星夜夏空994 小时前
STM32单片机学习(32) —— ADC
stm32·单片机·学习
芯岭技术郦6 小时前
批量不到1元,芯岭技术集成 2.4G 射频32 位 MCU 与 USB2.0的超低功耗 SoC XL2417U
单片机·嵌入式硬件·射频工程
少年、潜行8 小时前
【开源】基于STM32的无线姿态检测仪设计
stm32·嵌入式硬件·开源·姿态检测仪
枕星而眠8 小时前
数据结构八大排序详解(一):四大简单排序
c语言·数据结构·c++·后端
努力努力再努力wz9 小时前
【Qt入门系列】:按钮组件全解析:从 QAbstractButton 到快捷键事件、单选与复选机制
c语言·开发语言·数据结构·c++·git·qt·github
三品吉他手会点灯10 小时前
STM32F103 学习笔记-22-DMA(第1节)-DMA功能框图讲解和DMA初始化结构体讲解
笔记·stm32·单片机·嵌入式硬件·学习
陌上花开缓缓归以12 小时前
定时器和延时函数选型
单片机
华普微HOPERF12 小时前
电视冰箱洗衣机、空调风扇热水器,Matter协议如何塑造全屋智能?
嵌入式硬件·物联网·智能家居·matter协议·全屋智能
老花眼猫12 小时前
数学艺术图案画-曼陀罗单色版(4)
c语言·经验分享·青少年编程·课程设计
我命由我1234512 小时前
C++ - 面向对象 - 常成员函数
android·java·linux·c语言·开发语言·c++·算法