#include <stdio.h>
+#include <stdlib.h>
#include <unistd.h>
+#ifdef __WIN32__
+#define usleep(x) Sleep((x+999)/1000)
+#endif
#include <ftdi.h>
void ftdi_fatal (struct ftdi_context *ftdi, char *str)
{
fprintf (stderr, "%s: %s\n",
str, ftdi_get_error_string (ftdi));
+ ftdi_deinit(ftdi);
exit (1);
}
}
}
- ftdi_init(&ftdic);
+ if (ftdi_init(&ftdic) < 0)
+ {
+ fprintf(stderr, "ftdi_init failed\n");
+ ftdi_deinit(&ftdic);
+ return EXIT_FAILURE;
+ }
if (ftdi_usb_open(&ftdic, 0x0403, 0x6001) < 0)
ftdi_fatal (&ftdic, "Can't open ftdi device");
- if (ftdi_enable_bitbang(&ftdic, 0xFF) < 0)
+ if (ftdi_set_bitmode(&ftdic, 0xFF, BITMODE_BITBANG) < 0)
ftdi_fatal (&ftdic, "Can't enable bitbang");
for (i=optind; i < argc ; i++)