USB low-full-high speed peripherals Forum Discussions
I have modified VID,PID in bulkLoop, a firmware routine in the development kit.
Then I added my modified VID and PID in the.INF file of the development kit
Drivers can be identified in device Manager after installation
But it's not recognized in the Control Center
There is also no way to read the modified VID and PID in CyConsole
Show Less
Hi,
This KBA:
https://www.cypress.com/comment/390351
states that there is double buffering with the serial interface.
Is there any further documentation on how this works? Is there an app-note with an according firmware where I can take suggestions for my own firmware?
I only have found examples where writing a byte in the outbuf just sends one byte and you have to check the sent status before sending the next byte, or examples where you have to start the reading of one byte every time and have to move the transferred byte before the next byte can be read.
Best Regards,
Frank
Show LessHello, I'd like to request a resell copy of the CyUSB3 driver.
Could someone please help; and please private message me for the details (Microsoft Partner Center name and INF file)?
YatheeshK_36, I've noticed you resolved a few related requests; I hope you don't mind me mentioning you .
Thanks,
Aaron Gehan
Show LessHi,
I am using a CY7C68013A for an interface with a Slave FIFO configuration. The FIFO operates in autonomous mode at 8 bit width and streams about 4 MB/s in Bulk mode (may go up to 8 MB/s in a future application).
Now I'd like to add a second Interface, which would be an SPI-Master interface. As the first interface is 8 bit wide and fully autonomous, I have port D left an the full processing capability of the 8051.
As there isn't a second GPIF interface, I would have to mimic its function in software, like checking if there is data in an OUT buffer sent by the USB host and bit-banging it out of the port D pins (one pin for Select, one for CLK and one for DOUT), while sampling another port D pin (being used as DIN) and writing that data into an IN buffer.
Is something like that possible and if yes, has one of you already done it and could provide some example code or code sniplets?
Many thanks,
Frank
Show LessHi,
In the
001-13670_EZ-USB_Technical_Reference_Manual
under
10.2.8 Byte Order for 16 Bit GPIF Transactions
it states that
"Data is sent over USB in packets of 8-bit bytes, not 16-bit words. When the FIFO Data bus is 16 bits wide, the first byte in every pair sent over USB is transferred over FD[7:0] and the second byte is transferred over FD[15:8]."
I want to use a 16 bit wide data bus (D[15:0]) in order to transfer 32 bit data, where the first 16 bits put on the bus at D[15:0] are the data bits [31:16] beginning with the MSB and the second 16 bit are the data bits [15:0] ending with the LSB.
As the USB sends 8 bit data, I would need to have the sequence that is sent to be data bits [31:24], then data bits [23:16], then data bits [15:8] and then data bits [7:0].
If the first byte sent over USB is transferred over FD[7:0] and the second byte is transferred over FD[15:8], does this mean that I have to wire the MSB of the 16 bit wide data bus (D[15:8]) to FD[7:0] and the LSB of the 16 bit wide data bus (D[7:0]) to FD[15:8] ?
The above quote is about the GPIF. Does this byte order also apply to the SLAVE FIFO? And does this apply to both IN and OUT transactions?
Thanks,
Frank
Show LessThe power-on sequence is described in the data sheet.
(Within 10ms between VDD and VDDIO1)
What failure mode will occur if this specification is violated?
Thanks,
Tetsuo
Show LessI am using the Cypress EZ-USB FX2LP board and have created firmware to allow it to read data from an I2C based slave device and I am trying but cannot read the correct data from the slave device. Any guidance on the matter would be greatly appreciated !!
Please find the attachment. I2C command of slave device
STA = I2C start with address and R/W bit
The default address for I2C is 0x73 (115, or hexadecimal 73H), as the most-significant 7 bits of the STA byte. Therefore the default STA byte is 230 (0xE6) for a write, and 231 (0xE7) for a read.
Here is my code:
switch(VR){
case VR_GET_DEVICE_TEMPERATURE:
EP0BUF[0] = Get_Temperature(&EP0BUF[2]);
EP0BCH = 0x00;
EP0BCL = 0x05;
break;
default:
return(true);
}
unsigned char Get_Temperature(unsigned char *Temperature)
{
unsigned char Status, Success;
Status = 1;
Temperature[0]=0x7A; //Get Temperature command (I2C Command Code)
Temperature[1]=C_lower;
Temperature[2]=C_higher;
/* Get the temperature from the slave device */
Success = EZUSB_WriteI2C(0xE6, 3, (BYTE xdata *) &Temperature[0]);
Status &= Success;
EZUSB_Delay(1);
Success = EZUSB_ReadI2C(0xE7, 5, (BYTE xdata *) &Temperature[0]);
Status &= Success;
EZUSB_Delay(1);
return Status;
}
Hello,
I am trying to get the INT0# to trigger on the FX2LP. I can see on an oscope that the external pin, pin 34 on CY7C68016A-56LTXC, is transitioning from high to low but my isr function does not run. INT1# is held high. Here is the code.
From bulkloop.c
// Port A Configuration
PORTACFG |= bmINT1 + bmINT0; // Enable Interrupts INT0_N (PA0) and INT1_N (PA1)
SYNCDELAY;
TCON |= 0x05; // INT0 and INT1 are configured as Edge triggered interrupt
IE |= 0x85; SYNCDELAY; // Enable global interrupts and INT0# and INT1#
OEA = 0xF4;
From another file.
void keypress_isr (void) __interrupt INT1_VECT
{
led_color_set(1,0xff,0xff,0xff);
}
Any help would be greatly appreciated.
Thanks,
Dave
Show LessHello
My customer is designing with programmed CY7C65211-24LTXI to use as USB to Serial (SPI master).
They have some question.
They would like to ask you how many seconds after RESET (into nXRES pin) is available for CY7C65211.
After Active low signal into /XRES pin, they would like to know if there is any required minimum time to read data to SPI slave device that connected with CY7C65211 SCB block.
Regards,
Jake
Show LessHi,
Our FX2LP18 board is quite ready.
I would like to check with you some interrogations.
The VCCIO will be set to 1.8V.
I2C_SDA/I2C_SCL is pullup with a 1K to 1.8V.
One question, concerning WAKEUP (that we do not want to use) : DO we need to PULLUP it to 1.8V ? or 3.3V ?
We also use a LARGE EEPROM (1.8V). We will connect the A0 to 1.8V through a JUMPER. In this case, we can change the I2C ADRESS to 0xA0 by removinf the JUMPER. In this case, the FX2LP18 will not see the LARGE EEPROM ? Right ? It can be usefull in case of corrupted EEPROM, to be able to write it again using the CYPRESS VENDOR Comand.
Last question : What is the difference between IFCLK and CLKOUT if we use the FX2LP18 at the maximun 48MHZ clock ?
Regards.
Show Less