Hi Ich weiss das es viele Beiträge gibt für printf allerdings habe ich leider keine Lösung gefungen. Ich möchte bestimmen wie lange mein Rechtecksignal auf 1 ist. dazu benutzte ich einenn externen Interrupt und einen Timer. Nun möchte ich mir alle timerergebnisse ausgeben lassen damit ich sehen kann wie weit die werte von einander abweichen. Wenn ich ein printf programmiere mit den timerwert habe ich zwar keine Proble mit dem Compelieren und Linken aber wo kann ich mir denn jetzt das printf anschauen???? Danke für eure Hilfe lg Tartaruga Ps: AVR Studio 4.13 avr libc 1.4.6
Tartaruga wrote: > dem Compelieren und Linken aber wo kann ich mir denn jetzt das printf > anschauen???? Gute Frage. Welche Möglichkeiten zur Ausgabe hast du denn? Man kann im WinAvr das Standard I/O System so konfigurieren, dass man die Ausgabe auf jedes beliebige Ausgabegerät bringen kann. Dazu muss man sich eine Funktion schreiben, welche sich um den Transport eines Zeichens kümmert. Diese eine Funktion wird dem stdio System quasi untergejubelt. Das stdio System benutzt zur Ausgabe immer deine Funktion und damit kannst du die Ausgabe dorthin routen wo du sie haben willst.
Z.B. in einem Terminalprogramm auf dem per RS232 angeschlossenen PC. Allerdings ist auf AVR Seiten etwas Programmierarbeit nötig (Umleitung der STDOUT auf UART; UART Initialisierung) Beitrag "Anweisungsverhalten von printf() unter WinAVR" Gefunden von Fr. Google mit den Stichworten avr-libc printf
@ Tartaruga (Gast) >dem Compelieren und Linken aber wo kann ich mir denn jetzt das printf >anschauen???? Direkt gar nicht. Aber über fprintf kannst du nen String erzeugn, welcher dann auf denUART ausgegeben werden kann. AVR-GCC-Tutorial MfG Falk
Danke für eure Antworten ich habe gehofft das ich keinen UART programmieren muss aber so wie es aussieht wird es unumgänglich sein Danke für eure schnelle Hilfe lg Tartaruga
Tartaruga wrote: > Danke für eure Antworten ich habe gehofft das ich keinen UART > programmieren muss aber so wie es aussieht wird es unumgänglich sein Nein, du kannst ja bspw. auch ein LCD-Display anschließen und es darauf ausgeben. ;-) Beispiele findest du, wer hätte es gedacht :-), im Beispielcode: http://www.nongnu.org/avr-libc/user-manual/group__stdiodemo.html
Jörg Wunsch wrote: > Tartaruga wrote: > >> Danke für eure Antworten ich habe gehofft das ich keinen UART >> programmieren muss aber so wie es aussieht wird es unumgänglich sein > > Nein, du kannst ja bspw. auch ein LCD-Display anschließen und es > darauf ausgeben. ;-) Wenn man schnell schauen kann und den ASCII Code auswendig kann, kann man auch einfach mal 8 LED an einem Port anschliessen und dort die LEDs flackern lassen :-)
Oder Du debugst mittels JTAG-Interface und schaust Dir den Inhalt von fprinf direkt im Speicher des uC an.
Gregor B. wrote: > Oder Du debugst mittels JTAG-Interface und schaust Dir den Inhalt von > fprinf direkt im Speicher des uC an. Eher sprintf() dann.
@Karl heinz Buchegger Ich habe LEDs angesteuert zwecks hardware debugging allerding togglen die nicht mehr sonder leuten nur noch aber danke für den tipp
Tartaruga wrote: > @Karl heinz Buchegger > Ich habe LEDs angesteuert zwecks hardware debugging allerding togglen > die nicht mehr sonder leuten nur noch > aber danke für den tipp Das sollte eigentlich ein Scherz sein :-) Nächstes mal mache ich 10 Smilies.
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.