5 Replies Latest reply on Oct 13, 2017 1:52 PM by John Beetem

    Altera/Terasic DE1 Output Voltage

    Duncan Fraser

      I am working on a project for university using Altera/Terasic DE1 Cyclone ii Starter Board. I am trying to test a servo module, the output waveform is as expected, but the output voltage is only about 5mV. Can someone give me a simple answer as to how i can change the output voltage which the board is supplying?

        • Re: Altera/Terasic DE1 Output Voltage
          John Beetem

          I'm not familiar with the DE1 or Cyclone II, but one possibility is that your output isn't strong enough to drive your load.  What kind of load are you driving?  If you disconnect the load, does the output work correctly?  Some FPGAs have programmable output drive, so if it the default strength is too low you may be able to increase it.  Otherwise you need an external driver.

          1 of 1 people found this helpful
            • Re: Altera/Terasic DE1 Output Voltage
              Duncan Fraser

              It was first connected to a servo, but when i wasn't seeing any movement (i had the pulse width controlled by onboard switches) i connected it directly to my oscilloscope. I was seeing the correct pulse width with the switches, between 1ms and 2ms but the peak to peak voltage was only 5mV.

               

              I then set up a simple verilog source which put the output high when a switch is set high then checked the voltage using my multimeter, the highest value i was getting was 66mV. After Talking with my lecturer this afternoon he suggested that the IO buffers might have blown, i will be taking the boar down to out lab technician to test the board/ replace it so i can get going with the project.

                • Re: Altera/Terasic DE1 Output Voltage
                  rachaelp

                  Hi Duncan,

                   

                  Other things which could be wrong:

                   

                  1) What buffer type have you chosen for your IO? If you have chosen an open drain output type type you'll need add a pull-up resistor.

                  2) I think that board might allow for configuration of the IO voltage for different banks (I can't remember it's a while since I checked the specs) so check the voltage config jumpers are connected correctly if it has any.

                  3) You say you were driving the servo, as in directly driving the coil? If so your lecturer might be right about it being blown. You wouldn't want to drive a servo coil directly from an FPGA output.

                   

                  Best Regards,

                   

                  Rachael

                  1 of 1 people found this helpful
                    • Re: Altera/Terasic DE1 Output Voltage
                      Duncan Fraser

                      We are not using any external buffer, the buffer on the DE1 board is just a resistive one . I am not sure about configurable voltage, online sources i can find online would indicate that the voltage is set for the IO Banks.

                       

                      The servo is connected to VCC5 and GND on the IO Banks which are connected directly to the ob board voltage regulator and would not appear to have a buffer on them, and i am reading 5v on the VCC5 pin, so the voltage regulator hasn't blown. The IO pin is only sending the servo signal out and would assume for the servos we have been given, Parallax servos, that the VCC would be driving the coil although i cannot be sure as i cannot find the datasheet on their website

                • Re: Altera/Terasic DE1 Output Voltage
                  John Beetem

                  Rachel is correct about driving coils.  You usually can't drive a coil (or motor or speaker) directly from an FPGA output because you usually need more current than a typical FPGA can source or sink.  You also must make sure you have a flyback diode.  The current through an inductor cannot be shut off instantaneously, and if you try to do this you get a large voltage spike.  The flyback diode provides an alternate path for this current so the voltage spike doesn't destroy the transistor you're using to switch current on and off.

                  3 of 3 people found this helpful