USB low-full-high speed peripherals Forum Discussions
Cypress Semiconductor introduced a single-chip solution that integrates a wireless radio with touch-sensing circuitry for wireless mice, trackpads, remote controls, presenter tools, and other Human Interface Devices (HIDs). The new PRoC™-UI (Programmable Radio-on-a-Chip–User Interface) solution combines 2.4-GHz proprietary WirelessUSB™-NL Radio with Cypress’s CapSense® and Automotive Multitouch capacitive touch technologies. This combination enables user interface functionality in wireless devices, including gestures supported by the upcoming Windows 8 applications.
Show Less
Cypress Semiconductor announced that ITON Technology, Ltd., a leading PC peripheral and component manufacturer in China, has selected Cypress’s 2.4-GHz WirelessUSB™-NL radio-on-a-chip for its complete module for wireless mice. The module includes firmware, providing customers with a turnkey solution to create their own end-products.
Cypress's 2.4-GHz WirelessUSB™-NL Radio-on-a-Chip Powers ITON's Turnkey Module for Wireless Mice
Show Less1)Hardware enviroment
Our board use CY7C68013A as synchronouse slave fifo, and a fpga as master.
CY7C68013A's CLKOUT at 12MHz, and FPGA's PLL use as input, output 40Mhz as CY7C68013A's IFCLK.
EEPROM is blank.
2)firmware and modification
use Cypress Suite USB 3.4.7\Firmware\Bulkloop example, and only modify BulkLoop.c as follow:
// CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ;
// CPUCS = (CPUCS & ~bmCLKSPD) |bmCLKSPD0; //24MHz
CPUCS = CPUCS & ~bmCLKSPD ; //12MHz CLKOUT
// set the slave FIFO interface to 48MHz
//IFCONFIG |= 0x40;
IFCONFIG = 0x03; //slave fifo, sync, external
3)host pc
windows 7 32bit.
Cypress Suite USB 3.4.7
CY3684_EZ-USB_FX2LP_DVK
1)Hardware enviroment
Our board use CY7C68013A as synchronouse slave fifo, and a fpga as master.
CY7C68013A's CLKOUT at 12MHz, and FPGA's PLL use as input, output 40Mhz as CY7C68013A's IFCLK.
EEPROM is blank.
2)firmware and modification
use Cypress Suite USB 3.4.7\Firmware\Bulkloop example, and only modify BulkLoop.c as follow:
// CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ;
// CPUCS = (CPUCS & ~bmCLKSPD) |bmCLKSPD0; //24MHz
CPUCS = CPUCS & ~bmCLKSPD ; //12MHz CLKOUT
// set the slave FIFO interface to 48MHz
//IFCONFIG |= 0x40;
IFCONFIG = 0x03; //slave fifo, sync, external
3)host pc
windows 7 32bit.
Cypress Suite USB 3.4.7
CY3684_EZ-USB_FX2LP_DVK
1)Hardware enviroment
Our board use CY7C68013A as synchronouse slave fifo, and a fpga as master.
CY7C68013A's CLKOUT at 12MHz, and FPGA's PLL use as input, output 40Mhz as CY7C68013A's IFCLK.
EEPROM is blank.
2)firmware and modification
use Cypress Suite USB 3.4.7\Firmware\Bulkloop example, and only modify BulkLoop.c as follow:
// CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ;
// CPUCS = (CPUCS & ~bmCLKSPD) |bmCLKSPD0; //24MHz
CPUCS = CPUCS & ~bmCLKSPD ; //12MHz CLKOUT
// set the slave FIFO interface to 48MHz
//IFCONFIG |= 0x40;
IFCONFIG = 0x03; //slave fifo, sync, external
3)host pc
windows 7 32bit.
Cypress Suite USB 3.4.7
CY3684_EZ-USB_FX2LP_DVK
I was wondering if it would be possible to parse a script (.spt) file, and if so, how to go about doing it.
We need to load firmware through non-Windows based methods. Unfortunately we have, over the years, lost track of the original .hex file(s) that were used to create a script file.
Thank you for your help.
- JeT
Show Lesshi
if i use wordwide =1 in slavefifo mode, what am i do for read in windwos application program?
i usually use like below in wordwide=0,
if (USBDevice->BulkInEndPt)
USBDevice->BulkInEndPt->XferData(buf, length);
buf have [512] array and length is 512.
but, if i use wordwide =1, what am i setting value for buf array count and length value ?
Show Lesshi
In Fx2lp, if i use SLAVEFIFO mode,
What is different (bandwidth / speed )point in wordwide=1 and wordwide=0?
i know wordwide=1 is [15:0] 16bit mode. but i dont know.
if i use wordwide =1 in slavefifo mode, is bps (bits per second) is almost same in wordwide=0?
Then, wordwide=1 have actually total high bandwidth and fast bps than wordwide=0. ins't it ?
Show LessHi!
I found strange behavior of library CyAPI.lib.
My goal is further develop the program written in c++ that quickly transfers data through USB. I use CY7C68013A in slave mode. I filled transmitted from PC buffer by counter 1,2,3 ... and controls the oscilloscope is synchronized "BUFFER
EMPTY" and show FD bus on the screen. Transmission was fixated and was conducted with the greatest possible speed. I write Test programm on c#. it use CyUsb.dll and works great.I could see the counter on the oscilloscope screen.But when I tried to use this same test in c++ program, I found transmission failures.
not working variant:
OutEndpt->XferData(&zgl[0], l);
not working variant:
UCHAR *outContext = USBDevice->BulkOutEndPt->BeginDataXfer(buffer, length,&outOvLap);
USBDevice->BulkOutEndPt->WaitForXfer(&outOvLap,100);
USBDevice->BulkOutEndPt->FinishDataXfer(buffer, length, &outOvLap,outContext);
not working variant:
DeviceIoControl (hDevice,IOCTL_ADAPT_SEND_NON_EP0_DIRECT,
pXmitBuf, iXmitBufSize,buf, bufLen,&dwReturnBytes, ov);
working variant:
DeviceIoControl (hDevice,IOCTL_ADAPT_SEND_NON_EP0_DIRECT,
pXmitBuf, iXmitBufSize,&zgl[0], xfer,
&l, (LPOVERLAPPED)NULL);
But this variant does not use overlapping. I assume that the signal of the completion occurs before completion of the transaction in CyAPI.lib.
is there a way to use overlapping in CyAPI.lib?
I use vs2010, Windows XP SP3 on test PC. windows7 on testing PC, remote debuggin by tcp.ip.