Good day.
I wrote small test:
#include <ftdi.h>
#define DEVICE_VID 0x0403
#define DEVICE_PID 0x6011
int main(int argc, char **argv)
{
struct ftdi_context ftdic;
char buf[16];
int i;
ftdi_init(&ftdic);
ftdi_usb_open(&ftdic, DEVICE_VID, DEVICE_PID);
ftdi_set_interface(&ftdic, INTERFACE_A);
ftdi_usb_reset(&ftdic);
ftdi_set_bitmode(&ftdic, 0, 2);
i=0;
buf[i++] = 0x8a;
buf[i++] = 0x86;
buf[i++] = 29; // 1MHz
buf[i++] = 0x00;
ftdi_write_data(&ftdic, buf, i);
i=0;
buf[i++] = SET_BITS_LOW;
buf[i++] = 0x18;
buf[i++] = 0x1B;
buf[i++] = 0x11; // XXXX
buf[i++] = 1; // two bytes
buf[i++] = 0;
buf[i++] = 0x33;
buf[i++] = 0x55;
ftdi_write_data(&ftdic, buf, i);
ftdi_usb_close(&ftdic);
ftdi_deinit(&ftdic);
}
With 0x11 command (look for "XXXX" in comments) I got nice output on CLK
pin:
http://dionis.pnz.ru/DS0019.BMP
http://dionis.pnz.ru/DS0021.BMP
But with 0x10 I got not so good picture:
http://dionis.pnz.ru/DS0020.BMP
http://dionis.pnz.ru/DS0022.BMP
Why?
IMO "Clock Data Bytes Out on +ve clock edge MSB first" and "Clock Data
Bytes Out on -ve clock edge MSB first" can provide different output only
on DO pin, not on CLK pin.
--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|