Hello again,
I’m battling to talk to my FX2 (custom board), under
windows. I use the CyAPI interface to the generic USB
driver supplied by Cypress. I can set LED’s on my
board and so on, so I know that my firmware is being
downloaded.
I started out trying to make use of pre-written
Cypress C files (fx2regs.h, fx2.h etc), and have found
a couple bugs in their code.
Recently, I have been going through the GnuRadio
equivalents and am (sort of) merging the two while
only keeping the simple functionality I am aiming for
(at this stage a simple IN streaming device using the
slave fifo interface)
I have a couple of questions on setting this up (or,
adapting the USRP/SSRP firmware to work)
-
I don’t have an eeprom on my board to store
PID/VID, so I am bound to the standard interface
settings - will this be a problem? i.e. provided I set
up my EP2 to IN, and EP6 to OUT (matching the standard
settings wrt buffering etc), can I then just change
the device’s alternative interface setting to the
appropriate one and access these endpoints? -
I am trying to set up my firmware responses to
CONTROL requests over EP0. Looking at the USRP code, I
see that USB interrupts are in autovector mode, with a
fair bit of code written in assembler. I need to
translate this into a form that my Keil uVision
compiler will understand, but once I have done this,
with the assembler directives (eg isr.asm), the
appropriate include and source files, will I need to
set anything else up? (I have commented out all gpif
or fpga-specific functionality) -
Also, do I need to explicitly clear HSNAK and
perform other house-keeping in the CONTROL ISR’s? -
Finally, the next step after sorting out the EP0
responses will be to make a simple loop-back whereby
the FX2 intercepts all OUT packets and sends them back
to the host, so that I can be sure that my firmware is
ok. Can I simply use ISR’s hooked into the endpoint
interupts to achieve this?
Many thanks again for your help
Kalen Watermeyer
Send instant messages to your online friends