• 大小: 8KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-11
  • 语言: 其他
  • 标签: 源代码  C程序  code  

资源简介

#ifndef _SENSOR_H #define _SENSOR_H extern unsigned char xdata SOCAPI_TouchStatus; extern unsigned char xdata ConfirmTouchCnt; extern unsigned char xdata SetTkcfg1; extern unsigned char xdata SetTkcfg2; extern unsigned char xdata SetTkcfg3; extern unsigned int xdata RawData[]; extern unsigned int xdata BaseLine[]; extern unsigned int xdata FilterData[];

资源截图

代码片段和文件信息

//************************************************************
// 文件名称 : main.c
// 作者 : jay_lee
// 模块功能 : 
//  最后更正日期:
//  版本 :
//  更改记录 :
// 更改版本 :  V1.0  2018-1-22 
//*************************************************************
#include “h\STC15F.h“
#include “lib\Sensor.h“  
#include    “h\data_type.h“

//#define   _sif_debug_
#ifdef _sif_debug_
#include “sif\sif_bus.h“
#endif

//******************宏定义**********************//
#define     WAITMODE     0   //等待模式
#define     TRACKFREQ    1   //自动追频
#define     STRATMODE    2   //工作模式
#define     STOPMODE     3   //停机模式
#define     MAXGEAR      4   //调整功率模式
 
#define  ON       1
#define  OFF     0

#define     FAN          P34
#define  LED_R      P35
#define  LED_G      P36 

INT8U   code  EE_Data[4]={0000};      //清除EEPROM的空间
INT8U WorkMode=0KeyCount=0Power_Gear=0;


#define  CH_INITIAL_DIFF      668 //检测通道与参考通道的初始差值 千分比
#define  WATERThresholdtmp    1300 //检测通道有无水差值完全覆盖2580 
#define  WATERCHECK_SPEED     20 //水位检测的速度,确认次数 


INT8U  timer1msCount=0;
INT8U  timer10msCnt=0;
INT8U  timer100msCnt=0;
bit    btime100ms=0;
bit    btimer10ms;     //10ms标志
bit    timer1msFlag=0;
bit    KeyStaus=0;
bit    openflag=0;
bit    High_flag=0;
bit    TrackFreqStartFlag=0;
INT16U Adc_Temp=0;
bit    Timer1sFlag=0;
INT8U   Power_Gear;

void StartWork(void)
{
WDTCR |=0x10; // 清狗
if((Water_flag == 0))
{
WorkMode = STOPMODE; //停机模式
}  
}

void  StopWork(void)
{
P13=OFF; 
ENPWM=0;
LED_G=OFF;
LED_R=ON;
FAN=OFF;
Power_Gear=0;
    EA=0;
while(1)
{
   WDTCR |=0x10; // 清狗
}
}



void  ModeChoose(void)
{
while(!Timer1sFlag)
{
   Adc_Temp= Adc_Convert();
   if(Adc_Temp>950)
   {
       High_flag=1;
   }
   if(High_flag==1)
   {
     if(Adc_Temp<750)   
 {
    TrackFreqStartFlag=1;
 }
   } 
   WDTCR |=0x10; // 清狗       
   if(SOCAPI_TouchKeyStatus&0x80) // Bit7:一轮按键扫描是否完成?
   {
SOCAPI_TouchKeyStatus&=0x7f; // 清掉 Bit7:一轮扫描完成标志
TouchKeyScan();
SOCAPI_WaterLevelDetector();
TouchKeyRestart();
   }
   if(btime100ms==1)
   {
btime100ms=0;
LED_G=~LED_G;
LED_R=~LED_R;
   }      
}
Timer1sFlag=0;
LED_R=OFF;
btime100ms=0;

if(Water_flag==1)
{
if((TrackFreqStartFlag==1))
{
WorkMode = TRACKFREQ;   
SOCAPI_AtomizerSetPower(20);
    SOCAPI_TrackFreq_Init();    
}
else
{
  if(SOCAPI_GetTrackFreqStaus()==1)
{
SOCAPI_SetFreq();
WorkMode = STRATMODE;        //进入工作模式
TouchKeyInit();                    //触摸按键初始化
LED_G=ON;    //正常工作指示灯
}
else
{  
LED_G=OFF;
ENPWM=0;
while(1)
{
WDTCR |=0x10; // 清狗
if(btime100ms==1)
{
btime100ms=0;
LED_R   = ~LED_R;
}     
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1123  2018-10-09 19:17  data_type.h
     文件        6991  2018-10-09 19:26  main.c
     文件        1160  2018-10-09 19:27  Sensor.h
     文件        7243  2018-10-09 19:26  STC15F.H
     文件        4785  2018-10-09 19:21  TouchCFG.h

评论

共有 条评论