亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fmaclien.c

?? SPC3 SETUP PROGRAMS SP C3 SETUP PROGRAMS
?? C
?? 第 1 頁 / 共 3 頁
字號:
//-----------------------------------------------------------------------------
// $Id: fmaclient.c,v 0.0.0.1                                     2003/10/11
//-----------------------------------------------------------------------------
//
//      ProfiM - PROFIBUS MASTER DRIVER FOR WINDOWS NT/2000
//
// Author:
//      Pavel Trnka, CTU FEE
//      trnkap@seznam.cz
// With help and advices from:
//      Ing. Petr Smolik, CTU FEE
//      Ing. Pavel Pisa, CTU FEE
//      Ing. Pavel Burget, CTU FEE
//-----------------------------------------------------------------------------
//
// Popis:
// ------
//  Funkce FMA (Fieldbus Management) pro aplikacni vrstvu.
//
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------


#include "fdl_rb.h"




#define LEN_BUS_PARAMETER       sizeof(struct bus_parameter_block)
#define NETTO_DATA_OFFSET       12

#define FDL_ERROR              -1     /* return codes of functions        */

#define OK                      0
#define NOT_OPENED             -1     /* SCP not opened, invalid          */
#define SST_NOT_USED            0     /* SAP State: not activated         */
#define SST_ACTIVATED           1     /* SAP State: not activated         */



/**************************************************************************/
/*   fdl_write                                                            */
/*   sends request block to communication interface                       */
/**************************************************************************/
int fdl_write( int DriverHandle, fdl_rb *rb )
{
  return SCP_send( DriverHandle, sizeof( fdl_rb ), (char*) rb );
}



/**************************************************************************/
/*  build_head                                                            */
/*  fills header parameters                                               */
/**************************************************************************/

void build_head( fdl_rb *rb )
{
  rb -> rb2_header.length = 80;
  rb -> rb2_header.user = 0;  // use this for local block identifications - by application
  rb -> rb2_header.rb_type = 2;
  rb -> rb2_header.priority = low;
  rb -> rb2_header.subsystem = FLC_Subsys; /* for Layer2 */
  rb -> rb2_header.opcode = request;
  rb -> rb2_header.response = 0;


  rb -> rb2_header.fill_length_1 = 246;
  rb -> rb2_header.seg_length_1 = 255;
  rb -> rb2_header.offset_1 = 80;

  rb -> rb2_header.fill_length_2 = 0;
  rb -> rb2_header.seg_length_2 = 0;
  rb -> rb2_header.offset_2 = 0;

  rb -> application_block.opcode = request;
  rb -> application_block.subsystem = FLC_Subsys;
}



/**************************************************************************/

void FDL_set_val(fdl_rb *rb,BYTE pr)
{
  UBYTE *Vendor_name =	"CTU-FEE";
  UBYTE *Controller_type = "ProfiM - Windows Profibus DP Master Driver";
  UBYTE *HW_release = "1.0";
  UBYTE *SW_release = "0.015";


  UBYTE block[202];

  struct bus_parameter_block *temp_ptr;
  build_head(rb);
  temp_ptr = (struct bus_parameter_block *)rb->user_data_1;
  temp_ptr->hsa=HSA_default;
  temp_ptr->ts=TS_default;
  temp_ptr->station_type=Station_type_default;
  temp_ptr->baud_rate=Baud_rate_default;
  temp_ptr->medium_red=medium_red_default;
  temp_ptr->retry_ctr=retry_ctr_default;
  temp_ptr->default_sap=default_sap_default;
  temp_ptr->tqui=TQUI_default;
  temp_ptr->tset=TSET_default;
  temp_ptr->in_ring_desired= 1;
  temp_ptr->tsl=TSL_default;
  temp_ptr->ttr=TTR_default;
  temp_ptr->g=G_default;
  temp_ptr->min_tsdr=min_TSDR_default;
  temp_ptr->max_tsdr=max_TSDR_default;

    temp_ptr->physical_layer=rs485; 

    strcpy(block,"");
    block[0]=strlen(Vendor_name);
    block[1]=strlen(Controller_type);
    block[3]=strlen(HW_release);
    block[4]=strlen(SW_release);
    block[5]=0;

    strcat(block,Vendor_name);
    strcat(block,Controller_type);
   strcat(block,HW_release);
   strcat(block,SW_release);

    //temp_ptr->ident.ident[0] =strlen(Vendor_name);
    //temp_ptr->ident.ident[1] =strlen(Controller_type);
    //temp_ptr->ident.ident[2] =strlen(HW_release);
    //temp_ptr->ident.ident[3] =strlen(SW_release);
    //temp_ptr->ident.ident[4] =strlen(HW_release);

//temp_ptr->ident.ident=*block;
    strcpy(temp_ptr->ident.ident_info,"");

    strcat(temp_ptr->ident.ident_info, block);

    rb -> rb2_header.priority         = pr;
    rb -> rb2_header.opcode           = request;
    rb -> application_block.opcode    = request;
    rb -> application_block.service.code    = fdl_set_value;
    rb -> rb2_header.seg_length_1        = strlen(block);
}



void FDL_read_val(fdl_rb *rb,BYTE pr)
{
//    struct bus_parameter_block *temp_ptr;
  //  temp_ptr = (struct bus_parameter_block *)rb->user_data_1;

    build_head(rb);
    rb -> rb2_header.priority         = pr;
    rb -> rb2_header.opcode           = request;
    rb -> application_block.opcode    = request;
    rb -> application_block.service.code    = fdl_read_value;

}




/**********************************************************************/
/*  D e s c r i p t i o n :                                           */
/*                                                                    */
/*  build request_block for sap_activate for all services             */
/**********************************************************************/
void build_rqb_sap_activate( fdl_rb *rb,
                             UBYTE sap_nr,
                             UBYTE ACCSAP,
                             UBYTE ACCSTAT,
                             UBYTE SDA_R,
                             UBYTE SDN_R,
                             UBYTE SRD_R,
                             BYTE pr )
{
  struct fdl_sap *sptr;

  build_head( rb );

  // fill header params
  rb -> rb2_header.seg_length_1 = LEN_SAP_ACTIVATE;
  rb -> rb2_header.offset_1 = 80;
  rb -> rb2_header.fill_length_1 = LEN_SAP_ACTIVATE;

  rb -> rb2_header.seg_length_2 = 0;
  rb -> rb2_header.fill_length_2 = 0;
  rb -> rb2_header.offset_2 = 0;
  rb -> rb2_header.priority = pr;   

  rb -> application_block.service.code = sap_activate;  
  rb -> application_block.dsap = sap_nr;
  rb -> application_block.ssap = 0;

  sptr = ( struct fdl_sap * ) &( rb->user_data_1[0] );
  sptr->user_id = sap_nr;
  sptr->max_l_sdu_length = 246;
  sptr->access_sap = ACCSAP; //ALL;     // no reservations
  sptr->access_station = ACCSTAT; //ALL;     // no reservations
  sptr->sda = SDA_R; //BOTH_ROLES;
  sptr->sdn = SDN_R; //BOTH_ROLES;
  sptr->srd = SRD_R; //BOTH_ROLES;
}



/**********************************************************************/
/*  D e s c r i p t i o n :                                           */
/*                                                                    */
/*  build request_block for sap_activate for all services             */
/**********************************************************************/
void build_rqb_rsap_activate( fdl_rb *rb,
                              UBYTE sap_nr,
                              UBYTE ACCSAP,
                              UBYTE ACCSTAT,
                              BYTE pr )
{
  struct fdl_sap *sptr;

  build_head( rb );

  // fill header params
  rb -> rb2_header.seg_length_1 = LEN_SAP_ACTIVATE;
  rb -> rb2_header.offset_1 = 80;
  rb -> rb2_header.fill_length_1 = LEN_SAP_ACTIVATE;

  rb -> rb2_header.seg_length_2 = 0;
  rb -> rb2_header.fill_length_2 = 0;
  rb -> rb2_header.offset_2 = 0;
  rb -> rb2_header.priority = pr;

  rb -> application_block.service.code = rsap_activate;
  rb -> application_block.dsap = sap_nr;
  rb -> application_block.ssap = 0;

  sptr = ( struct fdl_sap * ) &rb->user_data_1;
  sptr->user_id = sap_nr;
  sptr->max_l_sdu_length = 246;
  sptr->access_sap = ACCSAP; //ALL;     // no reservations
  sptr->access_station = ACCSTAT; //ALL;     // no reservations
  sptr->srd = RESPONDER; // na pevno
}



/**********************************************************************/
/*  D e s c r i p t i o n :                                           */
/*                                                                    */
/*  build request_block for sap_deactivate for all services           */
/**********************************************************************/
void build_rqb_sap_deactivate( fdl_rb *rb, UBYTE sap_nr, BYTE pr )
{
  //   struct fdl_sap * sptr;

  build_head( rb );

  // fill header params
  rb -> rb2_header.priority = pr;
  rb -> rb2_header.seg_length_1 = LEN_SAP_ACTIVATE;
  rb -> rb2_header.offset_1 = 80;
  rb -> rb2_header.fill_length_1 = 0;
  rb -> application_block.service.code = sap_deactivate;
  rb -> application_block.dsap = sap_nr;
}



/**********************************************************************/
/*  D e s c r i p t i o n :                                           */
/*                                                                    */
/*  build request_block for lsap_status                               */
/**********************************************************************/
void build_rqb_lsap_status( fdl_rb *rb, UBYTE stat_num, UBYTE sap_nr, BYTE pr )
{
  build_head( rb );
  // fill header params

  rb -> rb2_header.priority = pr;
  rb -> rb2_header.fill_length_1 = 0;

  rb -> rb2_header.seg_length_2 = 0;
  rb -> rb2_header.fill_length_2 = 0;
  rb -> rb2_header.offset_2 = 0;

  rb -> application_block.service.code = lsap_status;
  rb -> application_block.dsap = sap_nr;
  rb -> application_block.receive_l_sdu.length = 255;
  rb -> application_block.rem_add.station = stat_num; // number of station
}



/**********************************************************************/
/*  D e s c r i p t i o n :                                           */
/*                                                                    */
/*                                                  */
/**********************************************************************/    
void build_rqb_event_sap( fdl_rb *rb, UBYTE pr )
{
  struct event_indication * temp_ptr;
  temp_ptr = ( struct event_indication * ) rb->user_data_1;

  build_head( rb );

  rb -> rb2_header.fill_length_1 = LEN_EVENT_INDICATION;
  rb -> rb2_header.seg_length_1 = 260;
  rb -> rb2_header.offset_1 = 80;
  rb -> rb2_header.priority = pr;

  rb -> rb2_header.fill_length_2 = 0;
  rb -> rb2_header.seg_length_2 = 0;

  rb -> application_block.service.code = await_indication;
  rb -> application_block.dsap = EVENT_SAP;
  rb -> application_block.send_l_sdu.length = 255;
  rb -> application_block.send_l_sdu.buffer_ptr = 0;
  rb -> application_block.send_l_sdu.length = 1;

  temp_ptr->time_out.threshold = time_out_threshold_default;
  temp_ptr->not_syn.threshold = not_syn_threshold_default;
  temp_ptr->uart_error.threshold = uart_error_threshold_default;
  temp_ptr->out_of_ring.threshold = out_of_ring_threshold_default;
  temp_ptr->sdn_not_indicated.threshold = sdn_not_indicated_threshold_default;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区成人| 亚洲一区二区av电影| 日韩三级在线观看| 欧美精品色一区二区三区| 欧美日韩国产在线观看| 精品视频资源站| 51精品久久久久久久蜜臀| 91精品久久久久久久久99蜜臂| 中文字幕欧美三区| 亚洲欧美日韩系列| 亚洲成人av资源| 久久不见久久见中文字幕免费| 国产美女娇喘av呻吟久久| av一区二区不卡| 在线观看一区不卡| 日韩欧美一区二区视频| 9191精品国产综合久久久久久| 国产精品麻豆欧美日韩ww| 亚洲一区二区三区自拍| 成人黄色国产精品网站大全在线免费观看| 色诱视频网站一区| 56国语精品自产拍在线观看| 亚洲精品欧美综合四区| 另类欧美日韩国产在线| 欧美男男青年gay1069videost| 亚洲欧美成aⅴ人在线观看 | 91亚洲国产成人精品一区二区三 | 精品一区二区三区蜜桃| heyzo一本久久综合| 久久新电视剧免费观看| 一区二区三区在线高清| 麻豆国产精品777777在线| 成人激情视频网站| 久久精品欧美日韩| 亚洲电影欧美电影有声小说| 日本黄色一区二区| 国产午夜精品在线观看| 国产乱妇无码大片在线观看| 精品视频免费在线| 亚洲福利一二三区| www.成人在线| 日韩久久一区二区| 成人综合婷婷国产精品久久蜜臀| 欧美日韩精品欧美日韩精品| 亚洲无线码一区二区三区| 欧美日韩综合在线| 日韩av一级片| 在线免费观看日本一区| 亚洲成人黄色小说| 日韩三级中文字幕| 国产91在线观看丝袜| 精品久久久久久久一区二区蜜臀| 亚洲精品v日韩精品| 欧美日韩精品二区第二页| 日本美女一区二区三区视频| 久久综合九色综合97婷婷| 成人国产精品免费| 国产91富婆露脸刺激对白 | xf在线a精品一区二区视频网站| 国产精品99久久久久久久vr| 1000部国产精品成人观看| 精品一二线国产| 中文字幕一区av| 在线播放91灌醉迷j高跟美女| 久久99久久99精品免视看婷婷| 国产亚洲精品aa| 在线视频一区二区三| 麻豆91小视频| 亚洲欧美偷拍卡通变态| 日韩欧美中文一区| 92精品国产成人观看免费| 国产欧美日韩一区二区三区在线观看 | 亚洲一区二区三区中文字幕在线| 日韩欧美国产不卡| 99精品1区2区| 久久91精品国产91久久小草| 亚洲三级电影全部在线观看高清| 色网综合在线观看| 欧美图片一区二区三区| 亚洲欧美日韩小说| 日韩欧美亚洲另类制服综合在线| 波多野结衣视频一区| 日本成人超碰在线观看| 亚洲人成电影网站色mp4| 精品国产区一区| 国产不卡在线一区| 天天综合色天天| 欧美va亚洲va在线观看蝴蝶网| eeuss国产一区二区三区| 久久99久久久久久久久久久| 一级做a爱片久久| 国产欧美精品一区二区色综合| 91精品免费观看| 欧美中文字幕一二三区视频| 粉嫩一区二区三区性色av| 秋霞影院一区二区| 久久久久国产精品麻豆| 972aa.com艺术欧美| 国产福利不卡视频| 亚洲精品国产一区二区三区四区在线| 精品久久国产字幕高潮| 3d成人动漫网站| 欧美视频你懂的| 欧美做爰猛烈大尺度电影无法无天| 国产成人福利片| 紧缚奴在线一区二区三区| 日本不卡不码高清免费观看| 日韩精品国产精品| 亚洲欧美综合网| 欧美国产日本视频| 欧美激情一区二区| 国产色91在线| 国产亚洲精品中文字幕| 久久综合九色欧美综合狠狠| 日韩欧美国产一区二区三区| 日韩亚洲欧美中文三级| 日韩欧美另类在线| 精品人在线二区三区| 日韩精品资源二区在线| 欧美精品一区二区精品网| 欧美不卡一二三| 久久亚区不卡日本| 欧美激情一区在线观看| 亚洲天堂成人网| 亚洲午夜激情av| 日韩vs国产vs欧美| 久久av资源网| 成人午夜电影久久影院| 91麻豆文化传媒在线观看| 在线看国产一区| 欧美一区二区三区在线观看| 欧美mv日韩mv国产网站app| 国产亚洲一区字幕| 国产精品久久二区二区| 日本一区二区三区久久久久久久久不| 国产欧美日韩久久| 亚洲欧美激情视频在线观看一区二区三区 | 欧美国产激情一区二区三区蜜月| 欧美国产综合色视频| 亚洲影院免费观看| 久久激情综合网| 91伊人久久大香线蕉| 91精品欧美一区二区三区综合在| 久久综合九色综合欧美就去吻| 亚洲欧洲精品天堂一级| 亚洲妇熟xx妇色黄| 国产精品一区二区在线观看不卡 | 亚洲精选一二三| 日本美女视频一区二区| 粉嫩aⅴ一区二区三区四区| 91国产免费观看| 精品国产一区二区三区久久影院 | 日本不卡一二三| 国产成人精品免费| 在线免费不卡电影| 久久精品在线观看| 亚洲国产精品人人做人人爽| 国产一区亚洲一区| 欧美性色综合网| 欧美国产日韩一二三区| 日韩在线一二三区| 99视频一区二区三区| 在线不卡欧美精品一区二区三区| 欧美激情一区二区三区四区 | 精品少妇一区二区三区视频免付费| 国产免费久久精品| 免费在线看一区| 色综合久久88色综合天天免费| 久久这里只有精品首页| 日韩精品免费专区| 91日韩一区二区三区| 欧美激情自拍偷拍| 久久99精品一区二区三区| 欧美亚洲国产bt| 亚洲欧洲无码一区二区三区| 韩日av一区二区| 粉嫩绯色av一区二区在线观看| 在线电影欧美成精品| 亚洲精品视频自拍| 成人三级伦理片| 国产人伦精品一区二区| 久久99精品一区二区三区三区| 欧美日韩国产另类不卡| 亚洲同性gay激情无套| 成人精品国产一区二区4080| 久久久久国产精品麻豆ai换脸 | 亚洲欧美福利一区二区| 国产成人在线视频网站| 精品国产区一区| 久久黄色级2电影| 日韩欧美黄色影院| 蜜桃久久精品一区二区| 欧美性猛片aaaaaaa做受| 亚洲精品视频在线| 99久久精品国产毛片| 国产精品福利av| 99久久国产综合色|国产精品| 26uuu亚洲综合色| 韩国精品久久久| 久久夜色精品国产欧美乱极品|