当前位置: 首页 > wzjs >正文

网页设计网站链接怎么做郑州网站网页设计

网页设计网站链接怎么做,郑州网站网页设计,一个网站需要多少钱,2024年5月疫情大爆发基于51单片机小型风扇设计 (仿真+程序+原理图) 功能介绍 具体功能: 1.单片机控制直流电机(风扇)转动,风速分为4个等级; 2.数码管会显示风速等级; 3.按键可…

基于51单片机小型风扇设计

(仿真+程序+原理图)

功能介绍

具体功能:

1.单片机控制直流电机(风扇)转动,风速分为4个等级;

2.数码管会显示风速等级;

3.按键可以调整风速;

4.增加无线红外控制;

​演示视频:

基于51单片机小型风扇设计—红外遥控 

添加图片注释,不超过 140 字(可选)

硬件设计

使用元器件:

单片机:STC89C52;

(注意:单片机是通用的,无论51还是52、无论stc还是at都一样,引脚功能都一样。程序也是一样的。)

自锁开关;电解电容10uF;

电阻10K;瓷片电容30P;

晶振11.0592M;电解电容470uF;

瓷片电容104;电阻470(贴片);

LED(红发红);H1838红外接收;

按键;1位共阳数码管;

DIP40;DIP8;L9110;直流电机;

7*9CM 万能板;USB 公对公线;

M2螺丝配螺母;风扇叶;

扎带;铜柱配螺丝;

2P 排针;遥控器;

导线:若干;

程序

/********51单片机小型风扇设计(带遥控)***********
/***微信公众号:木子单片机****
**************风量:1,2,3,4个等级***************/#include <REGX52.H>  	//头文件
#define uchar unsigned char 
#define uint unsigned int/********定义IO端口********/
#define Key1 	P3_2	//调速按键(停止,1级风,2级风,3级风,4级风)
#define SMG_XS	P0		//数码管显示
#define IA		P2_5	//直流电机控制端口
#define IB		P2_4	//直流电机控制端口
#define IR1		P3_3	//红外接收端口
#define LED		P1_0	//定义接收指示灯uchar AddData=0;	//定义自增变量
uchar HeardData=0;  //定义接收到数据的高位变量
bit ExeFlag=0;      //定义可执行位变量
uchar flag=0;		//风量等级标志位(0:停止、1:1级风、2:2级风、3:3级风、4:4级风)uchar code Data[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//数码管     0	  1    2	3	 4	  5    6    7    8    9 void delay_anjian(uint time)	//延时去抖			
{uint x,y;for(x=time;x>0;x--)for(y=110;y>0;y--);		
}void Init()			//系统初始化
{
/***定时器工作方式**/TMOD=0x11;	//T0和T1:工作方式1EA=1;		//打开总开关/***定时器0初始化(红外)***/ET0=1;		//打开定时器0中断TH0=0xff;   //时间大约为25uS TL0=0x19;     TR0=1;      //同意开始定时器0PT0=1;		//T0高优先级/*定时器1初始化(产生PWM控制电机转速)*/	ET1=1;		//使能T1中断TH1=0xf8;	//定时2msTL1=0xcc;TR1=0;		//关闭定时器1/****外部中断1初始化******/EX1=1;    	//同意开启外部中断1IT1=1;     	//设定外部中断1为低边缘触发类型PX1=1;		//外部中断1 高优先级
}void Key_cl()			//按键处理
{if(Key1==0)			//调速按键按下{delay_anjian(5);//延时去抖if(Key1==0)		//再判断按键是否按下{while(Key1==0);	//等待按键松开flag++;			//风量等级标志位加1	if(flag==5) {flag=0;}//让flag值控制在0到4之间}	}
}void Out_cl()		//风量输出处理
{switch(flag) {case 0: SMG_XS=Data[flag]; IA=0; IB=0; TR1=0; break;	//停止case 1: SMG_XS=Data[flag]; TR1=1;		      break;	//1级风case 2:	SMG_XS=Data[flag]; TR1=1;			  break;	//2级风case 3:	SMG_XS=Data[flag]; TR1=1;			  break;	//3级风case 4: SMG_XS=Data[flag]; IA=1; IB=0; TR1=0; break;	//4级风default: break;}
}void IR1_cl()	//红外接收处理
{static uint i=3000;	//定义变量i=3000while(i--)			//i为0到3000之间的一段时间{ if(IR1==0)		//判断延时期间是否有红外信号输入{ExeFlag=1;	//将可执行标志位置1}}i=3000;				//i设置3000if(ExeFlag==0)		//判断可执行标志位{EX1=1;          //开启外部中断1}ExeFlag=0;          //可执行标志位置0	
}void main()			//主函数入口
{Init();			//系统初始化	while(1)		//主循环{IR1_cl();	//红外接收处理Key_cl();	//按键处理Out_cl();	//风量输出处理}
}void Time1() interrupt 3	//调速定时器1中断服务函数
{static uchar a=1;		//定义变量a=1TH1=0xf8;				//定时2msTL1=0xcc;switch (flag){case 1: if(a==1) {IA=1; IB=0;} else	 {IA=0; IB=0;} break;	//25%转(1级风)case 2: if(a<=2) {IA=1; IB=0;}else 	 {IA=0; IB=0;} break;	//50%转(2级风)case 3: if(a<=3) {IA=1; IB=0;} else     {IA=0; IB=0;} break;	//75%转(3级风)default:break;}a++;  	//a加1while(a==5) {a=1;}	//a保持在1到4之间
}void Timer0_IR1() interrupt 1 	//红外定时器0中断服务函数
{ TH0=0xff;	//时间大约为25uS       TL0=0x19;                         AddData++;	//自增变量加1
}void Int1_IR1() interrupt 2		//红外接收外部中断1服务函数
{static uint RecvData=0;		//定义接收红外数据变量static uchar CountData=0; 	//定义红外个数计数变量LED=1;                      //接收指示灯置1(熄灭)	if(4==AddData)//0         	//判断接收到的数据是0{RecvData=RecvData | 0;  //判断到0就将当前位写0RecvData=RecvData << 1; //将当前位向左移动1位}else if(8==AddData)//1      //判断接收到的数据是1{RecvData=RecvData | 1; 	//将当前位写1RecvData=RecvData << 1; //将当前位向左移动1位}CountData++;                //将红外接收位计数器加1if(CountData==8)            //判断是否接收到8位数据{HeardData=RecvData;     //是8位数据时,则将数据暂存到高位变量中}else if(CountData==16)      //判断是否接收到16位数据{ET0=0;                  //关闭红外定时器0EX1=0;                  //关闭红外外部中断1AddData=0;              //定时时间间隔变量清零if(HeardData==226 || HeardData==112)//判断用户码是否正确{ LED=0;             	//用户码正确,接收指示灯置0(点亮)HeardData=RecvData; //取出接收到的低八位数据switch(HeardData)  	//判断低八位数据的值下列那一位{case 32: //电源 	//说明按下了电源键{flag=0;			//风量等级标志位为0 (停止)		break;         	//返回}case 0: //1       	//说明按下数字1键{flag=1;			//风量等级标志位为1 (1级风)break;          //返回}case 8: //2         //说明按下了数字2键{flag=2;			//风量等级标志位为2 (2级风)break;          //返回}case 4: //3         //说明按下了数字3键{flag=3;			//风量等级标志位为3 (3级风)break;          //返回}case 12: //4        //说明按下了数字4键{flag=4;			//风量等级标志位为4 (4级风)break;         	//返回}}}
**//完整资料
***//***微信公众号:木子单片机****RecvData=0;		//将接收到的数据清零CountData=0;    //将接收计数器清零HeardData=0;    //将接收高低数据变量清零return;         //返回}AddData=0;          //将定时器计数器清零ET0=1;              //打开定时器0中断
}

添加图片注释,不超过 140 字(可选)

设计资料

01仿真图

本设计使用Proteus7.8和Proteus8.9两个版本设计!具体如图!

添加图片注释,不超过 140 字(可选)

02原理图

本系统原理图采用Altium Designer19设计,具体如图!

添加图片注释,不超过 140 字(可选)

03程序

本设计使用Keil5版本编程设计!具体如图!

添加图片注释,不超过 140 字(可选)

04设计资料

        资料获取请看前面演示视频,全部资料包括仿真源文件 、AD原理图、程序(含注释)、元件清单、实物图等。具体内容如下,全网最全! !

操作演示请观看前面演示视频!

点赞分享一起学习成长。

http://www.dtcms.com/wzjs/483879.html

相关文章:

  • 网站建设与维护专业百度视频下载
  • 建设网站运营方案百度推广哪家做的最好
  • 家具网站建设案例宁波seo网络推广报价
  • 做企业手机网站营销广告文案
  • phpcms网站后台搜索引擎营销的分类
  • 湖南平台网站建设公司云建站模板
  • 公安局网站建设方案黄页推广引流
  • java .net做网站东莞网站建设方案外包
  • 一个做网站的团队需要哪些跨境电商网站
  • 网站优化的方式有哪些石家庄谷歌seo公司
  • 网站建设连接数据库宁波网络营销有哪些
  • 用vs2010做网站登入重庆网站推广联系方式
  • 南京哪家做电商网站百度服务中心投诉
  • 鄂尔多斯 网站建设百度识图网页版入口
  • android什么意思百度seo搜索
  • 做问卷调查哪个网站好友情链接也称为
  • 做网站教学视频seo技术优化技巧
  • 网站做链接的意义是什么意思品牌策略怎么写
  • 需要做网站的行业百度销售系统登录
  • 自己架设网站服务器怎么收录网站
  • html5集团网站个人网站注册平台
  • 天津艺匠做网站怎么样电商平台哪个最好最可靠
  • 太原企业建站系统企业邮箱登录入口
  • 东营建设银行电话号码博客网站seo
  • unn建站郑州百度推广开户
  • 做国际网站要多少钱网络推广公司联系方式
  • 可喜安cms系统seo公司哪家好
  • 深圳建设网官方网站鹤壁搜索引擎优化
  • 招人在哪个网站比较好找最新今日头条
  • wordpress页面访问量台州seo排名公司