|
|
TopPage > FT2232D module > FT2232D module[02] |
simple.c(examples)でFT2232D |
21行目の if ((ret = ftdi_usb_open(&ftdic, 0x0403, 0x6001)) < 0) を if ((ret = ftdi_usb_open(&ftdic, 0x0403, 0x6010)) < 0) 28行目の if (ftdic.type == TYPE_R) を if (ftdic.type == TYPE_2232C) |
$ gcc ./simple2232d.c -lftdi -o ./simple2232d -O2 |
$ ./simple2232d ftdi_read_chipid: 0 FTDI chipid: 5A0F082E |
bitbang.c(examples)でFT2232D |
22行目の f = ftdi_usb_open(≈ftdic, 0x0403, 0x6001); を f = ftdi_usb_open(&ftdic, 0x0403, 0x6010); |
$ gcc ./bitbang2232d.c -lftdi -o ./bitbang2232d -O2 |
[hoge]$ ./bitbang2232d ftdi open succeeded: 0 enabling bitbang mode turning everything on turning everything off fe fd fb f7 ef df bf 7f fe fd fb f7 ef df bf 7f fe fd fb f7 ef df bf 7f fe fd fb f7 ef df bf 7f disabling bitbang mode [hoge]$ |
FT2232Dのシリアル通信Loop backテスト |
int f, i, len; |
int pid = 0x6010; |
if ( f > 0 ){ fprintf(stdout, "\n"); break; } |
// Write data fprintf(stdout, "Please input string and return\n"); scanf("%s",buf); len = strlen(buf); fprintf(stdout,"input str length=%d\n",len); if ((f = ftdi_write_data(&ftdic, buf, len+1)) < 0) { fprintf(stderr, "Error write. return val=[%d]\n", f); fflush(stderr); fflush(stdout); } else { fprintf(stdout, "write. return val=[%d]\n", f); } |
$ gcc ./serial_lb2232d.c -lftdi -o ./serial_lb2232d -O2 |
[hogeuser]$ ./serial_lb2232d Please input string and return abc input str length=3 write. return val=[4] <-プログラム上'\0'分を追加してwriteしている read 0 bytes read 0 bytes read 4 bytes abc |
ビットレート |
39bit/340us=114705だから 115200 bpsくらい(start bitとか入れて) |
データ長 | 8bit |
パリティチェック | 無し |
Stop Bit | 1bit |
TopPage > FT2232D module > FT2232D module[02] |