FTDIのbitbangを使って、アプリケーションからGPIOを制御する。 公式サイトで.NET用ライブラリであるftd2xx_net.dll を提供しているので、これを使えば簡単に制御できる。
using FTD2XX_NET; public partial class MainWindow : Window { FTDI myFTDI = new FTDI(); private void Window_Loaded(object sender, RoutedEventArgs e) { FTDI_Init(); } private void FTDI_Init() { if (myFTDI.OpenByIndex(0) != FTDI.FT_STATUS.FT_OK) Debug.WriteLine("error"); if (myFTDI.ResetDevice() != FTDI.FT_STATUS.FT_OK) Debug.WriteLine("error"); if (myFTDI.SetBaudRate(115200) != FTDI.FT_STATUS.FT_OK) Debug.WriteLine("error"); if (myFTDI.SetBitMode(0x0f, FTDI.FT_BIT_MODES.FT_BIT_MODE_ASYNC_BITBANG) != FTDI.FT_STATUS.FT_OK) Debug.WriteLine("error"); Debug.WriteLine("FTDI_Init!"); } private void Button1_Click(object sender, RoutedEventArgs e) { byte[] databuffer = { 0x01 }; uint num = 0; myFTDI.Write(databuffer, 1, ref num); } private void Button2_Click(object sender, RoutedEventArgs e) { byte[] databuffer = { 0x00 }; uint num = 0; myFTDI.Write(databuffer, 1, ref num); } }