新闻中心

EEPW首页>嵌入式系统>设计应用> 模拟电风扇控制系统设计

模拟电风扇控制系统设计

作者: 时间:2016-11-25 来源:网络 收藏

本次设计的模拟电风扇控制系统设计有三种风种:自然风、常风、睡眠风

本文引用地址://m.amcfsurvey.com/article/201611/321319.htm

它们都是按照电机运行的占空比区别的。具有倒计时和摇头功能及信号指示。

源程序清单(部分):

#include //52头文件
#define uchar unsigned char//宏定义
#define uint unsigned int //宏定义

sbit Ziran = P1^0; sbit Chang = P1^1;
sbit Shuimian = P1^2; sbit zuo_yao= P1^3;
sbit you_yao = P1^4; sbit dianji1= P1^7;
sbit yaotou_light=P3^7; sbit key0 = P3^0;

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
uchar Flash_Count=0,num,shi,ge,
flag=0,shijian,bai,Yao_Tou,bb,kaidingshi,dianji2;
uint aa=0;



void delay(uint i)//延时20uS
{
uint x,a;
for(x=i;x>0;x--)
for(a=10;a>0;a--);

}
void delay11(uint z)//自然风,延时2秒
{
uint x,y,a;
for(x=z;x>0;x--)
for(y=1000;y>0;y--)
for(a=110;a>0;a--)
{if(flag!=1) break;}
}
void delay22(uint z)//常风,延时2秒
{
uint x,y,a;
for(x=z;x>0;x--)
for(y=1000;y>0;y--)
for(a=110;a>0;a--)
{if(flag!=2) break;}
}void delay33(uint z)//睡眠风,延时2秒
{
uint x,y,a;
for(x=z;x>0;x--)
for(y=1000;y>0;y--)
for(a=110;a>0;a--)
{if(flag!=3) break;}
}
//
//
//
void zhuang_tai()
{
switch(flag)
{
case 1:
{
Ziran=1;//自然风占空比为1:3
dianji1=1;
delay11(1);
Ziran=0;
dianji1=0;
delay11(3);
}break;
case 2:
{
Chang=1;//常占空比为3:1
dianji1=1;
delay22(3);
Chang=0;
dianji1=0;
delay22(1);
}break;

case 3:
{
Shuimian=1;//睡眠风占空比为1:5
dianji1=1;
delay33(1);
Shuimian=0;
dianji1=0;
delay33(5);
} break;
}
}

。。。。。

。。。。。



评论


技术专区

关闭