www.mikrocontroller.net

Forum: FPGA, VHDL & Co. xil_printf Befehl


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich nutze gerade einen Spartan3 FPGA von Xilinx. Zur Kommunikation mit 
einen PC nutze ich Microblaze mit Uartlite, welcher als Standart In- 
Output definert ist. Das funktioniert aus alles wunderbar.
Nun möchte ich mittels dem xil_printf Befehl hexadeizmale Zahlen an 
einen PC senden, was ich leider nicht hinbekomme.
Ich habe es wie folgt probiert: xil_printf("%X", 0x30);
So funktioniert es leider nicht. Hat einer von euch ne Idee wie es 
funktionieren kann?
Danke schonmal.

Autor: Stefan Behrendt (Firma: HS Wismar) (gonse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte ähnliche Probleme, als ich floats ausgeben wollte.
xil_printf scheint dies nicht zu unterstützen.
Ich bin auf printf aus der stdio.h ausgewichen und das funktioniert 
auch.

Gruß,
Stefan

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Problem ist, dass ich das Programm in den BRAM schreibe und da kein 
printf rein passt. Gibt es noch andere Lösungen?

Autor: Stefan Behrendt (Firma: HS Wismar) (gonse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schreibe dir doch deine eigene printf Funktion.
Dort rechnest du den Zahlenwert in einen String um, der die hexadezimale 
Ziffernfolge enthält.
Dann den String per xil_printf rausschicken.

Gruß,
Stefan

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es den da keine andere Lösung. Ich hatte gehört das man mit dem 
Befehl Hexadezimale Zeichen senden kann.
Noch einer eine Idee?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Gast (Gast)

>Gibt es den da keine andere Lösung. Ich hatte gehört das man mit dem
>Befehl Hexadezimale Zeichen senden kann.
>Noch einer eine Idee?

Einfach die Umwandung HEX-ASCII selber machen. Ist ja nun weissgott 
trivial.

MFG
Falk

Autor: Fpga Kuechle (fpgakuechle) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
> Gibt es den da keine andere Lösung. Ich hatte gehört das man mit dem
> Befehl Hexadezimale Zeichen senden kann.
> Noch einer eine Idee?

Welcher Befehl: printf oder das abgemagerte xil_printf ?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Umwandlung selber schreiben würde ich ja nun auch hinbekommen. Blöd 
ist nur wenn man Steuerzeichen senden muss. Wenn mir einer sagt wie das 
gehen soll dann bin ich dankbar.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Gast (Gast)

>Eine Umwandlung selber schreiben würde ich ja nun auch hinbekommen. Blöd
>ist nur wenn man Steuerzeichen senden muss. Wenn mir einer sagt wie das
>gehen soll dann bin ich dankbar.

???
Steuerzeichen senden?
Die kannst du einfach binär senden.

MFg
Falk

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So hab ich das jetzt auch gemacht.

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.