資源簡介
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
評論
共有 條評論