Added API to get libftdi library version.
[libftdi] / examples / bitbang_ft2232.c
index 9d62ac0..6eb223e 100644 (file)
@@ -9,6 +9,7 @@
 */
 
 #include <stdio.h>
+#include <stdlib.h>
 #include <unistd.h>
 #ifdef __WIN32__
 #define sleep(x) _sleep(x)
@@ -18,7 +19,7 @@
 int main(int argc, char **argv)
 {
     struct ftdi_context ftdic, ftdic2;
-    char buf[1];
+    unsigned char buf[1];
     int f,i;
 
     // Init 1. channel
@@ -33,12 +34,13 @@ int main(int argc, char **argv)
     if (f < 0 && f != -5)
     {
         fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(&ftdic));
+        ftdi_deinit(&ftdic);
         exit(-1);
     }
     printf("ftdi open succeeded(channel 1): %d\n",f);
 
     printf("enabling bitbang mode(channel 1)\n");
-    ftdi_enable_bitbang(&ftdic, 0xFF);
+    ftdi_set_bitmode(&ftdic, 0xFF, BITMODE_BITBANG);
 
     // Init 2. channel
     if (ftdi_init(&ftdic2) < 0)
@@ -51,12 +53,13 @@ int main(int argc, char **argv)
     if (f < 0 && f != -5)
     {
         fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(&ftdic2));
+        ftdi_deinit(&ftdic2);
         exit(-1);
     }
     printf("ftdi open succeeded(channel 2): %d\n",f);
 
     printf("enabling bitbang mode (channel 2)\n");
-    ftdi_enable_bitbang(&ftdic2, 0xFF);
+    ftdi_set_bitmode(&ftdic2, 0xFF, BITMODE_BITBANG);
 
     // Write data
     printf("startloop\n");
@@ -101,4 +104,6 @@ int main(int argc, char **argv)
     ftdi_disable_bitbang(&ftdic2);
     ftdi_usb_close(&ftdic2);
     ftdi_deinit(&ftdic2);
+
+    return 0;
 }