Кто-нибудь работал с FT2232H в разных режимах Меня интересует SPI. Программу пишу в среде MS VS C# 2010 Express. Для перевода FT2232H в режим SPI (MPSSE) использую библиотеку FTCSPI.dll. Все функции работают отлично микросхему вижу и хендл на нее получаю. Однако никак не могу заставить корректно работать следующие функции:
SPI_SetHiSpeedDeviceGPIOs
SPI_GetHiSpeedDeviceGPIOs
SPI_WriteHiSpeedDevice
SPI_ReadHiSpeedDevice
Получается устройство открываю а сконфигурировать выводы, прочитать с него и записать данные в него не могу.
У этих функций в качестве параметров передаются указатели на структуры. Подозреваю что я неправильно переписал эти структуры на C# а следовательно и передаю их в dll-ку.
Привожу пример как я переписал функцию с С++ на C#
[DllImport("FTCSPI.dll", EntryPoint = "SPI_GetHiSpeedDeviceGPIOs")]
unsafe public static extern ftc_status SPI_GetHiSpeedDeviceGPIOs(UInt32 pftHandle, [In, Out] ref FTH_Low_High_Pins pHighPinsInputData);
[StructLayout(LayoutKind.Sequential)]
public struct FTH_Low_High_Pins{
[MarshalAs(UnmanagedType.I1)]
public bool bPin1LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin2LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin3LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin4LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin5LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin6LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin7LowHighState;
[MarshalAs(UnmanagedType.I1)]
public bool bPin8LowHighState;
public FTH_Low_High_Pins(bool _bPin1LowHighState, bool _bPin2LowHighState, bool _bPin3LowHighState, bool _bPin4LowHighState,
bool _bPin5LowHighState, bool _bPin6LowHighState, bool _bPin7LowHighState, bool _bPin8LowHighState)
{
bPin1LowHighState = _bPin1LowHighState;
bPin2LowHighState = _bPin2LowHighState;
bPin3LowHighState = _bPin3LowHighState;
bPin4LowHighState = _bPin4LowHighState;
bPin5LowHighState = _bPin5LowHighState;
bPin6LowHighState = _bPin6LowHighState;
bPin7LowHighState = _bPin7LowHighState;
bPin8LowHighState = _bPin8LowHighState;
}
};
Может у кого есть рабочий код Помогите плиз