微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 模拟电风扇控制系统设计

模拟电风扇控制系统设计

时间:11-25 来源:互联网 点击:

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

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

源程序清单(部分):

#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;
}
}

。。。。。

。。。。。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top