• Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by JColvin

  1. JColvin

    Pmod Ad5

    Hi, There are a few things that could potentially be the source of your problem, but I'm not sure quite yet what they might be. So, I have three questions. Did you change/write to any of the registers of the Analog Devices ADC that is on the Pmod? Did you use any external reference voltage? Is it just a single analog signal that you are measuring? Thanks, JColvin
  2. Hi omarniopequeno, I personally don't know how you might implement the module in Verilog (I'm a microcontroller guy), but I do know what the 12 output bits mean. The 12 output bits are what the analog-to-digital converter that is present on the PmodMIC send out which represent the data (sound) that was picked up by the microphone in a particular instance of time. Practically speaking, when the MIC picks up some sound, the sound waves activate a component in the microphone which produces a voltage (analog) signal. This voltage signal is then sent to the analog-to-digital converter that is also on the Pmod, which converts the analog signal into a digital signal, in this case 12 digital signals. Since digital signals are simply just high and low voltages, digital signals can be effectively interpreted as a binary code with a high voltage represented as a '1' and a low voltage representing a '0'. The PmodMIC allows these 12 bits to become available to you (the user/ the basys2 in this case) through SPI (serial peripheral interface) with the most significant bit (the largest binary value) becoming available to you first out of the 12 bits of information. However, because of the nature of SPI, the PmodMIC will actually send you four '0' (low voltage) values first before sending the 12 bits of information through SPI. Please let me know if you have any more questions. Thanks, JColvin
  3. Hi Jordi, That's alright, we all make mistakes sometimes. I am by no means an FPGA expert, so I'll need sbobrowicz to confirm my answer but here is my understanding: After checking out the reference manual for the JTAG-HS3, I believe the reason that this is a pure 14 pin cable is so that the Zynq-7000 chip on ZYBO boards is able to be programmed correctly since that pin (pin 14) needs to be connected to pin 14 of the JTAG header and driven low at the appropriate times. Because the header is a 2x7, the 1x6 connector naturally cannot connect to all 7 pins simultaneously so the board is programmed correctly. That being said, if you are programming a different board that only requires the 6 pins, I would think that in theory you could individually route the signals from the HS3 to the 6-pin MTE connector with wires, although I don't know how this would affect the programming since it's hard to guarentee the wires are the same impedance so that signals pass through at the correct times and whatnot. The main issue, at least from my point of view, is that the pins on the HS3 and a 6-pin compatible cable (like the JTAG-HS1) are not in the same physical location, so you would not be able to plug in the 6-pin MTE connector straight into the HS3 and have it work correctly. Again, you maybe could route the wires individually, but that might result in some iffy programming; I have never personally tried this. Either way, the 14-pin connector is recommend simply because it brings all the signals of the HS3 to the correct pins on the FPGA without any issue or user re-routing. Let me know if you have any more questions. (and correct me if this is not accurate sbobrowicz) Thanks, JColvin
  4. As an additional side note, if you want to use the PmodI2S, you will need to use one of the newer FPGAs as opposed to a chipKIT board. Most of the chipKIT boards, aside from the chipKIT WiFire, are only able to run at 80 MHz which is unfortunately simply not fast enough to generate the master clock signal that the PmodI2S requires in addition to performing other actions (such as sending audio data). In terms of numbers, for those who are interested, the reason for this is because the slowest master clock signal that the PmodI2S can receive (according to the on-board chips datasheet here) is 8.192 MHz, which is equivalent to about 122 ns between clock edges. On the chipKIT boards, with a processor clock rate of 80 MHz, they are are only able to utilize their timer register clock for core services for half the time (40 MHz). This is a difference of 25 ns between clock edges, implying that every 5 clock "ticks" the master clock signal for the PmodIS will need to be triggered. Unfortunately, switching the voltage state of the digital pin driving the master clock and running a counter to keep track of the other needed clocks (such as the LRCK) takes more than 5 clock cycles to complete. This means that once the processor enters an interrupt service routine to "tick" the master clock and increase the counter of the other clocks, it will essentially never leave the ISR since more than 5 clock cycles passed while performing the functions within the ISR.
  5. Thank you for sharing your solution!
  6. Hi Jordi, I believe that particular statement is for the Xilinx 2x7 connector which is for the JTAG-HS3. What they are referring to is the JTAG3, which actually a different product, although I agree that it is a confusingly similar name; it took me awhile to notice the difference. You can see it at the bottom of the programming solutions product page here: http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,395&Cat=5#JTAG3 Let me know if you have any more questions. Thanks, JColvin
  7. JColvin

    Analog Shield

    Strictly speaking and for practical purposes, it is not compatible with the Arduino Mega. It was designed for the Arduino Uno and the chipKIT Uno32, so while the shield would be able to physically connect to the Mega, signals that the IC's present on the Analog Shield are expecting to receive are mapped to different pins than what the shield would actually connect to. Let me know if you have any more questions. JColvin
  8. Hi, I am personally not familiar with Linux so I do not know if this is the best answer to your question, but one of the other users on the Digilent Forum explained how they were successfully able to run Waveforms on the Linux machine. You can check out the forum thread ).
  9. Hi, The WS2812 LED Strips were not made directly by Digilent from the ground up (so-to-speak) so we not developed a nice Digilent documentation for it as of yet. However, we have made links on the product page to two different Instructables that explain how you would get the LED Strips up and running on either a chipKIT uC32 or Uno32 ( well as the chipKIT WF32 or Max32 (http://www.instructables.com/id/Getting-Started-with-WS2812-LEDs-with-Digilent-chi/). Additionally, you can check out our blog post on the WS2812's (https://blog.digilentinc.com/index.php/new-product-ws2812b/), which explains how to recognize which LED Strip you have, how to power the LEDs, and communicating with LEDs. On the blog post we also recommend two more tutorials on running these LEDs by Phillip Burgess from Adafruit and from arcobotic on Instructables. Please let us know if you have any more questions.
  10. Hi ulvarg, I am personally not very familiar with FPGAs, but I will do my best to respond to your question. Naturally, I do not know you your current familiarity with FPGA's, so it is somewhat difficult for me to appropriately address your question within a single response. However, I do have two recommendations to help you get started. My first recommendation, which I strongly suggest, is checking out Digilent's learn site. Digilent offers free Learn Modules to help users, such as you and I, get started with projects using Digilent products, such as the Nexys 4. These are available at learn.digilentinc.com with a full list of projects that are currently available here. Within that list, you can click on the "Digital/FPGA" tab to view all the projects related to FPGA's ranging from just getting started with FPGAs to creating your own state machine. Also, one of our forum members has shown another user how they might get a DC motor started using a Basys 2 board. Granted, this is not a Basys 3 or a Nexys 4 board, but the implementation concepts for an FPGA will be similar. You can view the post
  11. From my understanding, that will work just fine to program the boards separately and connect them together later so that they can communicate. Please let me know if you have any more questions. Thanks, JColvin
  12. Hi kpparr, If you are only communicating between the Pmod headers, you should be able to power each of your boards from their own USB connector and attach them both to the same PC. As long as your boards aren't drawing a ton of current (which from your description sounds like you won't even be coming close to limit), this should not be an issue. I have done a similar project with two Digilent microcontrollers and powered them both from my laptop without any problems. Alternatively, you could program one (or both) of your FPGAs to ROM and use an external wall power supply to power your boards. However, I would not recommend trying to power one board off of the other board. I think going from J5 to J5 would result in too much of a voltage drop to successfully power both boards if you are powering the first board from a USB port. It may work if you were instead using an external power supply, but I would personally power the boards separately. I believe the Pmod Vcc is only able to output at 3.3V, so that is not within the required input voltage range of 4.5 - 5.5V (ideally 5.0V) that a Basys 2 board needs to operate. So in the end, I recommend powering the two boards separately. Let me know if you have any questions. Thanks, JColvin
  13. Hi Alex, The technical reference manual for the Analog Discovery, which lists the tolerance for its various pins, can be found on it's product page here (http://www.digilentinc.com/Data/Products/ANALOG-DISCOVERY/Discovery_TRM_RevB_1.pdf). Alternatively, they also check out the most up to date reference manual on the Digilent Wiki here (https://reference.digilentinc.com/analog_discovery:refmanual) Let me know if you have any more questions.
  14. Hi jpcastellino, Actually, the part that you're looking for is the TEMT6000X01 by Vishay Semiconductor. Unfortunately, this is not listed on the schematic, but we will be sure to include it in our reference manual on our Wiki site for the PmodALS. Thanks, JColvin
  15. Yes, but I think only the original poster, in this Alex, can mark this as solved.
  16. To get the Uno32 Pmod Shield to work you need to do the following: Make sure that in your main MPIDE folder where you originally installed MPIDE under the hardware/pic32/variants folder, you have the Uno32_Pmod_Shield with the C and H files (these are likely there already). If you do, (or do not have them), go to the product page for the Uno32 Pmod Shield, and download the board variants file available. If you did not have the C and H files, copy the "Uno32_Pmod_Shield" folder that you see from the download and paste it into the hardware/pic32/varients folder. Then, from the download, open up the readme text file. In the readme you will see a section that says: Copy this whole section and go to the boards.txt file that is available in the hardware/pic32 folder. Go to the bottom of that text file and copy this whole section in. Then, we need to make the following changes: The first is merely for convenience: underneath the top line of the section that we just copied into the text file which says type in the following: What this does is add the "chipKIT Uno32 with Pmod Shield" option into the chipKIT section when choosing your board in MPIDE. Next, and what makes all the difference, find the line (about 7 lines down) that says: Change this line to instead say: What this does is tell MPIDE to look for a linker script file that actually exists. Now, save this boards.txt file and close out any MPIDE program that you already have running. When you reopen MPIDE, you should see chipKIT Uno32 with Pmod Shield as a board option under chipKIT and the program which uses the Pmod Shield should now successfully compile, and more importantly, successfully run with demo code that uses any of the headers on the Pmod Shield. Please let me know if you have any questions.
  17. Hi, I was attempting to use the PmodOLED and was attempting to get it's demo code correctly. The demo code claimed you can use the Pmod Shield header JC, but it did not seem to be working. So, I did a bit of research and found out what the problem was and successfully found a way to fix it and have the Pmod Shield work. Check out my answer below for what you need to do.
  18. Hmm... they all seem to be working on my end (11/6/14, 10:20 a.m PST). I'm guessing it was only a temporary problem, unless you are still encountering difficulties.
  19. Hi jotran00, As the "Pmod Guy", I am not as familiar with FPGAs, but from my understanding a Spartan-6 FPGA will have enough ports and computational power to be able to all of the projects in the textbook. However, I do not know how the coding implementation and coding environment compare between a Spartan-6 FPGA and a Spartan-3 FPGA (the one that the textbook is based off of), since this is not my field of expertise. I would expect that both the implementation and environment should be very similar between the two types of boards though. Let me know if you have any more questions. Thanks, JColvin
  20. A customer asked me this question: hi I'm facing a problem while using DIGILENT BASYS2 SPARTEN 3E board. How can a sonar unit(external hardware) giving digital output pulses can be connected to the pmods. How are the 4 pmods in the board connected. With thanks and regards Aparna
  21. Hi Martin, We don't have a schematic of the PmodMAXSONAR directly available on the Digilent website because the module was developed by MaxBotix ®, so they did not release a schematic to us that we can distribute. However, you can go to the product page of the sonar piece on the PmodMAXSONAR and download the datasheet for the MB1010, which explains the functions of each of the pins. Personally, and because Digilent did not develop this Pmod from the ground up (so to speak), I do not know the output impedance of the pin. However, I think the PmodMAXSONAR uses a PIC16, so you are welcome to check out the corresponding PIC16 datasheet. Let me know if you have any other questions. Thanks, James
  22. Hi jotran00, The "Real Digital - A hands-on approach to Digital Design" book is designed to be a textbook used in a university classroom setting. Consequently, it is structured as a book for professors to teach from and for students to do problems from without being able to look up the answers from the back of the book. Because of this intentional design, there is no easy way to check the solutions to each of the problems. Correct me if I am wrong, but what I believe you are looking for is more along the lines of a user guide. Our textbook is not designed as a user guide, but we do offer many modules on learn.digilentinc.com where you can learn how to approach many of the problems. Let me know if you have any more questions.
  23. That's a good idea! It's pretty crowded inside the box though, so I'd be worried about fingers/candy causing the LEDs to short out and ruin the microcontroller...
  24. Hi, I attempted to get a picture put into one of my posts, but when I attempted to use the "Attach Files" at the bottom of the page, the picture I uploaded was less than 500 kB (499.90 kB), but the picture itself ended up being way smaller than its actual size (over a 1000 pixels in each direction). Also, I thought it looked a little weird that the "Attach Files" thought that after uploading the 499 kB file, it thought I had only uploaded 100 kB worth of file. I also have a question about the image hotkey in the toolbar above next to the "code" hotkey. I attempted to upload one of my pictures that I had on Instructables, (http://www.instructables.com/file/FPGFTJSI1NVDGIS), since the hotkey wants a URL, but apparently that particular file type isn't supported. So for my future reference, what file extensions are allowed for this feature? Thanks, James
  25. Hi everybody, I have made an Instructable on how to create Digilent's Box Monster! You can learn how to make the Box Monster here as well as the Halloween themed version on the Box Monster both the Digilent Blog, and Instructables.