mikrocontroller.net

Forum: FPGA, VHDL & Co. RS232 bei Xilinx Spartan 3A DSP 1800A


Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

beschäftige mich seit paar Tagen mit dem Xilinx Spartan 3A DSP 1800A - 
Kit und mir stellt sich die Frage, wie ich eine Verbindung über RS232 
mit dem PC herstellen kann.

Laut nem allgemeinen UART Quellcode sind neben Rx und Tx weitere 
Ports/Bits nötig, um eine Verbindung aufzubauen. Leider wird im Handbuch 
nicht weiter darauf eingegangen... nur die Ports für RXD (N21) und TXD 
(P22) werden angegeben.

Könnte mir da bitte jemand bisschen Klarheit verschaffen :D Das wäre 
echt super nett :)

Gruß ayk

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für RS232 (ohne Handshake und Drumrum) reichen RXD, TXD und GND aus.

> Laut nem allgemeinen UART Quellcode sind neben Rx und Tx weitere
> Ports/Bits nötig, um eine Verbindung aufzubauen
Welcher Code?

Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mal in Google nen Quelltext gefunden für VHDL... der recht 
"umfangreich" war.

Zurück zu meiner Frage :D Kann ja nicht sein, dass ich einfach auf TXD 
rausschicken kann oder? Ich mein solche Einstellungen wie Baudrate etc? 
Muss ich dafür nen Taktteiler machen?

P.S.: Sry für meine "trivialen" Fragen; bin noch Neuling in diesem 
Gebiet :D

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kann ja nicht sein, dass ich einfach auf TXD rausschicken kann oder?
> Ich mein solche Einstellungen wie Baudrate etc?
> Muss ich dafür nen Taktteiler machen?
Oh, so dicht am Anfang... :-/

Wenn du eine Verbindung über RS232 machen willst, solltest du dir erst 
mal die Spezifikation der RS232-Schnittstelle ansehen (insbesondere das 
Timing). Dort siehst du dann, dass du bestimmte Zeiten (Baudrate) und 
Abläufe (Startbit, Daten, Stopbit) einhalten mußt. Und diese 
Rahmenbedingungen mußt du in deiner VHDL-Beschreibung beachten und 
abarbeiten.

> beschäftige mich seit paar Tagen mit dem Xilinx Spartan...
Aber es drängt sich mir ein wenig die frage auf, ob du dich damit nicht 
etwas überforderst...

> Muss ich dafür nen Taktteiler machen?
Hast du schon die berüchtigte blinkende LED und den Hoch-Runter-Zähler 
(das "Hello World" der Hardware) realisiert? Es könnte sein, dass du 
schon an wesentlich einfacheren Aufgaben (als die RS232) noch ein paar 
Tage zubringst.

Autor: Robert Schelkle (Firma: Student) (rschelkle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ayk,

also die wohl einfachste Methode um eine Kommunikation via RS232 mit nem 
PC herzustellen ist, du realisierst einen Microcontroller (bspw. 
MicroBlaze oder PowerPC) und verlagerst die Gestaltung der Kommunikation 
in Software.

Welche Werkzeuge stehen dir zur Verfügung?

Gruss Robbi

Autor: Boris M. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ayk,

auch ich bin seit ein paar Tagen stolzer besitzer eines Spartan-3A DSP 
1800A Boards. Ich denke mein Thread könnte dir am Anfang etwas helfen. 
Weiter unten darin habe ich mal ein paar Einsteiger-Aufgaben gepostet 
(die ich selbst noch am lösen bin) Unter Punkt 1.3 geht es dabei auch um 
die RS232 Schnittstelle - davor sollte man aber Punkt 1.1 und 1.2 gelöst 
haben:)

Falls du nicht den ganzen Thread lesen willst hänge ich hier mal die 
Aufgaben an. Für die ersten beiden habe ich 3,5 Tage gebraucht:( Aber es 
hat sich gelohnt!!!

Gruß Boris

Autor: berndel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also ich weiss ja nicht, aber habt ihr euch das:
http://www.fpga4fun.com/SerialInterface.html
mal angesehen?

Autor: Boris M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>also ich weiss ja nicht, aber habt ihr euch das:
>http://www.fpga4fun.com/SerialInterface.html
>mal angesehen?

Schöner Link und einigermaßen gute Beschreibung für einen Einsteiger:)

Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstmal vielen Dank für die zahlreichen Infos :)

Bin jetzt soweit, dass ich meine Daten über RS232 rausschicken kann, 
funktioniert auch einwandfrei :D

Boris, sag ma, hast du es schon geschafft, den PROM zu programmieren? 
Wenn ich die Jumper für M2:M0 auf 1:0:1 stelle, sehe ich leider in 
IMPACT in der Chain meinen PROM Baustein nicht?!? Hab ich da nen 
Denkfehler? Hab schon sämtliche Jumperstellungen versucht, leider ohne 
Erfolg :)

Wenn diesbezüglich Infos kommen würden, wäre ich super dankbar :D

Gruß @ all...

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Jumper für M2:M0
Das ist die falsche Ecke. Damit wird "nur" der Config-Modus des FPGAs 
umgestellt (Seriell oder Parallel, Slave oder Master).

Du mußt die Jumper für die JTAG Chain finden und richtig setzen.

Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Jumpersettings (ausser M2:M0) sind auf Werkseinstellung und im 
Handbuch konnte ich auch nicht sehr viel finden. Müsste nicht 
theoretisch die Chain richtig erkannt werden, wenn ich noch nichts 
umgesteckt habe? Hab zwar versucht die Jumper in der Nähe des PROMs 
umzustecken, aber leider tut sich da wenig -.-.

Werd noch paar Datenblätter durchgehn, mal schaun ^^

Kann es auch an der Software Version liegen? Hab im moment die von der 
mitgelieferten CD installiert... Webpack 9.2i.

Sollte ich mal auf V10 uppen? Schaden kanns ja nicht :D

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aykut T. wrote:

> Kann es auch an der Software Version liegen? Hab im moment die von der
> mitgelieferten CD installiert... Webpack 9.2i.
>
> Sollte ich mal auf V10 uppen? Schaden kanns ja nicht :D

Lieber nicht. Im Vergleich zur 9.2.0.4 ist die 10.1 extrem instabil. Bei 
Xilinx sollte man meiner Meinung nach immer mit der ältest-möglichen 
Version arbeiten.

Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm... ok...

Leider löst das mein Problem auch nicht ;)

Laut Datenblatt MÜSSTE die PROM in der Chain erkannt werden... wird sie 
aber nicht :/

Hab auch schon ein 2. Eval Board getestet... das gleiche Problem. Der 
Fehler muss also an mir liegen :D

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Laut Datenblatt MÜSSTE die PROM in der Chain erkannt werden...
Ich habe mir den Plan vom Board mal angeschaut: da ist kein Config-Prom 
in der Chain. Das Config-Prom ist entweder U1 (paralleles Flash) oder 
U16 (SPI-Flash). Diese Bausteine mußt du irgendwie anders programmieren.

So vielleicht:
http://www.xilinx.com/support/documentation/applic...

Autor: Ayk T. (ayk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke dir Lothar :D Hab mir noch paar Dokus durchgeschaut und bin dann 
letztendlich bei Avnet statt Xilinx fündig geworden. Da gibts ne gut 
erklärte Anleitung, wie die SPI programmiert werden kann. Hab mal den 
Link mit rein, falls es wen interessiert (Für den Download Bereich ist 
ein Account nötig).

http://www.em.avnet.com/spartan3a-dsp

Gruß ayk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.