objdictgen/nodemanager.py
changeset 492 b919a24a45cb
parent 490 305d75028630
child 512 e84806c0ada4
equal deleted inserted replaced
491:2ad3dedf6c6a 492:b919a24a45cb
   198             self.CurrentNode.SetNodeName(name)
   198             self.CurrentNode.SetNodeName(name)
   199             self.CurrentNode.SetNodeID(id)
   199             self.CurrentNode.SetNodeID(id)
   200             self.CurrentNode.SetNodeType(type)
   200             self.CurrentNode.SetNodeType(type)
   201             self.CurrentNode.SetNodeDescription(description)
   201             self.CurrentNode.SetNodeDescription(description)
   202             AddIndexList = self.GetMandatoryIndexes()
   202             AddIndexList = self.GetMandatoryIndexes()
       
   203             AddSubIndexList = []
   203             if NMT == "NodeGuarding":
   204             if NMT == "NodeGuarding":
   204                 AddIndexList.extend([0x100C, 0x100D])
   205                 AddIndexList.extend([0x100C, 0x100D])
   205             elif NMT == "Heartbeat":
   206             elif NMT == "Heartbeat":
   206                 AddIndexList.append(0x1017)
   207                 AddIndexList.append(0x1017)
   207             for option in options:
   208             for option in options:
   225                     AddIndexList.extend([0x1010, 0x1011, 0x1020])
   226                     AddIndexList.extend([0x1010, 0x1011, 0x1020])
   226                 elif option == "StoreEDS":
   227                 elif option == "StoreEDS":
   227                     AddIndexList.extend([0x1021, 0x1022])
   228                     AddIndexList.extend([0x1021, 0x1022])
   228             if type == "slave":
   229             if type == "slave":
   229                 # add default SDO server
   230                 # add default SDO server
   230                 AddIndexList.extend([0x1280])
   231                 AddIndexList.append(0x1200)
       
   232                 # add default 4 receive and 4 transmit PDO
       
   233                 for comm, mapping in [(0x1400, 0x1600),(0x1800, 0x1A00)]:
       
   234                     firstparamindex = self.GetLineFromIndex(comm)
       
   235                     firstmappingindex = self.GetLineFromIndex(mapping)
       
   236                     AddIndexList.extend(range(firstparamindex, firstparamindex + 4))
       
   237                     for idx in range(firstmappingindex, firstmappingindex + 4):
       
   238                         AddIndexList.append(idx)
       
   239                         AddSubIndexList.append((idx, 8))
   231             # Add a new buffer 
   240             # Add a new buffer 
   232             index = self.AddNodeBuffer(self.CurrentNode.Copy(), False)
   241             index = self.AddNodeBuffer(self.CurrentNode.Copy(), False)
   233             self.SetCurrentFilePath("")
   242             self.SetCurrentFilePath("")
   234             # Add Mandatory indexes
   243             # Add Mandatory indexes
   235             self.ManageEntriesOfCurrent(AddIndexList, [])
   244             self.ManageEntriesOfCurrent(AddIndexList, [])
       
   245             for idx, num in AddSubIndexList:
       
   246                 self.AddSubentriesToCurrent(idx, num)
   236             return index
   247             return index
   237         else:
   248         else:
   238             return result
   249             return result
   239     
   250     
   240     """
   251     """