Ich habe ein Projekt, das eine LED-Ausgabe erfordert. Im Moment verwende ich die Onboard-LEDs, aber ich möchte stattdessen 6 externe LEDs verwenden.
Welche IO-Pins sollte ich verwenden und wie sollte dies geschehen?
Ich vermute, dass es so einfach ist, sechs Ausgangsports zu finden, jede LED in Reihe mit einem Widerstand zu verdrahten und jeden Pfad mit Masse zu verbinden und dann die UCF-Datei zu bearbeiten, um die Namen der Entity-Ausgangsports den io-Ports zuzuordnen. Ist es so einfach? Kann mir jemand eine genaue Erklärung geben? Danke schön.
Ein Virtex-5 kann je nach gewähltem I/O-Standard und I/O-Bankspannung bis zu 24 mA pro I/O-Pin treiben (siehe DS202, Seite 7 im Virtex-5 FPGA-Datenblatt – DC- und Schalteigenschaften ) . Die Antriebsstärke kann in einer ucf-Datei eingestellt werden.
Beispiel UCF-Zeile:
NET "ML505_GPIO_LED[0]" ....... IOSTANDARD = LVCMOS33 DRIVE = 12 SLEW = SLOW;
Siehe Xilinx Constraints Guide für weitere Details.
Wenn Ihre LED einen höheren Strom benötigt, verwenden Sie einen FET, wie von @diverger vorgeschlagen. Sie können die ML505-Schaltpläne als Referenz verwenden , wie Xilinx LEDs mit dem FPGA verbunden hat (siehe Seite 10) . Dieses Board ist mit Dutzenden von NDS331N-FETs ( N-Channel Logic Level Enhancement Mode FET ) ausgestattet, um externe Geräte anzusteuern. Diese FETs liefern die Ströme zum Ansteuern der LED und wirken auch als Spannungspegelumsetzer. Ein 1,8-VI/O-Pin kann also eine 2,5-V-LED schalten. Die Verwendung des NDS331N als Pegelumsetzer für mittelschnelle Datenkabel – wie es auf dem ML505-Board der Fall ist – ist keine gute Lösung! (z. B. I²C-Leitungen)
Ignacio Vazquez-Abrams
asdf
Abweichler