X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=blobdiff_plain;f=examples%2Fbitbang_ft2232.c;h=41376a9093368503dfe7803f1aadaf999a40ba57;hp=6eb223eb52ed6fd370e2bfad612e02a341112169;hb=cd2ead2f23cea38de6fdbf2459c79cb4936fbf8d;hpb=e41d34235570f2b3bae3ea5db9150cddf2597810 diff --git a/examples/bitbang_ft2232.c b/examples/bitbang_ft2232.c index 6eb223e..41376a9 100644 --- a/examples/bitbang_ft2232.c +++ b/examples/bitbang_ft2232.c @@ -18,48 +18,48 @@ int main(int argc, char **argv) { - struct ftdi_context ftdic, ftdic2; + struct ftdi_context *ftdi, *ftdi2; unsigned char buf[1]; int f,i; // Init 1. channel - if (ftdi_init(&ftdic) < 0) + if ((ftdi = ftdi_new()) == 0) { - fprintf(stderr, "ftdi_init failed\n"); + fprintf(stderr, "ftdi_new failed\n"); return EXIT_FAILURE; } - ftdi_set_interface(&ftdic, INTERFACE_A); - f = ftdi_usb_open(&ftdic, 0x0403, 0x6001); + ftdi_set_interface(ftdi, INTERFACE_A); + f = ftdi_usb_open(ftdi, 0x0403, 0x6001); if (f < 0 && f != -5) { - fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(&ftdic)); - ftdi_deinit(&ftdic); + fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(ftdi)); + ftdi_deinit(ftdi); exit(-1); } printf("ftdi open succeeded(channel 1): %d\n",f); printf("enabling bitbang mode(channel 1)\n"); - ftdi_set_bitmode(&ftdic, 0xFF, BITMODE_BITBANG); + ftdi_set_bitmode(ftdi, 0xFF, BITMODE_BITBANG); // Init 2. channel - if (ftdi_init(&ftdic2) < 0) + if ((ftdi2 = ftdi_new()) == 0) { - fprintf(stderr, "ftdi_init failed\n"); + fprintf(stderr, "ftdi_new failed\n"); return EXIT_FAILURE; } - ftdi_set_interface(&ftdic2, INTERFACE_B); - f = ftdi_usb_open(&ftdic2, 0x0403, 0x6001); + ftdi_set_interface(ftdi2, INTERFACE_B); + f = ftdi_usb_open(ftdi2, 0x0403, 0x6001); if (f < 0 && f != -5) { - fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(&ftdic2)); - ftdi_deinit(&ftdic2); + fprintf(stderr, "unable to open ftdi device: %d (%s)\n", f, ftdi_get_error_string(ftdi2)); + ftdi_deinit(ftdi2); exit(-1); } printf("ftdi open succeeded(channel 2): %d\n",f); printf("enabling bitbang mode (channel 2)\n"); - ftdi_set_bitmode(&ftdic2, 0xFF, BITMODE_BITBANG); + ftdi_set_bitmode(ftdi2, 0xFF, BITMODE_BITBANG); // Write data printf("startloop\n"); @@ -67,43 +67,43 @@ int main(int argc, char **argv) { buf[0] = 0x1; printf("porta: %02i: 0x%02x \n",i,buf[0]); - f = ftdi_write_data(&ftdic, buf, 1); + f = ftdi_write_data(ftdi, buf, 1); if (f < 0) - fprintf(stderr,"write failed on channel 1 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(&ftdic)); + fprintf(stderr,"write failed on channel 1 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(ftdi)); sleep(1); buf[0] = 0x2; printf("porta: %02i: 0x%02x \n",i,buf[0]); - f = ftdi_write_data(&ftdic, buf, 1); + f = ftdi_write_data(ftdi, buf, 1); if (f < 0) - fprintf(stderr,"write failed on channel 1 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(&ftdic)); + fprintf(stderr,"write failed on channel 1 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(ftdi)); sleep(1); buf[0] = 0x1; printf("portb: %02i: 0x%02x \n",i,buf[0]); - f = ftdi_write_data(&ftdic2, buf, 1); + f = ftdi_write_data(ftdi2, buf, 1); if (f < 0) - fprintf(stderr,"write failed on channel 2 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(&ftdic2)); + fprintf(stderr,"write failed on channel 2 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(ftdi2)); sleep(1); buf[0] = 0x2; printf("portb: %02i: 0x%02x \n",i,buf[0]); - f = ftdi_write_data(&ftdic2, buf, 1); + f = ftdi_write_data(ftdi2, buf, 1); if (f < 0) - fprintf(stderr,"write failed on channel 2 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(&ftdic2)); + fprintf(stderr,"write failed on channel 2 for 0x%x, error %d (%s)\n", buf[0], f, ftdi_get_error_string(ftdi2)); sleep(1); } printf("\n"); printf("disabling bitbang mode(channel 1)\n"); - ftdi_disable_bitbang(&ftdic); - ftdi_usb_close(&ftdic); - ftdi_deinit(&ftdic); + ftdi_disable_bitbang(ftdi); + ftdi_usb_close(ftdi); + ftdi_deinit(ftdi); printf("disabling bitbang mode(channel 2)\n"); - ftdi_disable_bitbang(&ftdic2); - ftdi_usb_close(&ftdic2); - ftdi_deinit(&ftdic2); + ftdi_disable_bitbang(ftdi2); + ftdi_usb_close(ftdi2); + ftdi_free(ftdi2); return 0; }