本文整理匯總了C#中MissionPlanner.Arduino.ArduinoSTK.setaddress方法的典型用法代碼示例。如果您正苦於以下問題:C# ArduinoSTK.setaddress方法的具體用法?C# ArduinoSTK.setaddress怎麽用?C# ArduinoSTK.setaddress使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類MissionPlanner.Arduino.ArduinoSTK
的用法示例。
在下文中一共展示了ArduinoSTK.setaddress方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: BUT_copy1280_Click
private void BUT_copy1280_Click(object sender, EventArgs e)
{
ArduinoSTK port = new ArduinoSTK();
port.BaudRate = 57600;
port.DataBits = 8;
port.StopBits = StopBits.One;
port.Parity = Parity.None;
port.DtrEnable = true;
try
{
port.PortName = MissionPlanner.MainV2.comPortName;
log.Info("Open Port");
port.Open();
log.Info("Connect AP");
if (port.connectAP())
{
log.Info("Download AP");
byte[] EEPROM = new byte[1024 * 4];
for (int a = 0; a < 4 * 1024; a += 0x100)
{
port.setaddress(a);
port.download(0x100).CopyTo(EEPROM, a);
}
log.Info("Verify State");
if (port.keepalive())
{
StreamWriter sw = new StreamWriter(Path.GetDirectoryName(Application.ExecutablePath) + Path.DirectorySeparatorChar + @"EEPROM1280.bin");
BinaryWriter bw = new BinaryWriter(sw.BaseStream);
bw.Write(EEPROM, 0, EEPROM.Length);
bw.Close();
log.Info("Download AP");
byte[] FLASH = new byte[1024 * 128];
for (int a = 0; a < FLASH.Length; a += 0x100)
{
port.setaddress(a);
port.downloadflash(0x100).CopyTo(FLASH, a);
}
sw = new StreamWriter(Path.GetDirectoryName(Application.ExecutablePath) + Path.DirectorySeparatorChar + @"FLASH1280.bin");
bw = new BinaryWriter(sw.BaseStream);
bw.Write(FLASH, 0, FLASH.Length);
bw.Close();
}
else
{
CustomMessageBox.Show("Communication Error - Bad data");
}
}
else
{
CustomMessageBox.Show("Communication Error - no connection");
}
port.Close();
}
catch (Exception ex) { CustomMessageBox.Show("Port Error? " + ex.ToString()); if (port != null && port.IsOpen) { port.Close(); } }
}