资源简介
103规约主站侧源代码,方便大家编程参考

代码片段和文件信息
/****************************************************************************/
/* */
/* 版权 (c) 2000-2010 国电南京自动化股份有限公司 */
/* */
/****************************************************************************/
/****************************************************************************/
/* 文件名 版本 */
/* */
/* 103.c 1.02 */
/* */
/* 概述: */
/* */
/* 南瑞继保串口103主站侧规约 */
/* */
/* 历史纪录: */
/* */
/* 名字 日期 注释 */
/* */
/* 郑小军 2001-10-15 创建初始化版本1.00 */
/* 郑小军 2002-04-02 修改遥测(DWORD->WORD) */
/* 2002-10-15 更新版本1.1 */
/****************************************************************************/
#include “typedef.h“
#include “generic.h“
#include “inforec.h“
#include “dev_mng.h“
#include “103.h“
//#include “telnet.h“
#define UART_RCV_SIZE 250
static WORD flag;
static BYTE scn;
BYTE sbuf[UART_PACKET_SIZE];
BYTE last_cmd;
WORD last_id;
WORD tot_leng;
BYTE dznumber;
BYTE list_num;
BYTE a; //fun
BYTE b; //inf
BYTE c; //dcc
BYTE ctrl_no1; //b
BYTE d;
BYTE e;
BYTE count;
T_SET rsetbuf;
T_SET wsetbuf;
T_LIST list;
T_MEASURE measure;
T_SFC sfc;
T_DI di;
T_ANALOG_ENTRY *p_analog_list;
T_SET_ENTRY *p_set_list;
T_SFC_ENTRY *p_sfc_list;
extern T_IED g_ied_list[];
extern WORD g_ied_num;
/* 串口设置 */
extern BYTE uart_port;
/* 数据库句柄 */
static HANDLE hand;
/* 串口任务 */
static BYTE STACK_SERIAL[0x2000];
static NU_TASK nuTask_Serial;
/* 数据接受处理函数 */
void Serial_Interpret(const BYTE* rbufBYTE uart_port)
{
BYTE byDevAddr;
BYTE i;
WORD Dev_Num;
Dev_Num = Get_Device_Number();
for (i = 1;i <= Dev_Num;i++)
{
byDevAddr = ID_to_Addr(i);
switch (rbuf[0])
{
case frame_T_CON:
if (rbuf[2] == byDevAddr)
{
Ack_Staid(rbufbyDevAddruart_port);
return;
}
break;
case frame_T_VOL:
if (rbuf[5] == byDevAddr || rbuf[5] == 0xff)
{
Ack_Changeable(rbufbyDevAddruart_port);
return;
}
break;
default:
return;
}
}
}
//可变帧长报文的处理
void Ack_Changeable(const BYTE* rbufBYTE byDevAddrBYTE uart_port)
{
switch(rbuf[6])
{
case 0x06:
ASDU06(rbufbyDevAddruart_port);//对时
return ;
case 0x07:
ASDU07(rbufbyDevAddruart_port);//总查询
return ;
case 0x0a:
// ASDU10(rbufbyDevAddruart_port);//通用分类数据
return ;
case 0x14:
ASDU20(rbufbyDevAddruart_port);//一般命令(复归保护信号)
return;
case 0x15:
ASDU21(rbufbyDevAddruart_port);//通用分类命令
return ;
case 0x40:
ASDU64(rbufbyDevAddruart_port);//遥控
return;
case 0x58:
ASDU88(rbufbyDevAddruart_port);//遥脉量上送
return;
default:
return ;
}
}
//固定帧长报文的处理
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 42737 2012-08-02 16:47 103源代码\103.c
文件 2346 2012-08-02 16:49 103源代码\103.h
文件 2414 2012-08-02 16:52 103源代码\103_ini.c
文件 4960 2012-08-21 15:10 103源代码\inforec.h
目录 0 2012-08-21 15:10 103源代码
----------- --------- ---------- ----- ----
52457 5
- 上一篇:CustomPlotTest.zip
- 下一篇:视频编解码器JM8.6
评论
共有 条评论