• 大小: 100KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-22
  • 语言: 其他
  • 标签: 51  单片机  电风扇  

资源简介

电风扇模拟控制系统设计 包括要求和代码。仅供参考!!!~~

资源截图

代码片段和文件信息

/********************************************************************
* 文件名  : monidianfengshan.c
* 描述    :  该文件实现对电风扇的功能的模拟,可定时,摇头,三种风种选择
* 创建人  : 侯伟玉,2010年5月6日
***********************************************************************/
#include
#include
#define uchar unsigned char
#define uint unsigned int 

sbit pwm=P3^0;   //脉宽调制输出
sbit in=P3^6;   //H桥的输入1
sbit out=P3^7;   //H桥的输入2

uchar code tab[]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};  //数码管的显示代码
uchar value=0; //用于装按键返回值
uchar tempnumflag=2; //flag为正反转标志位
uchar  buff[2]={00};  //装定时的秒的十位和各位
uchar yao=0;
bit fan;
void delay(uchar y);
void delay1(uchar x);
uchar scan();
void dingshi(uchar zhi);
void display();
/********************************************************************
* 名称 : delay()
* 功能 : 长延时
* 输入 : y
* 输出 : 无
***********************************************************************/
void delay(uchar y)//长延时,用于消抖
{
   uchar ij;
   for(i=0;i   for(j=0;j<110;j++);
}
/********************************************************************
* 名称 : delay1()
* 功能 : 短暂延时,用于动态扫描数码管
* 输入 : x
* 输出 : 无
***********************************************************************/
void delay1(uchar x)   
{
  uchar ij;
  for(i=0;i  for(j=0;j<110;j++);


}
/********************************************************************
* 名称 : scan()
* 功能 : 计算按键值
* 输入 : 无
* 输出 : i+4*j
***********************************************************************/
uchar scan() //键盘扫描返回值计算
{
  uchar ij;
  uchar tem;
  uchar code buf[]={0xef0xdf0xbf0x7f};  //列扫描码
 
          for(j=0;j<4;j++) //先给每一列赋值
              {
               P1=buf[j];
                _nop_();
             _nop_();
             _nop_();
                tem=0x01;
          for(i=0;i<4;i++)    //再从每一行读取值,看看哪一行按键被按下
         {
         if(!(P1&tem)) //发现被按下的行
     {


     return(i+4*j);  //返回按键值

        }

      tem=tem<<1;
      }
       }
}
/********************************************************************
* 名称 : display()
* 功能 : 数码管显示,显示风种,定时时间
* 输入 : 无
* 输出 : 无
***********************************************************************/
void display()   
{
  static uchar gao;
   
   if(value==1|value==2|value==3)    //先设置定时,再选取吹哪种风
  { 
   gao=value;  
      
  }
   P2=0;
   P0=tab[gao];       
   delay1(10);
   P2=1;
   P0=tab[0];
   delay1(10);
   P2=2;
   P0=tab[buff[0]];   //显示秒的十位
   delay1(10);
   P2=3;
   P0=tab[buff[1]];   //显示秒的个位
   delay1(10);
}
/********************************************************************
* 名称 : main()
* 功能 : 主函数
* 输入 : 无
* 输出 : 无
***********************************************************************/
void main()
{
  uchar guan;
  TMOD=0x11;
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;   
  IT0=0;
  IT1=1;
  TR0=1;
  ET0=1;
  EX0=1;
  EX1=1;
  EA=1;
  pwm=0; //先关掉直流电机 
          while(1)
         

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      72704  2010-05-02 21:24  模拟电风扇\2009天华杯单片机设计样题.doc

     文件     136543  2010-05-06 23:10  模拟电风扇\Last Loaded 模拟风扇.DBK

     文件       9307  2010-05-09 13:18  模拟电风扇\monidianfengshan

     文件       5879  2010-05-09 13:58  模拟电风扇\monidianfengshan.c

     文件       2231  2010-05-09 13:18  模拟电风扇\monidianfengshan.hex

     文件         80  2010-05-09 13:18  模拟电风扇\monidianfengshan.lnp

     文件      12202  2010-05-09 13:18  模拟电风扇\monidianfengshan.LST

     文件      14747  2010-05-09 13:18  模拟电风扇\monidianfengshan.M51

     文件      10030  2010-05-09 13:18  模拟电风扇\monidianfengshan.OBJ

    .......      1063  2010-05-09 19:39  模拟电风扇\monidianfengshan.opt.bak

     文件        160  2010-09-19 20:51  模拟电风扇\monidianfengshan.plg

    .......      2209  2010-05-04 20:41  模拟电风扇\monidianfengshan.Uv2.bak

    .......     56186  2010-09-19 20:51  模拟电风扇\monidianfengshan.uvopt

    .......     13459  2010-09-19 20:51  模拟电风扇\monidianfengshan.uvproj

     文件       1066  2010-05-09 13:58  模拟电风扇\monidianfengshan_Opt.Bak

     文件       2205  2010-05-04 12:54  模拟电风扇\monidianfengshan_Uv2.Bak

     文件       6376  2005-03-22 15:22  模拟电风扇\STARTUP.A51

     文件      14055  2010-05-07 23:13  模拟电风扇\STARTUP.LST

     文件        749  2010-05-07 23:13  模拟电风扇\STARTUP.OBJ

    ..AD...         0  2010-09-19 20:51  模拟电风扇

----------- ---------  ---------- -----  ----

               361251                    20


评论

共有 条评论