led lights up without touching the wire


Recommended Posts

hello i am new here.

i just bought a papilio pro and i have a question.

i connected a led to A(15) and the gnd.

and just programmed in vhdl set A to out.

it worked and A <= "0000000000000001"

it light up.

now i set the C port to output and

A <= C

to my suprice if i stick a wire in the C(15) slot the led turned on.

also if i was just close to the wire not touching it, it turned on.

i feel like something is wrong, my multimer says that port C(15) actualy gives 1.2 volts.

it feels like i am grounding the curcuit when i touch the hangin wire.


i am sorry for my bad english.

i sum up.

how do one implement an input button correctly that is hocked up to a breadboard.


thanks for all your help.

Link to comment
Share on other sites

I assume you meant to say that you set the C port to input, not output. You now have a floating input unless you go into the constraints UCF file and assign a pull-up or more likely in this case a pull-down to it. This will stop it picking up noise and giving you unexpected results.

You can also do this with an external resistor if you find the hardware way easier for you as a beginner.

Link to comment
Share on other sites

thanks for your help :)

i added | pulldown=true; to to the contraint file on all the c ports.

question now when c(14) is pulled down it respond when i feed it 3v3.

is this an ok voltage level or could it be harmfull for the device?

also where can i read more about pullups and pulldown, and how they work?


lastly my goal is to implement an soft microprocessor, where can i read about how to load and read

data to a memory cell i created in vhdl.

maby a book you could recomend or website.

thanks a lot :)

Link to comment
Share on other sites

Don't forget to download the ZAP IDE and look at the AVR8 and ZPUino Soft Processors, there is a lot to be learned from using them.


Here is an app note that talks about using BRAM.

You can take a look at the data2mem User Guide too.

There is also a wizard in coregen to generate a memory block out of bram.



Link to comment
Share on other sites


This topic is now archived and is closed to further replies.