142 ("RevisionnumberLabel", "Slave Count:", "revision_number"), |
142 ("RevisionnumberLabel", "Slave Count:", "revision_number"), |
143 ("PhysicsLabel", "Physics:", "physics")]: |
143 ("PhysicsLabel", "Physics:", "physics")]: |
144 self.StaticTextDic[statictext_name] = wx.StaticText(self, label=_(statictext_label)) |
144 self.StaticTextDic[statictext_name] = wx.StaticText(self, label=_(statictext_label)) |
145 self.TextCtrlDic[textctrl_name] = wx.TextCtrl(self, size=wx.Size(130, 24), style=wx.TE_READONLY) |
145 self.TextCtrlDic[textctrl_name] = wx.TextCtrl(self, size=wx.Size(130, 24), style=wx.TE_READONLY) |
146 self.SizerDic["SlaveInfosDetailsInnerSizer"].AddMany([self.StaticTextDic[statictext_name], |
146 self.SizerDic["SlaveInfosDetailsInnerSizer"].AddMany([self.StaticTextDic[statictext_name], |
147 self.TextCtrlDic[textctrl_name]]) |
147 self.TextCtrlDic[textctrl_name]]) |
148 |
148 |
149 self.SizerDic["SlaveInfosDetailsBox"].AddSizer(self.SizerDic["SlaveInfosDetailsInnerSizer"]) |
149 self.SizerDic["SlaveInfosDetailsBox"].AddSizer(self.SizerDic["SlaveInfosDetailsInnerSizer"]) |
150 |
150 |
151 self.SyncManagersGrid = CustomGrid(self, size=wx.Size(605, 155), style=wx.VSCROLL) |
151 self.SyncManagersGrid = CustomGrid(self, size=wx.Size(605, 155), style=wx.VSCROLL) |
152 |
152 |
179 self.ButtonDic[button_name].Bind(wx.EVT_BUTTON, event_method) |
179 self.ButtonDic[button_name].Bind(wx.EVT_BUTTON, event_method) |
180 self.ButtonDic[button_name].SetToolTipString(button_tooltipstring) |
180 self.ButtonDic[button_name].SetToolTipString(button_tooltipstring) |
181 self.SizerDic["SlaveState_down_sizer"].Add(self.ButtonDic[button_name]) |
181 self.SizerDic["SlaveState_down_sizer"].Add(self.ButtonDic[button_name]) |
182 |
182 |
183 self.SizerDic["SlaveState_sizer"].AddMany([self.SizerDic["SlaveState_up_sizer"], |
183 self.SizerDic["SlaveState_sizer"].AddMany([self.SizerDic["SlaveState_up_sizer"], |
184 self.SizerDic["SlaveState_down_sizer"]]) |
184 self.SizerDic["SlaveState_down_sizer"]]) |
185 |
185 |
186 self.SizerDic["SlaveStateBox"].Add(self.SizerDic["SlaveState_sizer"]) |
186 self.SizerDic["SlaveStateBox"].Add(self.SizerDic["SlaveState_sizer"]) |
187 |
187 |
188 self.SizerDic["SlaveState_inner_main_sizer"].AddMany([ |
188 self.SizerDic["SlaveState_inner_main_sizer"].AddMany([ |
189 self.SizerDic["SlaveInfosDetailsBox"], self.SizerDic["SyncManagerBox"], |
189 self.SizerDic["SlaveInfosDetailsBox"], self.SizerDic["SyncManagerBox"], |
373 Parse SDO data set that obtain "SDOInfoUpdate" Method |
373 Parse SDO data set that obtain "SDOInfoUpdate" Method |
374 @return True or False |
374 @return True or False |
375 """ |
375 """ |
376 |
376 |
377 slaveSDO_progress = wx.ProgressDialog("Slave SDO Monitoring", "Now Uploading...", |
377 slaveSDO_progress = wx.ProgressDialog("Slave SDO Monitoring", "Now Uploading...", |
378 maximum=len(self.SDOs.splitlines()), parent=self, |
378 maximum=len(self.SDOs.splitlines()), |
379 style=wx.PD_CAN_ABORT | wx.PD_APP_MODAL | wx.PD_ELAPSED_TIME | |
379 parent=self, |
380 wx.PD_ESTIMATED_TIME | wx.PD_REMAINING_TIME | |
380 style=wx.PD_CAN_ABORT | wx.PD_APP_MODAL | wx.PD_ELAPSED_TIME | |
381 wx.PD_AUTO_HIDE | wx.PD_SMOOTH) |
381 wx.PD_ESTIMATED_TIME | wx.PD_REMAINING_TIME | |
|
382 wx.PD_AUTO_HIDE | wx.PD_SMOOTH) |
382 |
383 |
383 # If keep_going flag is False, SDOParser method is stop and return "False". |
384 # If keep_going flag is False, SDOParser method is stop and return "False". |
384 keep_going = True |
385 keep_going = True |
385 count = 0 |
386 count = 0 |
386 |
387 |
494 """ |
495 """ |
495 self.Data = [] |
496 self.Data = [] |
496 count = 1 |
497 count = 1 |
497 |
498 |
498 page_texts = [("all", self.parent.AllSDOData), |
499 page_texts = [("all", self.parent.AllSDOData), |
499 ("0x0000 - 0x0ff", self.parent.DatatypeDescription), |
500 ("0x0000 - 0x0ff", self.parent.DatatypeDescription), |
500 ("0x1000 - 0x1fff", self.parent.CommunicationObject), |
501 ("0x1000 - 0x1fff", self.parent.CommunicationObject), |
501 ("0x2000 - 0x5fff", self.parent.ManufacturerSpecific), |
502 ("0x2000 - 0x5fff", self.parent.ManufacturerSpecific), |
502 ("0x6000 - 0x9fff", self.parent.ProfileSpecific), |
503 ("0x6000 - 0x9fff", self.parent.ProfileSpecific), |
503 ("0xa000 - 0xffff", self.parent.Reserved)] |
504 ("0xa000 - 0xffff", self.parent.Reserved)] |
504 |
505 |
505 page_tooltip_string = ["SDO Index 0x0000 - 0x0fff : Data Type Description", |
506 page_tooltip_string = ["SDO Index 0x0000 - 0x0fff : Data Type Description", |
506 "SDO Index 0x1000 - 0x1fff : Communication object", |
507 "SDO Index 0x1000 - 0x1fff : Communication object", |
507 "SDO Index 0x2000 - 0x5fff : Manufacturer specific", |
508 "SDO Index 0x2000 - 0x5fff : Manufacturer specific", |
508 "SDO Index 0x6000 - 0x9fff : Profile specific", |
509 "SDO Index 0x6000 - 0x9fff : Profile specific", |
662 try: |
663 try: |
663 int(dlg.GetValue(), 0) |
664 int(dlg.GetValue(), 0) |
664 # check "Access" field |
665 # check "Access" field |
665 if self.DecideSDODownload(self.Controler.CommonMethod.SlaveState[self.Controler.GetSlavePos()]): |
666 if self.DecideSDODownload(self.Controler.CommonMethod.SlaveState[self.Controler.GetSlavePos()]): |
666 # Request "SDODownload" |
667 # Request "SDODownload" |
667 self.Controler.CommonMethod.SDODownload(self.SDOs[event.GetRow()]['type'], self.SDOs[event.GetRow()]['idx'], |
668 self.Controler.CommonMethod.SDODownload( |
668 self.SDOs[event.GetRow()]['subIdx'], dlg.GetValue()) |
669 self.SDOs[event.GetRow()]['type'], |
|
670 self.SDOs[event.GetRow()]['idx'], |
|
671 self.SDOs[event.GetRow()]['subIdx'], |
|
672 dlg.GetValue()) |
|
673 |
669 self.SetCellValue(event.GetRow(), event.GetCol(), hex(int(dlg.GetValue(), 0))) |
674 self.SetCellValue(event.GetRow(), event.GetCol(), hex(int(dlg.GetValue(), 0))) |
670 else: |
675 else: |
671 self.Controler.CommonMethod.CreateErrorDialog('You cannot SDO download this state') |
676 self.Controler.CommonMethod.CreateErrorDialog('You cannot SDO download this state') |
672 # Error occured process of "int(variable)" |
677 # Error occured process of "int(variable)" |
673 # User input is not hex, dec value |
678 # User input is not hex, dec value |
1265 |
1270 |
1266 self.HexViewSizer = {"view": wx.FlexGridSizer(cols=1, hgap=10, rows=2, vgap=10), |
1271 self.HexViewSizer = {"view": wx.FlexGridSizer(cols=1, hgap=10, rows=2, vgap=10), |
1267 "siiButton": wx.BoxSizer()} |
1272 "siiButton": wx.BoxSizer()} |
1268 self.HexViewButton = {} |
1273 self.HexViewButton = {} |
1269 |
1274 |
1270 for key, evt_handler in [("Sii Upload", self.OnButtonSiiUpload), |
1275 for key, evt_handler in [ |
1271 ("Sii Download", self.OnButtonSiiDownload), |
1276 ("Sii Upload", self.OnButtonSiiUpload), |
1272 ("Write to File", self.OnButtonWriteToBinFile), |
1277 ("Sii Download", self.OnButtonSiiDownload), |
1273 ("Read from File", self.OnButtonReadFromBinFile), |
1278 ("Write to File", self.OnButtonWriteToBinFile), |
1274 ("XML to EEPROM Image", self.OnButtonXmlToEEPROMImg)]: |
1279 ("Read from File", self.OnButtonReadFromBinFile), |
|
1280 ("XML to EEPROM Image", self.OnButtonXmlToEEPROMImg)]: |
1275 self.HexViewButton[key] = wx.Button(self, -1, key) |
1281 self.HexViewButton[key] = wx.Button(self, -1, key) |
1276 self.HexViewButton[key].Bind(wx.EVT_BUTTON, evt_handler) |
1282 self.HexViewButton[key].Bind(wx.EVT_BUTTON, evt_handler) |
1277 self.HexViewSizer["siiButton"].Add(self.HexViewButton[key]) |
1283 self.HexViewSizer["siiButton"].Add(self.HexViewButton[key]) |
1278 |
1284 |
1279 self.SiiBinary = self.Controler.CommonMethod.XmlToEeprom() |
1285 self.SiiBinary = self.Controler.CommonMethod.XmlToEeprom() |
1826 for iter in range(4): |
1832 for iter in range(4): |
1827 self.RegPage.append(None) |
1833 self.RegPage.append(None) |
1828 |
1834 |
1829 for index in range(4): |
1835 for index in range(4): |
1830 self.RegPage[index] = RegisterNotebookPanel(self, self.Controler, |
1836 self.RegPage[index] = RegisterNotebookPanel(self, self.Controler, |
1831 parent.MainRow[index], parent.MainCol) |
1837 parent.MainRow[index], parent.MainCol) |
1832 self.AddPage(self.RegPage[index], |
1838 self.AddPage(self.RegPage[index], |
1833 "0x"+"{:0>4x}".format(index*1024)+" - 0x"+"{:0>4x}".format((index+1)*1024-1)) |
1839 "0x"+"{:0>4x}".format(index*1024)+" - 0x"+"{:0>4x}".format((index+1)*1024-1)) |
1834 |
1840 |
1835 self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.OnPageChanged) |
1841 self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.OnPageChanged) |
1836 self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGING, self.OnPageChanging) |
1842 self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGING, self.OnPageChanging) |