Forum Discussion
Altera_Forum
Honored Contributor
10 years agoIf your main goal is moving data and not learning USB, then I wouldn't recommend using USB to implement this. USB is such a complex topic you would be much better off using SPI or I2C to send data to a microcontroller (for example a 3.3 volt Arduino board like the Due).
Yes, all USB communications need to be initiated by the host (the PC in this example). If you want to use an FPGA alone without an SoC or accompanying microcontroller, you will want to implement USB in device mode. You will need a board with a USB OTG or device mode socket. There are some examples for Terasic boards where the board is emulating a keyboard or mouse. Another alternative is to use a USB hard drive. In this case, the FPGA board is operating in host mode which is much more complex and isn't practical without a processor. You could use an SoC board or implement a NIOS embedded processor. There are also examples for this for some of the Terasic boards.