//-----------------------------------------------------------------------
//
// Copyright © 2012 Nils Hammar and Future Technology Devices International Limited. All rights reserved.
//
//-----------------------------------------------------------------------
namespace FtdiApi
{
using global::FtdiApi.Constants;
///
/// EEPROM structure specific to FT232R and FT245R devices.
/// Inherits from FT_EEPROM_DATA.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("StyleCop.CSharp.MaintainabilityRules", "SA1401:FieldsMustBePrivate", Justification = "Reviewed.")]
public class FT232R_EEPROM_STRUCTURE : FT_EEPROM_DATA
{
///
/// Disables the FT232R internal clock source.
/// If the device has external oscillator enabled it must have an external oscillator fitted to function
///
public bool UseExtOsc = false;
///
/// Enables high current IOs
///
public bool HighDriveIOs = false;
///
/// Sets the endpoint size. This should always be set to 64
///
public byte EndpointSize = 64;
///
/// Determines if IOs are pulled down when the device is in suspend
///
public bool PullDownEnable = false;
///
/// Determines if the serial number is enabled
///
public bool SerNumEnable = true;
///
/// Inverts the sense of the TXD line
///
public bool InvertTXD = false;
///
/// Inverts the sense of the RXD line
///
public bool InvertRXD = false;
///
/// Inverts the sense of the RTS line
///
public bool InvertRTS = false;
///
/// Inverts the sense of the CTS line
///
public bool InvertCTS = false;
///
/// Inverts the sense of the DTR line
///
public bool InvertDTR = false;
///
/// Inverts the sense of the DSR line
///
public bool InvertDSR = false;
///
/// Inverts the sense of the DCD line
///
public bool InvertDCD = false;
///
/// Inverts the sense of the RI line
///
public bool InvertRI = false;
///
/// Sets the function of the CBUS0 pin for FT232R devices.
/// Valid values are FT_CBUS_TXDEN, FT_CBUS_PWRON , FT_CBUS_RXLED, FT_CBUS_TXLED,
/// FT_CBUS_TXRXLED, FT_CBUS_SLEEP, FT_CBUS_CLK48, FT_CBUS_CLK24, FT_CBUS_CLK12,
/// FT_CBUS_CLK6, FT_CBUS_IOMODE, FT_CBUS_BITBANG_WR, FT_CBUS_BITBANG_RD
///
public byte Cbus0 = FT_CBUS_OPTIONS.FT_CBUS_SLEEP;
///
/// Sets the function of the CBUS1 pin for FT232R devices.
/// Valid values are FT_CBUS_TXDEN, FT_CBUS_PWRON , FT_CBUS_RXLED, FT_CBUS_TXLED,
/// FT_CBUS_TXRXLED, FT_CBUS_SLEEP, FT_CBUS_CLK48, FT_CBUS_CLK24, FT_CBUS_CLK12,
/// FT_CBUS_CLK6, FT_CBUS_IOMODE, FT_CBUS_BITBANG_WR, FT_CBUS_BITBANG_RD
///
public byte Cbus1 = FT_CBUS_OPTIONS.FT_CBUS_SLEEP;
///
/// Sets the function of the CBUS2 pin for FT232R devices.
/// Valid values are FT_CBUS_TXDEN, FT_CBUS_PWRON , FT_CBUS_RXLED, FT_CBUS_TXLED,
/// FT_CBUS_TXRXLED, FT_CBUS_SLEEP, FT_CBUS_CLK48, FT_CBUS_CLK24, FT_CBUS_CLK12,
/// FT_CBUS_CLK6, FT_CBUS_IOMODE, FT_CBUS_BITBANG_WR, FT_CBUS_BITBANG_RD
///
public byte Cbus2 = FT_CBUS_OPTIONS.FT_CBUS_SLEEP;
///
/// Sets the function of the CBUS3 pin for FT232R devices.
/// Valid values are FT_CBUS_TXDEN, FT_CBUS_PWRON , FT_CBUS_RXLED, FT_CBUS_TXLED,
/// FT_CBUS_TXRXLED, FT_CBUS_SLEEP, FT_CBUS_CLK48, FT_CBUS_CLK24, FT_CBUS_CLK12,
/// FT_CBUS_CLK6, FT_CBUS_IOMODE, FT_CBUS_BITBANG_WR, FT_CBUS_BITBANG_RD
///
public byte Cbus3 = FT_CBUS_OPTIONS.FT_CBUS_SLEEP;
///
/// Sets the function of the CBUS4 pin for FT232R devices.
/// Valid values are FT_CBUS_TXDEN, FT_CBUS_PWRON , FT_CBUS_RXLED, FT_CBUS_TXLED,
/// FT_CBUS_TXRXLED, FT_CBUS_SLEEP, FT_CBUS_CLK48, FT_CBUS_CLK24, FT_CBUS_CLK12,
/// FT_CBUS_CLK6
///
public byte Cbus4 = FT_CBUS_OPTIONS.FT_CBUS_SLEEP;
///
/// Determines if the VCP driver is loaded
///
public bool RIsD2XX = false;
}
}