1 /* This program is distributed under the GPL, version 2 */
8 int main(int argc, char **argv)
10 struct ftdi_context *ftdi;
15 if ((ftdi = ftdi_new()) == 0)
17 fprintf(stderr, "ftdi_new failed\n");
21 f = ftdi_usb_open(ftdi, 0x0403, 0x6001);
25 fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(ftdi));
30 printf("ftdi open succeeded: %d\n",f);
32 printf("enabling bitbang mode\n");
33 ftdi_set_bitmode(ftdi, 0xFF, BITMODE_BITBANG);
38 printf("turning everything on\n");
39 f = ftdi_write_data(ftdi, buf, 1);
42 fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(ftdi));
48 printf("turning everything off\n");
49 f = ftdi_write_data(ftdi, buf, 1);
52 fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(ftdi));
57 for (i = 0; i < 32; i++)
59 buf[0] = 0 | (0xFF ^ 1 << (i % 8));
60 if ( i > 0 && (i % 8) == 0)
64 printf("%02hhx ",buf[0]);
66 f = ftdi_write_data(ftdi, buf, 1);
69 fprintf(stderr,"write failed for 0x%x, error %d (%s)\n",buf[0],f, ftdi_get_error_string(ftdi));
76 printf("disabling bitbang mode\n");
77 ftdi_disable_bitbang(ftdi);