51单片机电风扇程序设计

51单片机电风扇程序设计

ID:44907973

大小:40.00 KB

页数:7页

时间:2019-11-04

51单片机电风扇程序设计_第1页
51单片机电风扇程序设计_第2页
51单片机电风扇程序设计_第3页
51单片机电风扇程序设计_第4页
51单片机电风扇程序设计_第5页
资源描述:

《51单片机电风扇程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#defineucharunsignedchar#defineuintunsignedint#defineoutP2ucharflag,count,n,m,x;//x是总开关标标志位,flag计数标志位,count变量:控制自动累加的时间长短,m档位标志位uchartemp0,temp1,temp2,temp3;//手动按键设置四个数码管的数值变量uchartl_temp,th_temp,tl1_temp,th1_temp;//中间变量ucharxz;//uints;//数码管显示的值//////////////////////////////

2、///////////////////////////////////////////////////////////////uintpwm1[3]={56536,49536,36536};uintpwm2[3]={56536,56536,56536};//这两个数组是为了给定时器1一个初值ucharzdm[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//数码管的字段码voidkeyscan1();//声明键盘扫描函数voiddispaly();//声明函数:选择挡位1,2,3三个档位voiddispaly1()

3、;//声明:功能赋值函数voiddelay();//声明延时voiddelay(){uchari,j;for(i=0;i<=10;i++)for(j=0;j<=120;j++);}//////////////////////////////延时程序voidkeyscan1(){if(P3_0==0){delay();if(P3_0==0){while(P3_0==0);flag++;if(flag==2)flag=0;}}///////////////////////////////当p3_0按下falg加1,flag=2时清0;功能:下面说明if(P1_4==0){delay(

4、);if(P1_4==0){while(P1_4==0);temp0++;if(temp0==10)temp0=0;}}if(P1_3==0){delay();if(P1_3==0){while(P1_3==0);temp1++;if(temp1==10)temp1=0;}}if(P1_2==0){delay();if(P1_2==0){while(P1_2==0);temp2++;if(temp2==10)temp2=0;}}if(P1_1==0){delay();if(P1_1==0){while(P1_1==0);temp3++;if(temp3==10)temp3=0;}

5、}///////////////////////////////按键调整四个数码管的调的数值if(P3_1==0){delay();if(P3_1==0)m=1;}if(P3_2==0){delay();if(P3_2==0)m=2;}if(P3_3==0){delay();if(P3_3==0)m=3;}/////////////////////////////////////按键控制三个档位if(P1_5==0){delay();if(P1_5==0){while(P1_5==0);x++;if(x==2)x=0;}}}////////////////////////////

6、///总开关voidtimer()interrupt1{TH0=0X3C;TL0=0XB0;count++;if(count==20){count=0;s++;temp3=s/1000;temp2=s%1000/100;temp1=s%100/10;temp0=s%10;}}///////////////////////////////////用定时器控制累加的时间间隔,s自加然后得出个十百千位的数值voiddispaly(){P0=zdm[s%10];P3=0x7f;delay();P3=0xff;P0=zdm[s%100/10];P3=0xbf;delay();P3=0xff

7、;P0=zdm[s%1000/100];P3=0xdf;delay();P3=0xff;P0=zdm[s/1000];P3=0xef;delay();P3=0xff;}//////////////////////////////数码管显示voiddisplay1(){if(m==1){tl_temp=pwm1[0]%256;th_temp=pwm1[0]/256;tl1_temp=pwm2[0]%256;th1_temp=pwm2[0]/256;}elseif(m==2){tl_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。