云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 微孔雾化片单片机自动调整中心频率原理图和软件

微孔雾化片单片机自动调整中心频率原理图和软件

  • 62 次阅读
  • 3 次下载
  • 2025/6/16 20:08:08

/****************扫频函数************* FileName:Frepuecy_Sweep.c ProjectName: FunctionDesc: CreateDate: Version: Author:

ModifyHistory: Remark:

5ms执行一次

*****************包含头文件**********************/ #include \#include \

#include \#include \

/*****************定义全局变量*******************/

/*****************声明全局变量*******************/ extern bit B_Moistrue;

extern u8 r_adc1,r_adc2,r_adc3; bit B_SF_OK;//是否已经扫过频标志

/*******************定义常量*********************/ #define PWM1_DUTY_MIN 3u #define PWM1_DUTY_MAX 253u #define PWM1_CURRENT_MIN 10u //#define M1_Stop_500ms_Set_Value 100u

/*****************IO口重定义*********************/ /*******************函数定义*********************/ /*******************Frepuecy_Sweep function******/

//扫频思路:求取AD值最大的5的占空比的值取最小值做为中心频率可抗四次大的干扰 void Frequency_Sweep(void) {

static uint8_t PWM1_Duty,Temp1,Temp2,Temp3; static uint8_t PWM1_Duty_OK; if(B_Moistrue) { if(B_SF_OK == 0) //扫频位完成 { if (PWM1_Duty < PWM1_DUTY_MAX) //加暂空比 { PWM1_Duty++; PWM1_Duty_Update(PWM1_Duty); Temp3 = Temp2;

电流

}

Temp2 = Temp1; if(r_adc1 < r_adc2) { Temp1 = r_adc1; r_adc1 = r_adc2; r_adc2 = Temp1; }

if(r_adc2 < r_adc3) { Temp1 = r_adc2; r_adc2 = r_adc3; r_adc3 = Temp1; }

if(r_adc1 < r_adc2) { Temp1 = r_adc1; r_adc1 = r_adc2; r_adc2 = Temp1; //三个数排大小,r_adc2为中间值

}

Temp1 = r_adc2; if(Temp3 >= Temp2) { if(Temp2 >= Temp1) //连续递减

{ if(Temp1 < Temp3) // 并且第1次比第3次大

{

if( Temp1 >= PWM1_CURRENT_MIN ) //并且都有一定

{

PWM1_Duty_OK = (PWM1_Duty-2); B_SF_OK = 1; } } } } } else { if(B_SF_OK == 0) //没扫到重来 { PWM1_Duty = 3; } }

}

else { static uint8_t Tempa; Tempa++; if(Tempa == 1) PWM1_Duty_Update(PWM1_Duty_OK+1); else if(Tempa == 2) PWM1_Duty_Update(PWM1_Duty_OK+2); else { Tempa = 0; PWM1_Duty_Update(PWM1_Duty_OK); } } } else { B_SF_OK = 0; PWM1_Duty_OK = PWM1_DUTY_MIN; PWM1_Duty_Update(PWM1_DUTY_MIN); PWM1_Duty = PWM1_DUTY_MIN; Temp1 = 0; Temp2 = 0; Temp3 = 0; }

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

/****************扫频函数************* FileName:Frepuecy_Sweep.c ProjectName: FunctionDesc: CreateDate: Version: Author: ModifyHistory: Remark: 5ms执行一次 *****************包含头文件**********************/ #include \#include \#include \#include \/*****************定义全局变量*******************/ /*****************声明全局变量**

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com