www.mikrocontroller.net

Forum: Compiler & IDEs printf Output auf Monior


Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo GCC-Spezialisten,

bin AVR-GCC "Frischling" = Anfänger und versuche in C Fuß zu fassen.
Als Neuling versucht man natürlich gleich mit komplizierten Programmen 
zu lernen.So ein Programm kompliziertes sieht dann so aus:

/****************
#include <stdio.h>

int main(void)
{
printf(“Hello world!\n”);
return 0;
}
/****************

Gleich Vorweg : Nach dem "make" scheint alles i.O (kein Fehler).

Meine Frage :
=============
Wo oder wie kann ich dieses "Hello world" auf meinem ´Bildschirm sehen 
??

Habe nun einige Tage im Internet herumgestöbert um eine Antwort darauf 
zu finden.Eine einzige hab ich gefunden :

"AVR Studio has a simulator that runs under Windows that can "run" the 
output of avr-gcc."

Habe aber leider im AVR-Simulator keine Möglichkeit gefunden, die 
Ausgabe von "printf" auf den Bildschirm umzuleiten.

Bevor ich wieder zu Assembler zurückgehe bitte ich daher um Eure Hilfe 
!!

Noch zur Info : benutze AVR-GCC Version 4.3.0 (WinAVR 20080610)
AVR-Studio Version 4.15_b623

Danke für Eure Nachsicht (Frischling) und Eure Hilfe !

Liebe Grüße aus Wien.

Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry : "Monior" soll natürlich "Monitor" heißen !!

T´schuldigung !!

Autor: Kobaltchlorid (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wo oder wie kann ich dieses "Hello world" auf meinem ´Bildschirm sehen

Hast du denn an deinen AVR einen Bildschirm angeschlossen? Wohl eher 
nicht.

printf schreibt nach C-Standard auf die Standard-Ausgabe. Bei einem PC 
ist das eben der Bildschirm, bei einem Mikrocontroller ist das 
üblicherweise der UART, also die serielle Schnittstelle. Wenn der µC 
mehrere UARTs hat, ist es üblicherweise UART0.

Du müsstest also UART0 korrekt aktiviert und initialisiert haben, den 
UART über einen RS232-Pegelwandler (z.B. MAX232) an die serielle 
Schnittstelle deines PCs anschliessen und auf deinem PC ein geeignetes 
Terminalprogramm mit den richtigen Schnittstelleneinstellungen laufen 
haben, dann siehst du deine printf-Ausgabe auch auf dem PC-Monitor.

Solltest du ein alphanumerisches LCD an deinem µC haben, kannst du das 
ebenfalls als Standardausgabe einrichten, du musst dann halt die Ausgabe 
von printf durch entsprechenden Code auf das LCD umleiten.

Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Kobaltchlorid,

ist mir schon klar, daß AVR-Studio/AVR-GCC keine xyz.exe von meiner 
xyz.c Datei erzeugt, die ich dann unter Windows oder DOS laufen lassen 
kann !!

Ist mir auch klar, daß ich über einen UART/LCD mein "printf" anzeigen 
lassen kann.

Habe nur nach einer Möglichkeit gefragt, ob es möglich ist, direkt unter 
AVR-Studio oder mit irgend einem kryptischen Make-File-Command dieses 
"Hello World!" auf meinem Bildschirm ankommen zu lassen.

Ich frage mich aber schon, wie ich ein Programm mit "printf" wirklich 
testen kann.

Die einzige Möglichkeit ist es also, an dieses Progrämmchen eine 
UART/LCD-Routine dazuzulinken, in den uC zu flashen und zu schauen, was 
rauskommt??

Danke für Deine Zeit und Deine Mühe!

Liebe Grüße
Ibsimed1

Autor: Klugscheisser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Such mal nach Hapsim.

Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Klugscheisser,

habe mir Hapsim erst einmal runtergesaugt.
Werde morgen die Software einmal testen.
Du siehst an der Uhrzeit, daß ich heute sicherlich nichts mehr beginne.

Berichte Euch gerne, wie´s funktioniert.

(Die Vollversion mit 170 US$ ist aber nicht gerade ein 
Shareware-Preis!!)

Danke nochmals !

Autor: Klugscheisser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welche Vollversion? Wovon?

Guckst Du hier: http://www.helmix.at/hapsim/

Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Klugscheisser,
sorry, hab da was durcheinander gebracht !!

Bin gerade am HAPSIM-Testen.Als Anfänger habe ich jetzt natürlich 2 
Probleme :

1.) Verständnisprobleme mit C
2.) muß ich mich erst einmal mit HAPSIM vertraut machen.

Na ja, eins nach dem anderen.

Danke nochmals für Deinen Tip!

Liebe Grüße

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht umsonst gibt das "Standard Minimalprogramm" auf eine 
Mikrocontroller eben nicht "hello world" aus, sondern lässt eine LED 
blinken. Beispiele dafür gibts oben rechts im Tutorial.

"Hello world" bekommst du mit dem AVR und printf über die serielle 
Schnittstelle auf ein daran angeschlossenes Terminal. Siehe dazu die 
avrlibc-Doku.
Dazu brauchst du entweder die passende Hardware, also z.B. eine Max232 
am AVR, daran einen PC mit Terminalprogramm, oder den passenden 
Simulator, z.B. VMLAB. Letzteres ist freeware, aber leider nie ganz 
fertig geworden. Trotzdem nicht schlecht.

Oliver

Autor: Ibsimed1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Oliver,hallo Klugscheisser,

o.k, hab`s begriffen !!

Ohne Hardware + UART-Code im uC kein "Hello World!"

Klugscheisser:

Das "HAPSIM" ist zwar nicht schlecht, um aber mein geliebtes "Hello 
World!" am PC-Monitor auszugeben mus man den uC-internen UART trotzdem 
coden.

Nochmals vielen Dank an alle, die sich die Mühe und die Zeit genommen 
haben mein "Problem" zu lösen.

Liebe Grüße
Ibsimed1

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]
  • [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.