objdictgen/config/DS-401.prf
changeset 0 4472ee7c6c3e
child 69 c5495b101f57
equal deleted inserted replaced
-1:000000000000 0:4472ee7c6c3e
       
     1 global Mapping, AddMenuEntries
       
     2 
       
     3 """
       
     4 MappingDictionary for DS-401
       
     5 """
       
     6 
       
     7 Mapping = {
       
     8     0x6000 : {"name" : "Read Inputs 8 Bit", "struct" : rec,  "need" : False, "values" :
       
     9                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    10                  {"name" : "Read Inputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
    11     0x6002 : {"name" : "Polarity Input 8 Bit", "struct" : rec, "need" : False, "values" :
       
    12                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    13                  {"name" : "Polarity Input 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    14     0x6003 : {"name" : "Filter Constant Input 8 Bit", "struct" : rec, "need" : False, "values" :
       
    15                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    16                  {"name" : "Filter Constant Input 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    17 
       
    18     0x6005 : {"name" : "Global Interrupt Enable Digital", "struct" : var, "need" : False, "values" :
       
    19                 [{"name" : "Global Interrupt Enable Digital", "type" : 0x01, "access" : 'rw', "pdo" : False}]},
       
    20 
       
    21     0x6006 : {"name" : "Interrupt Mask Any Change 8 Bit", "struct" : rec, "need" : False, "values" :
       
    22                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    23                  {"name" : "Interrupt Any Change 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    24     0x6007 : {"name" : "Interrupt Mask Low to High 8 Bit", "struct" : rec, "need" : False, "values" :
       
    25                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    26                  {"name" : "Interrupt Low to High 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    27     0x6008 : {"name" : "Interrupt Mask High to Low 8 Bit", "struct" : rec, "need" : False, "values" :
       
    28                 [{"name" : "Number of Input 8 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    29                  {"name" : "Interrupt High to Low 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    30 
       
    31 
       
    32     0x6020 : {"name" : "Read Input Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    33                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    34                  {"name" : "Read Single Input 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    35     0x6030 : {"name" : "Polarity Input Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    36                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    37                  {"name" : "Polarity Input bit 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    38     0x6038 : {"name" : "Filter Constant Input Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    39                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    40                  {"name" : "Filter Constant Input bit 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    41     0x6050 : {"name" : "Interrupt Mask Input Any Change Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    42                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    43                  {"name" : "Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    44     0x6060 : {"name" : "Interrupt Mask Input Low to High Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    45                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    46                  {"name" : "Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    47     0x6070 : {"name" : "Interrupt Mask Input High  to Low Bit 0x%X to 0x%X[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01, "need" : False, "nbmax" : 0x8, "values" :
       
    48                 [{"name" : "Number of Input 1 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    49                  {"name" : "Interrupt Mask Any Change Input bit 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    50 
       
    51 
       
    52     0x6100 : {"name" : "Read Inputs 16 Bit", "struct" : rec,  "need" : False, "values" :
       
    53                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    54                  {"name" : "Read Inputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
    55     0x6102 : {"name" : "Polarity Input 16 Bit", "struct" : rec, "need" : False, "values" :
       
    56                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    57                  {"name" : "Polarity Input 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    58     0x6103 : {"name" : "Filter Constant Input 16 Bit", "struct" : rec, "need" : False, "values" :
       
    59                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    60                  {"name" : "Filter Constant Input 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    61     0x6106 : {"name" : "Interrupt Mask Any Change 16 Bit", "struct" : rec, "need" : False, "values" :
       
    62                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    63                  {"name" : "Interrupt Any Change 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    64     0x6107 : {"name" : "Interrupt Mask Low to High 16 Bit", "struct" : rec, "need" : False, "values" :
       
    65                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    66                  {"name" : "Interrupt Low to High 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    67     0x6106 : {"name" : "Interrupt Mask High to Low 16 Bit", "struct" : rec, "need" : False, "values" :
       
    68                 [{"name" : "Number of Input 16 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    69                  {"name" : "Interrupt High to Low 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    70 
       
    71 
       
    72     0x6120 : {"name" : "Read Input 4 Byte", "struct" : rec, "need" : False, "values" :
       
    73                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    74                  {"name" : "Read Input 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
    75     0x6122 : {"name" : "Polarity Input 32 Bit", "struct" : rec, "need" : False, "values" :
       
    76                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    77                  {"name" : "Polarity Input 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : False, "nbmax" : 0xFE}]},
       
    78     0x6123 : {"name" : "Filter Constant Input 32 Bit", "struct" : rec, "need" : False, "values" :
       
    79                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    80                  {"name" : "Polarity Input  0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : False, "nbmax" : 0xFE}]},
       
    81     0x6126 : {"name" : "Interrupt Mask Input Any Change 32 Bit", "struct" : rec, "need" : False, "values" :
       
    82                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    83                  {"name" : "Interrupt Any Change Input 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    84     0x6127 : {"name" : "Interrupt Mask Input Low to High 32 Bit", "struct" : rec, "need" : False, "values" :
       
    85                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    86                  {"name" : "Interrupt Low to High Input  0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    87     0x6128 : {"name" : "Interrupt Mask Input High to Low 32 Bit", "struct" : rec, "need" : False, "values" :
       
    88                 [{"name" : "Number of Input 32 bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    89                  {"name" : "Interrupt High to Low Input 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    90 
       
    91 
       
    92     0x6200 : {"name" : "Write Outputs 8 Bit", "struct" : rec, "need" : False, "values" :
       
    93                 [{"name" : "Number of Output 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    94                  {"name" : "Write Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    95     0x6202 : {"name" : "Change Polarity Outputs 8 Bit", "struct" : rec, "need" : False, "values" :
       
    96                 [{"name" : "Number of Output 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
    97                  {"name" : "Change Polarity Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
    98     0x6206 : {"name" : "Error Mode Outputs 8 Bit", "struct" : rec, "need" : False, "values" :
       
    99                 [{"name" : "Number of Output 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   100                  {"name" : "Error Mode Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   101     0x6207 : {"name" : "Error Value Outputs 8 Bit", "struct" : rec, "need" : False, "values" :
       
   102                 [{"name" : "Number of Output 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   103                  {"name" : "Error Value Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   104     0x6208 : {"name" : "Filter Mask Outputs 8 Bit", "struct" : rec, "need" : False, "values" :
       
   105                 [{"name" : "Number of Output 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   106                 {"name" : "Filter Mask Outputs 0x%X to 0x%X[(sub*8-7,sub*8)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   107 
       
   108 
       
   109     0x6220 : {"name" : "Write Outputs Bit %d to %d[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01,  "need" : False, "nbmax" : 0x08, "values" :
       
   110                 [{"name" : "Number of Output 1 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   111                  {"name" : "Write Outputs 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
   112     0x6240 : {"name" : "Change Polarity Outputs Bit %d to %d[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01,  "need" : False, "nbmax" : 0x08, "values" :
       
   113                 [{"name" : "Number of Output 1 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   114                  {"name" : "Write Outputs 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
   115     0x6250 : {"name" : "Error Mode Outputs Lines %d to %d[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01,  "need" : False, "nbmax" : 0x08, "values" :
       
   116                 [{"name" : "Number of Output 1 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   117                  {"name" : "Error Mode Outputs 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
   118     0x6260 : {"name" : "Error Value Outputs Lines %d to %d[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01,  "need" : False, "nbmax" : 0x08, "values" :
       
   119                 [{"name" : "Number of Output 1 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   120                  {"name" : "Error Value Outputs 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
   121     0x6270 : {"name" : "Filter Constant Outputs Lines %d to %d[(idx*128-127,idx*128)]", "struct" : plurirec, "incr" : 0x01,  "need" : False, "nbmax" : 0x08, "values" :
       
   122                 [{"name" : "Number of Output 1 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   123                  {"name" : "Filter Constant Outputs 0x%X[((idx-1)*128+sub)]", "type" : 0x01, "access" : 'rw', "pdo" : True, "nbmax" : 0x80}]},
       
   124 
       
   125 
       
   126     0x6300 : {"name" : "Write Outputs 16 Bit", "struct" : rec, "need" : False, "values" :
       
   127                 [{"name" : "Number of Output 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   128                  {"name" : "Write Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   129     0x6302 : {"name" : "Change Polarity Outputs 16 Bit", "struct" : rec, "need" : False, "values" :
       
   130                 [{"name" : "Number of Output 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   131                  {"name" : "Change Polarity Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   132     0x6306 : {"name" : "Error Mode Outputs 16 Bit", "struct" : rec, "need" : False, "values" :
       
   133                 [{"name" : "Number of Output 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   134                  {"name" : "Error Mode Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   135     0x6307 : {"name" : "Error Value Outputs 16 Bit", "struct" : rec, "need" : False, "values" :
       
   136                 [{"name" : "Number of Output 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   137                  {"name" : "Error Value Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   138     0x6308 : {"name" : "Filter Mask Outputs 16 Bit", "struct" : rec, "need" : False, "values" :
       
   139                 [{"name" : "Number of Output 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   140                  {"name" : "Filter Mask Outputs 0x%X to 0x%X[(sub*16-15,sub*16)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   141 
       
   142     0x6320 : {"name" : "Write Output 32 Bit", "struct" : rec, "need" : False, "values" :
       
   143                 [{"name" : "Number of Output 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   144                  {"name" : "Write Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   145     0x6322 : {"name" : "Change Polarity Outputs 32 Bit", "struct" : rec, "need" : False, "values" :
       
   146                 [{"name" : "Number of Output 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   147                  {"name" : "Polarity Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   148     0x6326 : {"name" : "Error Mode Outputs 32 Bit", "struct" : rec, "need" : False, "values" :
       
   149                 [{"name" : "Number of Output 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   150                  {"name" : "Error Mode Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   151     0x6327 : {"name" : "Error Value Outputs 32 Bit", "struct" : rec, "need" : False, "values" :
       
   152                 [{"name" : "Number of Output 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   153                  {"name" : "Error Value Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   154     0x6328 : {"name" : "Filter Mask Outputs 32 Bit", "struct" : rec, "need" : False, "values" :
       
   155                 [{"name" : "Number of Output 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   156                  {"name" : "Filter Mask Outputs 0x%X to 0x%X[(sub*32-31,sub*32)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   157 
       
   158 
       
   159     0x6400 : {"name" : "Read Analogue Input 8 Bit", "struct" : rec, "need" : False, "values" :
       
   160                 [{"name" : "Number of Analogue Input 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   161                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x05, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   162     0x6401 : {"name" : "Read Analogue Input 16 Bit", "struct" : rec, "need" : False, "values" :
       
   163                 [{"name" : "Number of Analogue Input 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   164                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x06, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   165     0x6402 : {"name" : "Read Analogue Input 32 Bit", "struct" : rec, "need" : False, "values" :
       
   166                 [{"name" : "Number of Analogue Input 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   167                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   168     0x6403 : {"name" : "Read Analogue Input Float", "struct" : rec, "need" : False, "values" :
       
   169                 [{"name" : "Number of Analogue Input Float", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   170                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   171     0x6404 : {"name" : "Read Manufacturer specific Analogue Input", "struct" : rec, "need" : False, "values" :
       
   172                 [{"name" : "Number of Analogue Input", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   173                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x11, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   174 
       
   175 
       
   176     0x6410 : {"name" : "Write Analogue Output 8 Bit", "struct" : rec, "need" : False, "values" :
       
   177                 [{"name" : "Number of Analogue Input 8 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   178                 {"name" : "Analogue Input %d[(sub)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   179     0x6411 : {"name" : "Write Analogue Output 16 Bit", "struct" : rec, "need" : False, "values" :
       
   180                 [{"name" : "Number of Analogue Input 16 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   181                 {"name" : "Analogue Output %d[(sub)]", "type" : 0x06, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   182     0x6412 : {"name" : "Write Analogue Output 32 Bit", "struct" : rec, "need" : False, "values" :
       
   183                 [{"name" : "Number of Analogue Outputs 32 Bit", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   184                 {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   185     0x6413 : {"name" : "Write Analogue Output Float", "struct" : rec, "need" : False, "values" :
       
   186                 [{"name" : "Number of Analogue Outputs Float", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   187                 {"name" : "Analogue Output %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   188     0x6414 : {"name" : "Write Manufacturer specific Analogue Output", "struct" : rec, "need" : False, "values" :
       
   189                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   190                 {"name" : "Analogue Output %d[(sub)]", "type" : 0x11, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   191 
       
   192 
       
   193     0x6421 : {"name" : "Interrupt Trigger Selection", "struct" : rec, "need" : False, "values" :
       
   194                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   195                  {"name" : "Analog Inputs 0x%X[(sub)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   196     0x6422 : {"name" : "Analogue Input Interrupt Source", "struct" : rec, "need" : False, "values" :
       
   197                 [{"name" : "Number of Interrupt Source Bank", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   198                  {"name" : "Interrupt Source Bank 0x%X[(sub)]", "type" : 0x07, "access" : 'ro', "pdo" : True, "nbmax" : 0xFE}]},
       
   199 
       
   200     0x6423 : {"name" : "Analogue Input Global Interrupt Enable", "struct" : var, "need" : False, "values" :
       
   201                  [{"name" : "Analogue Input Global Interrupt Enable", "type" : 0x01, "access" : 'rw', "pdo" : True}]},
       
   202 
       
   203     0x6424 : {"name" : "Analogue Input Interrupt Upper Limit Interger", "struct" : rec, "need" : False, "values" :
       
   204                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   205                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   206     0x6425 : {"name" : "Analogue Input Interrupt Lower Limit Interger", "struct" : rec, "need" : False, "values" :
       
   207                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   208                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   209     0x6426 : {"name" : "Analogue Input Interrupt Delta Unsigned", "struct" : rec, "need" : False, "values" :
       
   210                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   211                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   212     0x6427 : {"name" : "Analogue Input Interrupt Negative Delta Unsigned", "struct" : rec, "need" : False, "values" :
       
   213                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   214                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   215     0x6428 : {"name" : "Analogue Input Interrupt Positive Delta Unsigned", "struct" : rec, "need" : False, "values" :
       
   216                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   217                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   218     0x6429 : {"name" : "Analogue Input Interrupt Upper Limit Float", "struct" : rec, "need" : False, "values" :
       
   219                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   220                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   221     0x642A : {"name" : "Analogue Input Interrupt Lower Limit Float", "struct" : rec, "need" : False, "values" :
       
   222                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   223                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   224     0x642B : {"name" : "Analogue Input Interrupt Delta Float", "struct" : rec, "need" : False, "values" :
       
   225                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   226                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   227     0x642C : {"name" : "Analogue Input Interrupt Negative Delta Float", "struct" : rec, "need" : False, "values" :
       
   228                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   229                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   230     0x642D : {"name" : "Analogue Input Interrupt Positive Delta Float", "struct" : rec, "need" : False, "values" :
       
   231                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   232                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   233     0x642E : {"name" : "Analogue Input Offset Float", "struct" : rec, "need" : False, "values" :
       
   234                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   235                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   236     0x642F : {"name" : "Analogue Input Scaling Float", "struct" : rec, "need" : False, "values" :
       
   237                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   238                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   239     0x6430 : {"name" : "Analogue Input SI unit", "struct" : rec, "need" : False, "values" :
       
   240                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   241                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   242     0x6431 : {"name" : "Analogue Input Offset Integer", "struct" : rec, "need" : False, "values" :
       
   243                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   244                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   245     0x6432 : {"name" : "Analogue Input Scaling Integer", "struct" : rec, "need" : False, "values" :
       
   246                 [{"name" : "Number of Analogue Inputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   247                  {"name" : "Analogue Input %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   248 
       
   249 
       
   250     0x6441 : {"name" : "Analogue Output Offset Float", "struct" : rec, "need" : False, "values" :
       
   251                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   252                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   253     0x6442 : {"name" : "Analogue Output Scaling Float", "struct" : rec, "need" : False, "values" :
       
   254                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   255                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x08, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   256     0x6443 : {"name" : "Analogue Output Error Mode", "struct" : rec, "need" : False, "values" :
       
   257                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   258                  {"name" : "Error Mode Analogue Output %d[(sub)]", "type" : 0x05, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   259     0x6444 : {"name" : "Analogue Output Error Value Integer", "struct" : rec, "need" : False, "values" :
       
   260                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   261                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   262     0x6445 : {"name" : "Analogue Output Error Value Float", "struct" : rec, "need" : False, "values" :
       
   263                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   264                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   265     0x6446 : {"name" : "Analogue Output Offset Integer", "struct" : rec, "need" : False, "values" :
       
   266                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   267                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   268     0x6447 : {"name" : "Analogue Output Scaling Integer", "struct" : rec, "need" : False, "values" :
       
   269                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   270                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]},
       
   271     0x6450 : {"name" : "Analogue Output SI Unit", "struct" : rec, "need" : False, "values" :
       
   272                 [{"name" : "Number of Analogue Outputs", "type" : 0x02, "access" : 'ro', "pdo" : False},
       
   273                  {"name" : "Analogue Output %d[(sub)]", "type" : 0x07, "access" : 'rw', "pdo" : True, "nbmax" : 0xFE}]}
       
   274 }
       
   275 
       
   276 AddMenuEntries = [("Read Input Bit",[0x6020, 0x6030, 0x6038, 0x6050, 0x6060, 0x6070]), ("Write Output Bit",[0x6220, 0x6240, 0x6250, 0x6260, 0x6270])]