|
Hi Poorni,
You can use the below sample code as reference, that configures FX2LP in Slave, Manual Mode:
void TD_Init( void )
{ // Called once at startup
CPUCS = 0x12; // CLKSPD[1:0]=10, for 48MHz operation, output CLKOUT
IFCONFIG = 0xCF; // for async? for sync?
EP2CFG = 0xA2; // EP2OUT, bulk, size 512, 2x buffered
SYNCDELAY;
EP6CFG = 0xE2; // EP6IN, bulk, size 512, 2x buffered
SYNCDELAY;
EP4CFG = 0x00; // EP4 not valid
SYNCDELAY;
EP8CFG = 0x00; // EP8 not valid
SYNCDELAY;
FIFORESET = 0x80; // set NAKALL bit to NAK all transfers from host
SYNCDELAY;
FIFORESET = 0x02; // reset EP2 FIFO
SYNCDELAY;
FIFORESET = 0x06; // reset EP6 FIFO
SYNCDELAY;
FIFORESET = 0x04; // reset EP6 FIFO
SYNCDELAY;
FIFORESET = 0x08; // reset EP6 FIFO
SYNCDELAY;
FIFORESET = 0x00; // clear NAKALL bit to resume normal operation
SYNCDELAY;
EP2FIFOCFG = 0x00; //manual mode, 8 bit mode
SYNCDELAY;
EP6FIFOCFG = 0x00; //manual mode, 8 bit mode.
SYNCDELAY;
OUTPKTEND =0x82; //arming the EP2 OUT endpoint twice, as it's double buffered.
SYNCDELAY;
OUTPKTEND = 0x82;
SYNCDELAY;
SYNCDELAY;
PINFLAGSAB = 0xE0; // FLAGA - indexed, FLAGB - EP6FF
SYNCDELAY;
PINFLAGSCD = 0x08; // FLAGC - EP2EF, FLAGD - indexed
SYNCDELAY;
}
Regards,
Gayathri
|