public Status SetInvoke(InvokeMechanism _invoke) { if (mode == Mode.USB_HID && _invoke != InvokeMechanism.MANUAL) { return(Utils.StatusCreate(217)); } invoke = _invoke; return(Utils.StatusCreate(0)); }
private void ResetMCU(InvokeMechanism mech) { if (mech == InvokeMechanism.SHARED_JTAG) { CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommDtr(false); Task.Delay(10).Wait(); CommDtr(true); Task.Delay(10).Wait(); CommDtr(false); Task.Delay(10).Wait(); CommDtr(true); Task.Delay(10).Wait(); CommDtr(false); Task.Delay(10).Wait(); } else if (mech == InvokeMechanism.DEDICATED_JTAG) { CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); CommRts(false); Task.Delay(10).Wait(); CommRts(true); Task.Delay(10).Wait(); } }
public Core(BSL430NET _root, Mode _mode) { mode = _mode; root = _root; if (_mode == Mode.USB_HID) { invoke = InvokeMechanism.MANUAL; } report = new Report { Name = "START" }; }
private void InvokeBSL(InvokeMechanism mech) { if (mech == InvokeMechanism.SHARED_JTAG) { // todo predelat. opravit. CommRts(true); CommDtr(false); Task.Delay(25).Wait(); CommRts(true); CommDtr(true); Task.Delay(20).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(1).Wait(); CommDtr(false); Task.Delay(1).Wait(); CommRts(true); } else if (invoke == InvokeMechanism.DEDICATED_JTAG) { // todo predelat. opravit. CommRts(false); CommDtr(false); Task.Delay(25).Wait(); CommRts(false); CommDtr(true); Task.Delay(20).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(2).Wait(); CommRts(false); Task.Delay(2).Wait(); CommRts(true); Task.Delay(1).Wait(); CommDtr(false); Task.Delay(1).Wait(); CommRts(false); } }
/// <summary> /// Sets invoke mechanism mode. Default is DTR_RST__RTS_TEST. /// Note that USB HID mode requires manual BSL invocation. /// </summary> public Status SetInvokeMechanism(InvokeMechanism InvokeMechanism) { return(dev.SetInvoke(InvokeMechanism) ?? Utils.StatusCreateEx(466)); }