资源简介
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个文件信息
- 上一篇:k-means算法用到的数据集
- 下一篇:OpenCV3.3百度云链接
相关资源
- STC8951系列单片机中方指南
- Omron ETN21模块进行modbustcp通讯
- 基于MFC扩展CListCtrl子项显示图片并叠
- STC12C5A60S2 CH4521 驱动数码管 显示
- 可编辑的CListctrl 支持CEDIT文本框,C
- STC12C系列单片机函数库
- CListCtrlExDemo.rar
- 适用于STC单片机和51单片机的SX1262驱动
- EESkill NRF24L01 无线模块用户手册
- IAP15f2k61s2
- 校园一卡通系统中RFID读写器的设计
- STC11F04单片机串口终端程序
- STC11F32单片机的射频读卡器设计
- STC-ISP_V4.83
- 基于STC89C52的瓦斯检测及红外控制系统
- ROST内容挖掘软件
- 基于51单片机的超声波测距技术实现含
- RC522读写MI卡程序,STC89C52RC调试通过,
- STC89C52+LCD12864+18B20+1302万年历
- STC库文件 STC.CDB
- 单片机89c52与MLX90614红外的测温程序
- stc8单片机12位ad程序查询模式
- 测试STC15W408AS单片机串口收发
- STC-ISP51单片机
- ESP8266AP模式控制51单片机亮灯.docx
- [Altium_Designer]_STC89C52单片机最小系统原
- 51单片机控制步进电机软硬件实现
- 基于STC89C52的GSM智能家居报警系统
- 3_STC15F2K60S2仿真操作
- 基于STC89C52单片机的数字时钟
评论
共有 条评论