public byte[] ReadSramPage() { Console.WriteLine("ReadSramPage"); byte[] cmdData = new byte[] { (byte)Commands.SramRead }; StxEtxPacket packet = new StxEtxPacket(cmdData); byte[] bytes = packet.GetBytes(); uint bytesWritten = 0; FT_STATUS status = _Ftdi.Write(bytes, bytes.Length, ref bytesWritten); if (status != FT_STATUS.FT_OK) { throw new Exception("Error writing data (ReadSramPage)"); } if (bytesWritten != bytes.Length) { throw new Exception("Wrong number of bytes written (ReadSramPage)"); } return(ReceiveResponse()); }
public FirmwareIdentity ReadVersion() { byte[] cmdData = new byte[] { (byte)Commands.ReadVersion }; StxEtxPacket packet = new StxEtxPacket(cmdData); byte[] bytes = packet.GetBytes(); uint bytesWritten = 0; FT_STATUS status = _Ftdi.Write(bytes, bytes.Length, ref bytesWritten); if (status != FT_STATUS.FT_OK) { throw new Exception("Error writing data (ReadVersion)"); } if (bytesWritten != bytes.Length) { throw new Exception("Wrong number of bytes written (ReadVersion)"); } byte[] result = ReceiveResponse(); _FirmwareIdentity.Id = result[0]; _FirmwareIdentity.Major = result[1]; _FirmwareIdentity.Minor = result[2]; _FirmwareIdentity.Debug = result[3]; return(_FirmwareIdentity); }
public UInt32 GetSramSize() { byte[] cmdData = new byte[] { (byte)Commands.GetSramAddrWidth }; StxEtxPacket packet = new StxEtxPacket(cmdData); byte[] bytes = packet.GetBytes(); uint bytesWritten = 0; FT_STATUS status = _Ftdi.Write(bytes, bytes.Length, ref bytesWritten); if (status != FT_STATUS.FT_OK) { throw new Exception("Error writing data (GetFlashSize)"); } if (bytesWritten != bytes.Length) { throw new Exception("Wrong number of bytes written (GetFlashSize)"); } byte[] resp = ReceiveResponse(); return((UInt32)(Math.Pow(2, resp[0]))); }