标题:
带粗细小调的单片机数控直流电源proteus仿真与源程序
[打印本页]
作者:
m2478085531
时间:
2018-4-18 22:23
标题:
带粗细小调的单片机数控直流电源proteus仿真与源程序
具有粗细小调功能的数控制流电源proteus仿真原理图如下:
0.png
(23.45 KB, 下载次数: 38)
下载附件
2018-4-19 03:06 上传
0.png
(23.32 KB, 下载次数: 31)
下载附件
2018-4-19 03:07 上传
单片机源码:
#include<reg52.h>
#include<intrins.h>
typedef unsigned char u8;
typedef unsigned int u16;
#define shumag P2
#define gongy P1
sbit CLK=P0^0;
sbit CS=P0^1;
sbit DIN=P0^2;
sbit q1=P0^3;
sbit an1=P0^4;
sbit an2=P0^5;
sbit ad1=P0^6;
sbit ad2=P0^7;
sbit dp=P2^7;
unsigned char code dofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
// 显示段码值0~9
unsigned char TempData[3];//存储显示值的全局变量
u16 a=0;
void init_timer()
{
TMOD=0X01;
TH0=0XD8;
TL0=0XF0;
EA=1;
ET0=1;
TR0=1;
}
void delay(u16 i)
{
while(i--);
}
void display()
{
shumag=dofly_DuanMa[a/100%10];
gongy=0;
delay(30);
gongy=6;
shumag=dofly_DuanMa[a/10%10];
gongy=1;
dp=1;
delay(30);
gongy=6;
shumag=dofly_DuanMa[a%10];
gongy=2;
delay(30);
gongy=6;
}
void qingling()
{
while(q1==0)
a=0;
}
void xiaojia()
{
if(an1==0)
{
if(a<100)
a++;
}
while(an1==0);
}
void xiaojian()
{
if(an2==0)
if(a>0)
a--;
while(an2==0);
}
void dajia()
{
if(ad1==0)
if(a<=90)
a=a+10;
while(ad1==0);
}
void dajian()
{
if(ad2==0)
if(a>=10)
a=a-10;
while(ad2==0);
}
void DAC_conver(u16 DAValue)
{
u8 i;
CS=0;
CLK=0;
DAValue=DAValue<<2;
for(i=0;i<12;i++)
{
DIN=(bit)(DAValue&0x800);
CLK=1;
DAValue<<=1;
CLK=0;
}
CS=1;
CLK=0;
}
float DA_int(float k)
{
float DA;
DA=k*1024*1.0/500;
return DA;
}
void main()
{
init_timer();
while(1)
{
float m=0;
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
keil程序.rar
(43.97 KB, 下载次数: 49)
2018-4-18 22:28 上传
点击文件名下载附件
下载积分: 黑币 -5
仿真.rar
(41.82 KB, 下载次数: 47)
2018-4-18 22:24 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
真的很麻烦
时间:
2019-4-27 22:51
先感谢再说了~~~~
作者:
cw111
时间:
2019-5-8 15:27
请问怎么没有电源模块
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1