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.
> 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.
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
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 !
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
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
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.