Slave104real.cpp
上传用户:tengfei
上传日期:2014-02-20
资源大小:423k
文件大小:4k
- #include "stdafx.h"
- #include "Slave104_Demo.h"
- #include "Slave104_DemoDlg.h"
- #include "Slave104real.h"
- CSlave104real::CSlave104real()
- {
-
- }
- CSlave104real::~CSlave104real()
- {
- }
-
- void CSlave104real::On_init_ASDU_process()
- {
- int i;
- Init_CauseOfTransfer_Size(2); //设置传输原因占字节 1 or 2
- Init_InfoBodyAddr_Size(3); //设置信息体占字节 1 2 or 3
- Init_ASDU_Common_addr_size(2); //设置公共地址占字节 1 or 2
- Init_ASDU_Common_addr(1); //设置应用公共服务地址
- Init_Backgroundperiod(300); //背景扫描时间间隔(秒)
- //***************单点信息**************************
- init_SP_create( 256,0x0001,0x0100,1 );
- for( i=0;i<256;i++)
- {
- init_SP_setgroup(i,1);
- slave_SP_SetData(i,0); //初始化遥信
- }
- init_SP_enable(1);
- //***************单点信息**************************
- init_DP_create( 256,0x0201,0x0300,0 );
- for( i=0;i<256;i++)
- {
- init_DP_setgroup(i,2);
- slave_DP_SetData(i,1); //初始化遥信
- }
- init_DP_enable(1);
- //***************归一化模拟量**************************
- init_ME_NA_create(128, 0x4001,0x4080,0);
- for( i=0;i<128;i++)
- {
- init_ME_NA_setgroup(i,9,1,1.0);
- slave_ME_NA_SetData(i,5); //初始化遥测
- }
-
- init_ME_NA_enable(1);
- //***************短浮点模拟量**************************
- init_ME_NC_create(128, 0x4401,0x4480,0);
- for( i=0;i<128;i++)
- {
- init_ME_NC_setgroup(i,8,0,1.0);
- slave_ME_NC_SetData(i,1.23); //初始化遥测
- }
-
- init_ME_NC_enable(1);
- //***************电度量**************************
- init_IT_NA_create(128, 0x6401,0x6480,1);
- for( i=0;i<128;i++)
- {
- init_IT_NA_setgroup(i,1);
- slave_IT_NA_SetData(i,10); //初始化电镀
- }
-
- init_IT_NA_enable(1);
- //***************单点遥控**************************
- init_C_SC_create();
- init_C_SC_enable(1);
- //***************双点遥控**************************
- init_C_DC_create();
- init_C_DC_enable(1);
- //***************归一化遥调**************************
- init_C_SE_NA_create();
- init_C_SE_NA_enable(1);
- //***************归一化参数**************************
- init_P_ME_NA_create(128);
- for( i=0;i<128;i++)
- {
- init_P_ME_NA_setgroup(i,14);
- }
- init_P_ME_NA_enable(1);
-
-
- }
- void CSlave104real::On_init_Link_process()
- {
- Init_Linkpara();
-
- }
- void CSlave104real::On_init_Sock_process()
- {
- Init_SockServerport();
- }
- BYTE CSlave104real::On_C_SC_select(WORD point ,BYTE status)
- {
- CString str;
- str.Format("单点遥控 选择 点号:%d 合分状态:%d",point,status);
- dlg->m_list.AddString(str);
- return 1;
- }
- void CSlave104real::On_C_SC_operate(WORD point ,BYTE status)
- {
- CString str;
- str.Format("单点遥控 执行 点号:%d 合分状态:%d",point,status);
- dlg->m_list.AddString(str);
- }
- BYTE CSlave104real::On_C_DC_select(WORD point ,BYTE status)
- {
- CString str;
- str.Format("双点遥控 选择 点号:%d 合分状态:%d",point,status);
- dlg->m_list.AddString(str);
- return 1;
- }
- void CSlave104real::On_C_DC_operate(WORD point ,BYTE status)
- {
- CString str;
- str.Format("双点遥控 执行 点号:%d 合分状态:%d",point,status);
- dlg->m_list.AddString(str);
- }
- BYTE CSlave104real::On_C_RC_select(WORD point ,BYTE status)
- {
- return 1;
- }
- void CSlave104real::On_C_RC_operate(WORD point ,BYTE status)
- {
- }
- BYTE CSlave104real::On_C_BO_select(WORD point ,DWORD status)
- {
- return 1;
- }
- void CSlave104real::On_C_BO_operate(WORD point ,DWORD status)
- {
- }
- void CSlave104real::On_C_SE_NA_operate(WORD point ,WORD status)
- {
- CString str;
- str.Format("归一化遥调 执行 点号:%d 值:%d",point,status);
- dlg->m_list.AddString(str);
- }
- void CSlave104real::On_C_SE_NB_operate(WORD point ,WORD value)
- {
- }
- void CSlave104real::On_C_SE_NC_operate(WORD point ,float value)
- {
- }
- void CSlave104real::On_C_SE_ND_operate(WORD point ,WORD value)
- {
- }
- void CSlave104real::On_RecvMsg(_BYTE *msgbuf,_int len )//显示接收报文
- {
- TRACE("nRx:");
- for(int i=0;i<len;i++)
- TRACE(" %02x ",msgbuf[i]);
- }
- void CSlave104real::On_SendMsg(_BYTE *msgbuf,_int len)//显示发送报文
- {
- TRACE("nTx:");
- for(int i=0;i<len;i++)
- TRACE(" %02x ",msgbuf[i]);
- }
- void CSlave104real::On_ErrorMsg(char *msgbuf)
- {
- TRACE("n%s",msgbuf);
- }