This is the code that I am referring to:

    // Set baudrate
    // if ( (f = ftdi_set_baudrate(ftdic, 115200)) < 0 ) {
    if ( (f = ftdi_set_baudrate(ftdic, 6000000)) < 0 ) { // 6 MHz?
        fprintf(stderr, "ftdi device: %d unable to set baudrate: %d (%s)\n", 
index, f, ftdi_get_error_string(ftdic));
        exit(-1);
    }
    if ( (f=ftdi_usb_reset(ftdic)) <0) {
       fprintf(stderr,"ftdi device: %d usb reset failed: %d (%s)\n",index, f, 
ftdi_get_error_string(ftdic));
        exit(-1);
    }
    // completely clear the receive buffer before beginning
    //while(ftdi_read_data(ftdic, rxbuf, bufsize)>0);
    // Clears the read buffer on the chip and the internal read buffer.
    if ( (f=ftdi_usb_purge_buffers(ftdic)) <0) {
       fprintf(stderr,"ftdi device: %d buffer purge failed: %d (%s)\n",index, 
f, ftdi_get_error_string(ftdic));
        exit(-1);
    }
    printf("ftdi device: %d enabling mpsse mode\n",index);
    if ( (f=ftdi_set_bit_mode(ftdic,0xFF,BITMODE_MPSSE)) <0) {
       fprintf(stderr,"ftdi device: %d cannot enable mpsse mode: %d 
(%s)\n",index, f, ftdi_get_error_string(ftdic));
        exit(-1);
    }
    if ( (f=ftdi_read_data_set_chunksize(ftdic, RXCHUNKSIZE)) < 0) {
        fprintf(stderr,"ftdi device: %d Can't set chunksize: %d (%s)\n",index, 
f,ftdi_get_error_string(ftdic));
        exit(-1);
    } 
    printf("ftdi device: %d ftdi open succeeded(channel 1): %d\n",index, f);
    // got the below from 
http://developer.intra2net.com/mailarchive/html/libftdi/2009/msg000287.html
   unsigned char init_commands[] = {
         0x86, 0x00, 0x00, // initial clock frequency (6 MHz)
         0x80, 0x08, 0x0b, // initial line states
         0x85 // disable loopback
   };
   printf("ftdi device: %d sending initialisation commands\n",index);
    if ( (f=ftdi_write_data(ftdic, init_commands,sizeof(init_commands))) < 0) {
       fprintf(stderr,"ftdi device: %d write data error for initialisation 
commands: %d (%s)\n",index,f, ftdi_get_error_string(ftdic));
       exit(-1);
    }

From: [email protected]
To: [email protected]
Subject: RE: MPSSE baudrate
Date: Thu, 31 Dec 2009 07:09:42 -0500








There is a function in the api called 

ftdi_set_baudrate(ftdi_context,baudrate)

I am not sure if it is as simple as calling this function with a 3000000 for 
3MHz or if there is some other calculation involved.

Does ftdi_set_baudrate(ftdi_context,3000000) == 3MHz MPSSE SPI mode?

I am trying to sample a 1.5 MHz signal on the "Data Input (DI)" pin of both 
channels(A & B).

Thanks
Siva

From: [email protected]
To: [email protected]
Subject: MPSSE baudrate
Date: Thu, 31 Dec 2009 06:50:05 -0500









Hello,

I am a beginner to using FTDI chips and want to use FT4232H for sampling a 1.5 
MHz line. I am hoping that if I could run MPSSE SPI at a baud rate of > 3Mhz or 
6 Mhz, will give me a reliable sample.

I am struggling to understand how the baud rate interacts with MPSSE. I have 
been through the examples in the libftdi source and the mailing list, but am 
not having much luck. Any documentation that I can find on baudrate seems to be 
correlated with BitBang mode or UART mode.

Can anyone please guide me to where I can find more information on how the 
baudrate interacts with MPSSE SPI?

Thanks
Siva



                                          
Hotmail: Trusted email with powerful SPAM protection. Sign up now.

libftdi - see http://www.intra2net.com/en/developer/libftdi for details.

To unsubscribe send a mail to [email protected]



                                          
Hotmail: Powerful Free email with security by Microsoft. Get it now.

libftdi - see http://www.intra2net.com/en/developer/libftdi for details.

To unsubscribe send a mail to [email protected]



                                          
_________________________________________________________________
Hotmail: Trusted email with powerful SPAM protection.
http://clk.atdmt.com/GBL/go/177141665/direct/01/

--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to [email protected]   

Reply via email to