USB superspeed peripherals Forum Discussions
I have an example of a video camera (UVC) built on a chip CX3. Tell me, how to fix the descriptors, in order to create in addition to UVC class another device CDC (virtual com-port)?Show Less
I tried running USB-UART example for both FX3 and CX3. For both the boards, the device got registered. But, the data transmission happened only with FX3 and not with CX3. Below is what I did for testing.
1) Device got registered as COM device with port 22
2) The Debug port of FX3 got registered with port 23
3) Opened both the above serial ports with two applications (Terra Term) and the data I entered in one terminal got received on the other terminal.
4) Thus, example works for FX3
1) Device got registered as COM device with port 22
2) Connected the serial cable to the UART port (COM1).
3) Opened both the above serial ports with two applications (Terra Term) and no data appeared when I did same thing as with FX3.
Can you please help me out what has to be done for CX3 also to work like FX3? Will it work with Linux too?Show Less
I need to create a timer which has better resolution then 1us on the FX3.
I have followed the following link to create a 0.1us timer on a complex gpio: How to Get a 0.1-µs Unit Timestamp with FX3 – KBA220034
However when I use CyU3PGpioComplexSampleNow() it doesnt seem very accurate.
CyU3PGpioComplexSampleNow (57, &testa);
CyU3PGpioComplexSampleNow (57, &testb);
This gives a time difference of ~3us which seems too long. Is the CyU3PGpioComplexSampleNow() a slow function?
I have also tried just reading directly from the general purpose IO registers. The io pin timer/counter register has a base address of '0xE0001004'. This is for one particular GPIO. How can I read the io pin timer/counter register for GPIO 57, what address do I use?
1. Is there an accurate way to count at 0.1us resolution on the FX3
2. What is the address of the io pin timer/counter register for GPIO 57
I use the CYUSB3035 chip to set the boot option to 100 (S0 port (eMMC)), which cannot boot the eMMC.When set to 000, can normally burn the firmware and prompt for success.I set the pin of the three boot options to GPIO input, and the corresponding input voltage is set to 100, which can read the input voltage normally and read the correct input voltage 100.Is there any way to know why can't boot correctly?Show Less
I have the following DMA channels set up:
1) An AUTO-SIGNAL channel from the GPIF (producer) to USB (consumer)
2) A MANUAL channel from USB (producer) to GPIF (consumer)
I'm sniffing data on DMA Channel (1), and looping it back into DMA Channel (2).
I need this operation to be as low latency as possible (<200us). I'm using the following method to achieve this:
- Register a callback on the PROD_EVENT notification on the GPIF to USB AUTO-SIGNAL Channel (1), and copy data out of transfer buffer
- Register a callback on the PROD_EVENT notification on the USB to GPIF MANUAL Channel (2), place data from Channel 1 into transfer buffer and commit buffer.
I'm currently measuring a latency of ~6ms from the initial PROD_EVENT of Channel (1) to the CONS_EVENT of Channel (2)
Is this kind of latency expected with a manual DMA channel? What best case latency can we achieve?
What is the lowest possible latency solution to this (we need to keep data flowing on Channel 2 as normal - only modifying the buffer when we receive data on Channel 1)?
I have tried cyfxuartlpregmode, cyfxuartlpdmamode, and cyfxusbuart examples with the denebola development kit, and had no data received or transmitted via the RS232 UART. I have also tested the UART using the boot API and this works OK the hardware is fine, it would appear your example serial API is failing within your library.
I have since discovered that the example default CY_U3P_IO_MATRIX_LPP_UART_ONLY used in the function CyU3PDeviceConfigureIOMatrix() doesn't work, however using CY_U3P_IO_MATRIX_LPP_DEFAULT the example cyfxusbuart does function.
Using the debugger I found it possible to inspect the GCTL_IOMATRIX register (0xE0051088), and the default example setting (that doesn't work ) appeared to be configured correctly where S1CFG = 1 (Connected to GPIO + UART).
However when S1CFG = 4 (Connected to UART+SPI+I2S) the UART works. I am concerned that in this mode GPIO will no longer function, I have to test this soon.
Could you explain this functionality, and advise the expected behavior.
So I'm looking at developing a board that uses the FX3 chip and FPGA in a Slave FIFO arrangement. The main voltage regulators that generate the 3.3V and 1.2V for my circuit will be powered by an external power source. This power source will be switched on, when the 5V is detected on the VBUS line. My question is... Will the FX3 be able to configure its self to the bootloader, if the power supply for the VIO's and VDD's is from the external source? Bearing in mind that this power would reach the FX3 probably around a second after the FX3 receives the power on the VBUS line.
I am using the FX3S and I have the WiFi chip connected to Storage port 0. The WiFi chip is TI WiLink8 and I have to interface it with 4-bit SD. Because I'm writing my own application on a custom system, it is not possible for me to use the cypress sdk as is. I've extracted several code snippets from it and am using them in my codebase. However whenever I try to access the WiFi chip, I see that my commands timeout. My initialization of S-Port is,
1- Configure the Mode Register. Set mode to SD and 4-bit.
2- Configure the Clock.
After this, I try to send the CMD_52 to the WiFi chip but it does not respond. I see that the SDMMC_INTR[CMDSENT] set which indicates that the command was sent, but I get no response.
I know that the WiFi chip is functional. Therefore there is some sort of problem in my initalization code. Can anyone provide any pointers on this ASAP ?Show Less
the output interface of DSP is serial RGB(data bus:8bit, one pixel 24 bit)
I changed code in cyfxuvcdscr.c to RGB24
0x7d,0xeb,0x36,0xe4, /* GUID used to identify streaming-encoding format: RGB888 */
0x18, /* Number of bits per pixel used to specify color in the decoded video frame.
0 if not applicable: 24 bit per pixel */
when I open amcap, I see a black window,
in the uart debug window:
UVC COMpleted 0 frames and 0 buffers
UVC COMpleted 30 frames and 0 buffers
UVC COMpleted 60 frames and 0 buffers
UVC COMpleted 90 frames and 0 buffers
is there anything extra to modify? need I change the cyfxgpif2config.h?
Hi,We need the camera to initialize, and the mipi on the CX3 can be initialized successfully. If the new camera does not have the initial success, then the CX3 initialization will report the error AppInit:MipicsiInit Err = 0x55.
Our camera USES ov9282, which is the mipi data that we initialize and send to cx3.
In addition, does cx3 support the continue mode of mipi?Is there any continue mode information about the cx3 mipi?Show Less