⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 project_1.c.bak_smart_update

📁 我在开发CC2500和CC1100时就用了SmartRF Studio调试软硬件,很好用的,我可以做出兼容chipcon的SmartRF 硬件,不知道有没人有兴趣?
💻 BAK_SMART_UPDATE
字号:
/** ###################################################################
**     Filename  : Project_1.C
**     Project   : Project_1
**     Processor : MC9S08QD4CPC
**     Version   : Driver 01.11
**     Compiler  : CodeWarrior HCS08 C Compiler
**     Date/Time : 2008-2-18, 10:06
**     Abstract  :
**         Main module.
**         Here is to be placed user's code.
**     Settings  :
**     Contents  :
**         No public methods
**
**     (c) Copyright UNIS, spol. s r.o. 1997-2006
**     UNIS, spol. s r.o.
**     Jundrovska 33
**     624 00 Brno
**     Czech Republic
**     http      : www.processorexpert.com
**     mail      : info@processorexpert.com
** ###################################################################*/
/* MODULE Project_1 */


/* Including used modules for compiling procedure */
#include "Cpu.h"
#include "AD1.h"
#include "Bit1.h"
#include "Bit2.h"
#include "WDog1.h"
/* Include shared modules, which are used for whole project */
#include "PE_Types.h"
#include "PE_Error.h"
#include "PE_Const.h"
#include "IO_Map.h"

/**************************************************************************
const unsigned char CoolAD = 0x7F;      //06年9月19日:由0x7C改回原值0x7F
//const unsigned char HotAD = 0x81;       //06年9月19日:由0x7F改回原值0x81
const unsigned char HotAD = 0x82;       //07年1月20日:改至0x82
//const unsigned char WarmAD = 0x3F; //for daewoo
const unsigned char WarnAD = 0x10;
**************************************************************************/ 
const unsigned char HotWarnAD = 0x4E;    //220度报警设定 07-12-07
//const unsigned char HotWarnDisableAD = 0x7F;
const unsigned char WarmWarnAD = 0x82;   //90度报警设定  07-12-07
//const unsigned char WarmWarnDisableAD = 0x49;
const unsigned char ShortCircuitAD = 0x10; //短路判定    07-12-07



/* 为防止探头由于短路造成的误报警,程序初始时,检测探头是否处于
   短路状态(假设初始上电,探头温度小于报警温度),正常工作时,如果
   探头温度有突变(上一次没有报警,这一次探头电阻很小),那么也认为探头短路.为避免探头短路后,430欧姆电阻
   由于电流过大,容易烧毁,所以将其变更为1K欧姆电阻 李亮 07年11月23日 
*/




/*
void Wait5ms(void){
  unsigned char  Temp;
  TPMMODH = 0x1;
  TPMMODL = 0xD1;
  TPMSC = 0x35;
  TPMSC = 0x05;
  TPMMODH = 0x1;
  TPMMODL = 0xD1;
  do{
    __RESET_WATCHDOG();
  }while(TPMSC_TOF == 0);
  Temp = TPMSC;
  TPMSC_TOF = 0;
  TPMSC_TOIE = 1; 
}
*/
void Wait5ms(void){
  unsigned char  Temp;
  for(Temp = 1; Temp < 50; Temp++){
    
    __RESET_WATCHDOG();
  }  
}

void main(void)
{
  /* Write your local variable definition here */
  unsigned char ADValue1, ADValue2;
  unsigned char ADValue3, ADValue4;
  unsigned char Disable1, Disable2;
  unsigned char Disable3, Disable4;
  unsigned char OldValue1, OldValue2;
  unsigned char OldValue3, OldValue4;
  unsigned char WarnEnable;
  unsigned char  i;
  word ADValue[4];   /* Sum of measured values */
  
  /*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
  PE_low_level_init(); 



  /*** End of Processor Expert internal initialization.                    ***/

  /* Write your code here */
  /* For example: for(;;) { } */
  for(i = 1; i < 200; i++){
    Wait5ms();
    __RESET_WATCHDOG();
  }
  
  OldValue1 = 0xFF;
  OldValue2 = 0xFF;
  OldValue3 = 0xFF;
  OldValue4 = 0xFF;
  Disable1 = 0;
  Disable2 = 0;
  Disable3 = 0;
  Disable4 = 0;
  
  /*** Don't write any code pass this line, or it will be deleted during code generation. ***/
  /*** Processor Expert end of main routine. DON'T MODIFY THIS CODE!!! ***/
  for(;;)
  {
    __RESET_WATCHDOG(); /* feeds the dog */
    
    Cpu_Delay100US(10);
    do{
      ;
    }while(AD1_MeasureChan(1,0) == 0) ;
    do{
      ;
    }while(AD1_MeasureChan(1,1) == 0) ;
    do{
      ;
    }while(AD1_MeasureChan(1,2) == 0) ;
    do{
      ;
    }while(AD1_MeasureChan(1,3) == 0) ;
    
    do{
      ;
    }while(AD1_GetValue16(ADValue) == 0) ;
    
    ADValue1= (byte)ADValue[0];
    ADValue1= (byte)ADValue[1];
    ADValue1= (byte)ADValue[2];
    ADValue1= (byte)ADValue[3];
    
    WarnEnable = 0;
    if(Disable1 == 0){
      if(ADValue1 < ShortCircuitAD && OldValue1 > HotWarnAD)
      {
        Disable1 = 1;
      }else if(ADValue1 < HotWarnAD)
      {
        WarnEnable = 1; 
      }
    }
    if(Disable2 == 0){
      if(ADValue2 < ShortCircuitAD && OldValue2 > HotWarnAD)
      {
        Disable2 = 1;
      }else if(ADValue2 < HotWarnAD)
      {
        WarnEnable = 1; 
      }
    }
    if(Disable3 == 0){
      if(ADValue3 < ShortCircuitAD && OldValue3 > WarmWarnAD)
      {
        Disable3 = 1;
      }else if(ADValue3 < WarmWarnAD)
      {
        WarnEnable = 1; 
      }
    }
    
    if(Disable4 == 0){
      if(ADValue4 < ShortCircuitAD && OldValue4 > WarmWarnAD)
      {
        Disable4 = 1;
      }else if(ADValue4 < WarmWarnAD)
      {
        WarnEnable = 1; 
      }
    }    
    
           
    if(WarnEnable == 1){
      Bit1_PutVal(1);      
    }else{
      Bit1_PutVal(0);
    }

    OldValue1 = ADValue1;
    OldValue2 = ADValue2;
    OldValue3 = ADValue3;
    OldValue4 = ADValue4;
  
  }
  /*** Processor Expert end of main routine. DON'T WRITE CODE BELOW!!! ***/
} /*** End of main routine. DO NOT MODIFY THIS TEXT!!! ***/

/* END Project_1 */
/*
** ###################################################################
**
**     This file was created by UNIS Processor Expert 3.00 [03.89]
**     for the Freescale HCS08 series of microcontrollers.
**
** ###################################################################
*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -