⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbm_embd.h

📁 PROFIBUS-dp PROGRAMS 主从站源程序
💻 H
字号:
/****************************************************************************

  File          : dbm_embd.h

-----------------------------------------------------------------------------
  Created       : A. Beck,  Hilscher GmbH
  Date          : 28-Jul-2001

  Project       : DBM embedded

-----------------------------------------------------------------------------

  Description:

      application interface definitions

-----------------------------------------------------------------------------

  Todo:

-----------------------------------------------------------------------------

  Changes:

    Name   Date          Version  Description
    -----------------------------------------------------------------------
    Ab     28-Jul-2001    1.000    created

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

/* number of possible table entries */
#define DBM_TAB_MAX 32

#define MAX_NAME_LENGTH 18


typedef struct DBM_FILE_TABLEStag
{
    unsigned char   szName[MAX_NAME_LENGTH];
    unsigned short  usSetNumber;
    unsigned short  usSetEntries;
    unsigned short  usSetCount;
    void *          pvStartAddress;
} DBM_FILE_TABLES;


typedef struct DBM_SETtag
{
  void *          pvrvw;
  unsigned short  usrvw_1_idx;
  unsigned short  usrvw_2_idx;
  unsigned char   bUngerade;
  unsigned char   bres;
  unsigned short  usmax;
  unsigned short  ausData[1];
} DBM_SET;

typedef struct   DBM_SET_0tag
{
  unsigned char   rvw[12];
  unsigned short  index_type;
  unsigned short  eintraege;
  unsigned short  max_eintraege;
  unsigned short  satz_verz_fuellstand;
  unsigned short  status;
  unsigned short  akt_eintraege;
  unsigned short  verz_umfang;
  unsigned char   name[18];
} DBM_SET_0;

typedef struct   DBM_DATSTRtag
{
  unsigned short  checksum;
  unsigned short  min_dat;
  unsigned short  anz_dat;
  unsigned short  akt_dat;
  unsigned short  max_dat;
  unsigned short  fill_index;
  unsigned short  e_f_index;
  unsigned char   bTyp;
  unsigned char   komp_noetig;
} DBM_DATSTR;

#pragma pack (1)
typedef struct   DBM_SET_GLOBALtag
{
  unsigned char       szSegmentName[9];
  unsigned char       abReservedA[10];
  unsigned char       bDbmVersion;
  signed   short      sVersion;
  unsigned short      usCheckSumCRC;
  unsigned char       abReservedB[4];
  unsigned char       bSystemStart;
  unsigned char       abReservedC[3];
  unsigned short      usHostWatchdogValue;
}DBM_SET_GLOBAL;


/* return error codes */
#define DBM_OK                      0
#define DBM_NO_DAT                  1
#define DBM_NO_SET                  2
#define DBM_DAT_DIR_FULL            3
#define DBM_NOT_ENOUGH_FREESPACE    4
#define DBM_SET_DEL                 5


/* function prototypes */
extern short dbm_init           ( void * );

extern short dbm_get_num        ( unsigned char *,
                                  unsigned char * );

extern short dbm_get_num_of_set ( unsigned char ,
                                  unsigned short * );

extern short dbm_fast_read      ( unsigned char  ,
                                  unsigned short ,
                                  unsigned short ,
                                  void           * ,
                                  unsigned short * );


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -