• 大小: 248KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: 其他
  • 标签: STC  

资源简介

STC15系列工控程序带485通讯+Modbus协议 消防电气控制装置程序案例,根据工程师程序例程修改,不敢私藏,拿出来供大家参考,再次感谢中协电子杜威。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 

#define XBYTE ((unsigned char volatile xdata*)0)
#define VER 140
//===============================================================================

void insi(void);
void RstWDOG(void);
void LoadDefault(void);
void cyzs(void);
void check(void);
void CheckBound(void) ;
void Communication(void);
void modbus11(void);
unsigned int CRCCheck(unsigned char * puchMsg unsigned char usDataLen);
bit TstBit(unsigned char xdata *pointunsigned char num);
void SetBit(unsigned char xdata *pointunsigned char num);
void ClrBit(unsigned char xdata *pointunsigned char num);
void ErrorJugde1(unsigned char i);
void ErrorJugde(unsigned char i);
void m_Print(void);

void  Delayms(unsigned char val)
{    unsigned char i;
     while(val--){
          for (i=0;i<200;i++);
     }
}


void  Delay_10_uS(void)
{
  _nop_();_nop_();
}


#define FLASH_START_ADD  0x0000   //FLASH数据储存器首地址
unsigned char EERead(unsigned int addr){     //取数据
        IAP_ADDRH=addr/256;
        IAP_ADDRL=addr%256;
        IAP_CONTR=WAIT_TIME;
        IAP_CMD=ISP_BYTE_READ;
        IAP_TRIG=0x5a;
        IAP_TRIG=0xa5;
        Delay_10_uS();
        IAP_ADDRH=0;
        IAP_ADDRL=0;
        IAP_CONTR=0;
        IAP_CMD=0;
        IAP_TRIG=0;
        return(IAP_DATA);
}

void EEErase(unsigned int addr){ //擦除存储在EEPROM的数据    
        IAP_ADDRH=addr/256;
        IAP_ADDRL=addr%256;
        IAP_CONTR=WAIT_TIME;
        IAP_CMD=ISP_SECTOR_ERASE;
        IAP_TRIG=0x5A;
        IAP_TRIG=0xA5;
        Delay_10_uS();
        IAP_ADDRH=0;
        IAP_ADDRL=0;
        IAP_CONTR=0;
        IAP_CMD=0;
        IAP_TRIG=0;
        return;
}

void EEProgram(unsigned int addrunsigned char val){ //存储数据到EEPROM
        IAP_DATA=val;
        IAP_ADDRH=addr/256;          
        IAP_ADDRL=addr%256;
        IAP_CONTR=WAIT_TIME;
        IAP_CMD=ISP_BYTE_PROGRAM;   //ISP_BYTE_PROGRAM 2
        IAP_TRIG=0x5A;   //
        IAP_TRIG=0xA5;
        Delay_10_uS();
        IAP_ADDRH=0;
        IAP_ADDRL=0;
        IAP_CONTR=0;
        IAP_CMD=0;
        IAP_TRIG=0;
        return;
}

void SavePara(void){  //存储数据到EEPROM
     unsigned char i;
     EEErase(FLASH_START_ADD);
     for(i=0;i<40;i++){
         EEProgram(FLASH_START_ADD+i*2sbuff[i]/256);
         EEProgram(FLASH_START_ADD+1+i*2sbuff[i]%256);
     }
}

int GetPara(unsigned int addr){
         return(EERead(FLASH_START_ADD+addr*2)*256+EERead(FLASH_START_ADD+addr*2+1));
}

void LoadPara(void){
     unsigned char i;
     for(i=0;i<40;i++){
         sbuff[i]=GetPara(i);
     }
}

unsigned int code svazy[]={
   1 6  4         // 0 水泵数
   0 1200  60     // 1泵之间的运行间隔时间
   1 30000  300   // 2
   0 720360       // 3循检周期时
   0 590         //4循检周期分
   0 590      //5循检周期秒
   0 125100  //6
   0 500      //7
   2030060  //8 1#泵运行时间

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

     文件      12045  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\1.png

     文件       5417  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\2.png

     文件      17362  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\BTGJY

     文件       2763  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\BTGJY.DSK

     文件      56924  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\BTGJY.M51

     文件       3780  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\BTGJY.PRJ

     文件       5107  2018-05-31 10:33  FirePumpV3.0(带注解)\FirePumpV3.0\cmain.h

     文件        933  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\CONSTANT.H

     文件      75573  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump

     文件         63  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump V3.lnp

     文件        924  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump V3.plg

     文件         60  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump.lnp

     文件      80027  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump.M51

     文件       1574  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump.Opt

     文件        314  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePump.plg

     文件      74816  2018-06-04 08:51  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3

     文件      75569  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0

     文件       1628  2016-08-22 14:16  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.opt.bak

     文件        819  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.plg

     文件       2203  2016-08-22 13:14  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.Uv2.bak

     文件      71227  2017-10-27 22:18  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.uvgui.66

     文件      73527  2017-07-18 09:48  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.uvgui.Administrator

     文件      73526  2017-07-17 15:25  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.uvgui_Administrator.bak

     文件      59384  2018-06-09 16:20  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.uvopt

     文件      13688  2018-05-23 16:47  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0.uvproj

     文件      59384  2018-06-04 11:24  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0_uvopt.bak

     文件      14233  2017-08-27 16:46  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.0_uvproj.bak

     文件       1020  2017-10-12 16:26  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.build_log.htm

     文件      29091  2018-06-04 08:51  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.hex

     文件         62  2018-06-04 08:51  FirePumpV3.0(带注解)\FirePumpV3.0\FirePumpV3.lnp

............此处省略28个文件信息

评论

共有 条评论