1080 'Category Data' : ('42', 1), |
1080 'Category Data' : ('42', 1), |
1081 } |
1081 } |
1082 |
1082 |
1083 # Config Data: EEPROM Size, PDI Type, Device Emulation |
1083 # Config Data: EEPROM Size, PDI Type, Device Emulation |
1084 # EEPROM's data in address '0x003f' is Size of EEPROM in KBit-1 |
1084 # EEPROM's data in address '0x003f' is Size of EEPROM in KBit-1 |
1085 eeprom_size = str((int(self.GetWordAddressData( sii_dict.get('Size'), 10 ))+1)/8*1024) |
1085 eeprom_size = str((int(self.GetWordAddressData( sii_dict.get('Size'), 10))+1)/8*1024) |
1086 # Find PDI Type in pdiType dictionary |
1086 # Find PDI Type in pdiType dictionary |
1087 cnt_pdi_type = int(self.GetWordAddressData( sii_dict.get('PDIControl'), 16 ).split('x')[1][2:4], 16) |
1087 cnt_pdi_type = int(self.GetWordAddressData( sii_dict.get('PDIControl'), 16).split('x')[1][2:4], 16) |
1088 for i in self.PDIType.keys(): |
1088 for i in self.PDIType.keys(): |
1089 if cnt_pdi_type == i: |
1089 if cnt_pdi_type == i: |
1090 cnt_pdi_type = self.PDIType[i][0] |
1090 cnt_pdi_type = self.PDIType[i][0] |
1091 break |
1091 break |
1092 # Get Device Emulation |
1092 # Get Device Emulation |
1093 device_emulation = str(bool(int("{:0>16b}".format(int(self.GetWordAddressData( sii_dict.get('PDIControl'), 16 ), 16))[7]))) |
1093 device_emulation = str(bool(int("{:0>16b}".format(int(self.GetWordAddressData( sii_dict.get('PDIControl'), 16), 16))[7]))) |
1094 # Set Config Data |
1094 # Set Config Data |
1095 for treelist, data in [("EEPROM Size (Bytes)", eeprom_size), |
1095 for treelist, data in [("EEPROM Size (Bytes)", eeprom_size), |
1096 ("PDI Type", cnt_pdi_type), |
1096 ("PDI Type", cnt_pdi_type), |
1097 ("Device Emulation", device_emulation)]: |
1097 ("Device Emulation", device_emulation)]: |
1098 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.ConfigData[treelist], data, 1) |
1098 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.ConfigData[treelist], data, 1) |
1099 |
1099 |
1100 # Device Identity: Vendor ID, Product Code, Revision No., Serial No. |
1100 # Device Identity: Vendor ID, Product Code, Revision No., Serial No. |
1101 # Set Device Identity |
1101 # Set Device Identity |
1102 for treelist, data in [ |
1102 for treelist, data in [ |
1103 ("Vendor ID", self.GetWordAddressData( sii_dict.get('VendorID'), 16 )), |
1103 ("Vendor ID", self.GetWordAddressData( sii_dict.get('VendorID'), 16)), |
1104 ("Product Code", self.GetWordAddressData( sii_dict.get('ProductCode'), 16 )), |
1104 ("Product Code", self.GetWordAddressData( sii_dict.get('ProductCode'), 16)), |
1105 ("Revision No.", self.GetWordAddressData( sii_dict.get('RevisionNumber'), 16 )), |
1105 ("Revision No.", self.GetWordAddressData( sii_dict.get('RevisionNumber'), 16)), |
1106 ("Serial No.", self.GetWordAddressData( sii_dict.get('SerialNumber'), 16 ))]: |
1106 ("Serial No.", self.GetWordAddressData( sii_dict.get('SerialNumber'), 16))]: |
1107 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.DeviceIdentity[treelist], data, 1) |
1107 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.DeviceIdentity[treelist], data, 1) |
1108 |
1108 |
1109 # Mailbox |
1109 # Mailbox |
1110 # EEORPOM's word address '1c' indicates supported mailbox protocol. |
1110 # EEORPOM's word address '1c' indicates supported mailbox protocol. |
1111 # each value of mailbox protocol : |
1111 # each value of mailbox protocol : |
1112 # VoE(0x0020), SoE(0x0010), FoE(0x0008), CoE(0x0004), EoE(0x0002), AoE(0x0001) |
1112 # VoE(0x0020), SoE(0x0010), FoE(0x0008), CoE(0x0004), EoE(0x0002), AoE(0x0001) |
1113 supported_mailbox = "" |
1113 supported_mailbox = "" |
1114 mailbox_protocol = ["VoE, ", "SoE, ", "FoE, ", "CoE, ", "EoE, ", "AoE, "] |
1114 mailbox_protocol = ["VoE, ", "SoE, ", "FoE, ", "CoE, ", "EoE, ", "AoE, "] |
1115 mailbox_data = "{:0>8b}".format(int(self.GetWordAddressData( sii_dict.get('MailboxProtocol'), 16 ), 16)) |
1115 mailbox_data = "{:0>8b}".format(int(self.GetWordAddressData( sii_dict.get('MailboxProtocol'), 16), 16)) |
1116 for protocol in range(6): |
1116 for protocol in range(6): |
1117 if mailbox_data[protocol+2] == '1': |
1117 if mailbox_data[protocol+2] == '1': |
1118 supported_mailbox += mailbox_protocol[protocol] |
1118 supported_mailbox += mailbox_protocol[protocol] |
1119 supported_mailbox = supported_mailbox.strip(", ") |
1119 supported_mailbox = supported_mailbox.strip(", ") |
1120 # Set Mailbox |
1120 # Set Mailbox |
1122 ("Bootstrap Configuration", ""), |
1122 ("Bootstrap Configuration", ""), |
1123 ("Standard Configuration", "")]: |
1123 ("Standard Configuration", "")]: |
1124 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.Mailbox[treelist], data, 1) |
1124 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.Mailbox[treelist], data, 1) |
1125 # Set Bootstrap Configuration: Receive Offset, Receive Size, Send Offset, Send Size |
1125 # Set Bootstrap Configuration: Receive Offset, Receive Size, Send Offset, Send Size |
1126 for treelist, data in [ |
1126 for treelist, data in [ |
1127 ("Receive Offset", self.GetWordAddressData( sii_dict.get('BootstrapReceiveMailboxOffset'), 10 )), |
1127 ("Receive Offset", self.GetWordAddressData( sii_dict.get('BootstrapReceiveMailboxOffset'), 10)), |
1128 ("Receive Size", self.GetWordAddressData( sii_dict.get('BootstrapReceiveMailboxSize'), 10 )), |
1128 ("Receive Size", self.GetWordAddressData( sii_dict.get('BootstrapReceiveMailboxSize'), 10)), |
1129 ("Send Offset", self.GetWordAddressData( sii_dict.get('BootstrapSendMailboxOffset'), 10 )), |
1129 ("Send Offset", self.GetWordAddressData( sii_dict.get('BootstrapSendMailboxOffset'), 10)), |
1130 ("Send Size", self.GetWordAddressData( sii_dict.get('BootstrapSendMailboxSize'), 10 ))]: |
1130 ("Send Size", self.GetWordAddressData( sii_dict.get('BootstrapSendMailboxSize'), 10))]: |
1131 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.BootstrapConfig[treelist], data, 1) |
1131 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.BootstrapConfig[treelist], data, 1) |
1132 # Set Standard Configuration: Receive Offset, Receive Size, Send Offset, Send Size |
1132 # Set Standard Configuration: Receive Offset, Receive Size, Send Offset, Send Size |
1133 for treelist, data in [ |
1133 for treelist, data in [ |
1134 ("Receive Offset", self.GetWordAddressData( sii_dict.get('StandardReceiveMailboxOffset'), 10 )), |
1134 ("Receive Offset", self.GetWordAddressData( sii_dict.get('StandardReceiveMailboxOffset'), 10)), |
1135 ("Receive Size", self.GetWordAddressData( sii_dict.get('StandardReceiveMailboxSize'), 10 )), |
1135 ("Receive Size", self.GetWordAddressData( sii_dict.get('StandardReceiveMailboxSize'), 10)), |
1136 ("Send Offset", self.GetWordAddressData( sii_dict.get('StandardSendMailboxOffset'), 10 )), |
1136 ("Send Offset", self.GetWordAddressData( sii_dict.get('StandardSendMailboxOffset'), 10)), |
1137 ("Send Size", self.GetWordAddressData( sii_dict.get('StandardSendMailboxSize'), 10 ))]: |
1137 ("Send Size", self.GetWordAddressData( sii_dict.get('StandardSendMailboxSize'), 10))]: |
1138 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.StandardConfig[treelist], data, 1) |
1138 self.TreeListCtrl.Tree.SetItemText(self.TreeListCtrl.StandardConfig[treelist], data, 1) |
1139 |
1139 |
1140 def MakeStaticBoxSizer(self, boxlabel): |
1140 def MakeStaticBoxSizer(self, boxlabel): |
1141 """ |
1141 """ |
1142 Make StaticBoxSizer |
1142 Make StaticBoxSizer |