全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 控制/MCU >

基于STM32单片机的智能雨刷器设计

时间:2024-06-27 10:26

人气:

作者:admin

标签: 单片机  STM32  控制 

导读:智能雨刷器系统使用STM32单片机进行主控,通过显示屏显示雨量,系统有自动和手动两种模式,根据设定的阈值可以在自动模式下进行雨刷控制,手动模式下也可以通过按键进行雨刷器的...

一.系统概

智能雨刷器系统使用STM32单片机进行主控,通过显示屏显示雨量,系统有自动和手动两种模式,根据设定的阈值可以在自动模式下进行雨刷控制,手动模式下也可以通过按键进行雨刷器的控制,按键还可以进行雨量阈值的设定。

eb255382-3426-11ef-a4c8-92fbcf53809c.jpg

二.仿真概述

1. 默认情况下是手动模式,手动灯亮起

eb64f6ae-3426-11ef-a4c8-92fbcf53809c.jpg

2. 通过按键调节雨刷器的档位,单位档位有90度和180度

eb900a74-3426-11ef-a4c8-92fbcf53809c.jpg

3. 按下手动/自动切换按键,切换到自动模式下

ebb6c042-3426-11ef-a4c8-92fbcf53809c.jpg

4. 调节雨滴量,当雨滴量超过设定阈值就会自动启动雨刷器

ebd6e23c-3426-11ef-a4c8-92fbcf53809c.jpg

三.程序设计


 
int main(void)
{  
 
  while(1)
  {    
 
    u8 key0flag,key1flag,key2flag,key3flag;//按键标志
 
    
    Rain= PCF8591_ADC_Input(0x90,0)/3;//雨滴检测
    
 
    
    if(KEY0 == 0)  
    {  
      delay_ms(75);     
      if(KEY0 == 0)  
      {  
        key0flag =1;
        W=~W;        
      }   
      else 
      {
        key0flag =0;
        W=W;
      }
    }
    if(KEY1 == 0)  
    {  
      delay_ms(75); 
      if(KEY1 == 0) 
      {
        key1flag =1;
        M=~M;  
      }
    }
    if(KEY2 == 0)  {  delay_ms(100); if(KEY2 == 0) RainMax = RainMax+20;  }
    
    if(KEY3 == 0)  
    {  
      delay_ms(100); 
      if(KEY3 == 0) 
      {
        i++;
        if(i>3)
        {
          i=0;
        }
      }  
    }
    
    
    //
    if(W)//开
    {
      write_str(12,1,(u8*)"ON ");//开
      write_str(6,0,(u8*)"D");//档位
      write_str(0,0,(u8*)"R");//雨滴
      write_str(3,0,(u8*)"H");//阈值
      write_str(9,0,(u8*)"M");//模式
      write_num(0,1,Rain);
      write_num(3,1,RainMax);  
      
      if(M)//自动
      {
        write_str(9,1,(u8*)"Z");//模式
        Led1_2=0;
        delay_ms(100);
        Led1_1=1;
        
        if(Rain>80)
        {
          write_str(6,1,(u8*)"3");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(10);
          Motor_Rhythm_418(2,40);
        }
        else if(Rain>60) 
        {
          write_str(6,1,(u8*)"2");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(500);
          Motor_Rhythm_418(2,40);
        }
        else if(Rain>40)
        {
          write_str(6,1,(u8*)"1");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(1000);
          Motor_Rhythm_418(2,40);
        }  
        else if(Rain<40)
        {
          write_str(6,1,(u8*)"0");//档位
          Motor_Rhythm_418(0,0);
        }
      }
      
      else//手动
      {
        write_str(9,1,(u8*)"S");//模式
        Led1_1=0;
        delay_ms(100);
        Led1_2=1;
        
        if(i==0)
        {
          write_str(6,1,(u8*)"0");//档位
          Motor_Rhythm_418(0,0);
        }
        if(i==1)
        {
          write_str(6,1,(u8*)"1");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(1000);
          Motor_Rhythm_418(2,40);
        }
        if(i==2)
        {
          write_str(6,1,(u8*)"2");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(500);
          Motor_Rhythm_418(2,40);
        }
        if(i==3)
        {
          write_str(6,1,(u8*)"3");//档位
          Motor_Rhythm_418(4,40);
          delay_ms(10);
          Motor_Rhythm_418(2,40);
        }
        
      }
    }
    
    
    else//关
    {
      write_str(0,1,(u8*)"           ");//状态
      write_str(0,0,(u8*)"           ");//状态
      write_str(12,1,(u8*)"OFF");//关  
      write_str(12,0,(u8*)"W");//状态
      Motor_Rhythm_418(0,0);
    }
 
  
  }   
}
 
 

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信