User Tools

Site Tools


2014:fpga_guitar

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2014:fpga_guitar [2014/12/16 03:29]
svaughan
2014:fpga_guitar [2014/12/16 03:35] (current)
svaughan
Line 17: Line 17:
 === How to Repeat Our Work === === How to Repeat Our Work ===
  
-Download our code from https://​github.com/​runnersaw/​FPGAGuitar. Many of the files in this repository are for testing; you can ignore these. The only file responsible for FPGA operation is topLevel.v.  +1. Download our code from https://​github.com/​runnersaw/​FPGAGuitar. Many of the files in this repository are for testing; you can ignore these. The only file responsible for FPGA operation is topLevel.v.  
-Open Xilinx’s ISE Design Suite, and click New Project. Name this project anything you would like and save to any location on your computer.  + 
-Specify that this is for the Spartan3 family and XC3S1000 device and click Next. Then click Finish.  +2. Open Xilinx’s ISE Design Suite, and click New Project. Name this project anything you would like and save to any location on your computer.  
-Right click in your project heirarchy and click Add Source… Then navigate to where you saved our topLevel.v file. Then click OK to import it.  + 
-Right click on topLevel.v and click Add Source… again. Then navigate to the directory containing topLevel.v and choose topLevel.ucf. Choose this. Make sure that topLevel.ucf appears in the dropdown below topLevel.v. +3. Specify that this is for the Spartan3 family and XC3S1000 device and click Next. Then click Finish.  
-Double click Configure Target Device. This will synthesize, implement design, and generate programming file. If it throws any warnings at this point, ignore them. Then click Okay to open iMPACT.  + 
-Double click Boundary Scan. Make sure that the FPGA is plugged into the computer and then right click inside the window. Click on Initialize Chain. +4. Right click in your project heirarchy and click Add Source… Then navigate to where you saved our topLevel.v file. Then click OK to import it.  
-Click Yes to continue, and navigate to the folder you chose at the beginning. Double click toplevel.bit,​ then click Bypass on the next window. Then click OK.  + 
-Right click on the portion that says “toplevel.bit” and click program. You’re good to go!+5. Right click on topLevel.v and click Add Source… again. Then navigate to the directory containing topLevel.v and choose topLevel.ucf. Choose this. Make sure that topLevel.ucf appears in the dropdown below topLevel.v. 
 + 
 +6. Double click Configure Target Device. This will synthesize, implement design, and generate programming file. If it throws any warnings at this point, ignore them. Then click Okay to open iMPACT.  
 + 
 +7. Double click Boundary Scan. Make sure that the FPGA is plugged into the computer and then right click inside the window. Click on Initialize Chain. 
 + 
 +8. Click Yes to continue, and navigate to the folder you chose at the beginning. Double click toplevel.bit,​ then click Bypass on the next window. Then click OK.  
 + 
 +9. Right click on the portion that says “toplevel.bit” and click program. You’re good to go!
  
 Notes about using the FPGA guitar. When on manual mode, use switches 7 through 1 to select your note. Only one of these switches can be on, otherwise the guitar will not play a note. Then, “strum” on switch 0 to change the note. Operation should move like: choose note, strum, repeat. To switch to and from “Sweet Child O’ Mine” mode, press button 0.  Notes about using the FPGA guitar. When on manual mode, use switches 7 through 1 to select your note. Only one of these switches can be on, otherwise the guitar will not play a note. Then, “strum” on switch 0 to change the note. Operation should move like: choose note, strum, repeat. To switch to and from “Sweet Child O’ Mine” mode, press button 0. 
Line 35: Line 43:
  
 Our work flowed well. Our simplest iteration, which was just a strummable sound maker, was achievable. Luckily, we worked quickly enough that we were able to achieve one of our reach deliverables,​ which was an automated playing mode. This consisted of allowing users to press a button so that the FPGA would play a preset song.  Our work flowed well. Our simplest iteration, which was just a strummable sound maker, was achievable. Luckily, we worked quickly enough that we were able to achieve one of our reach deliverables,​ which was an automated playing mode. This consisted of allowing users to press a button so that the FPGA would play a preset song. 
 +
 +=== Schematic ===
 +
 +{{:​2014:​guitarschematic.jpg?​200|}}
  
  
2014/fpga_guitar.1418718594.txt.gz · Last modified: 2014/12/16 03:29 by svaughan