Hi, Ich hoffe ich geh mit meinen Fragen keinen auf den Keks. Ich wills auf den Punkt bringen: Im Projektbeispiel des Infineon C515C-L wird das Bit "REN" in "SCON" gesetzt, obwohl in der Anwendung nur gesendet, aber nichts empfangen wird. Ich bräuchte einen Hinweis
Ich denk mal es ist deswegen, weil sie sich für die Zukunft absichern wollen, falls man in dem Projekt doch noch was seriell empfangen will. Notwendig wärs nicht..
Lens schrieb: > Hi, > > Ich hoffe ich geh mit meinen Fragen keinen auf den Keks. Nicht wirklich. Ist dir eigentlich schon aufgefallen, dass ausser dir in diesem Forum anscheinend kein Mensch den C515 in Kombination mit der Keil-Umgebung in Kombination mit deiner externen stdio/UART-Lib (wenn ich das richtig in Erinnerung habe, ist das ja kein Keil Teil) benutzt? Meine persönliche Meinung: scanf/printf werden auf einem µC hoffnungslos überschätzt. Schreib dir selber ein paar UART-Funktionen. Wenn du soweit bist, dass du einen String ausgeben kannst, hast du schon gewonnen. Der Rest ist dann nur noch: nach Bedarf den jeweiligen Datentyp zb mit itoa, für Debug-Zwecke durchaus auch schon mal mit sprintf, bzw. mit eigenen Funktionen in einen String zu verwandeln und ab da übernimmt dann deine UART-String-Ausgabe. direktes scanf/printf vermissen die Wenigsten. Das ist einfach zuviel Unterbau für zu wenig Funktionalität. Die Formatiermöglichkeiten kann man manchmal ganz brauchbar einsetzen, wenn man sich den Luxus leisten will/kann - aber das kann sprintf auch alles. Dazu brauch ich nicht die Komplexität des stdio-Unterbaus. Und mal Hand aufs Herz: scanf ist für Programme mit Benutzereingaben meistens sowieso nicht zu gebrauchen. Für die ersten Schritte im K&R ist es ok - denn irgendwo muss man anfagen. Aber Programme im Produktionseinsatz können diese Funktion sowieso nicht vernünftig nutzen, bzw. da ist dann ein Gespann aus einer Zeileneingabe und sscanf (wenn man schon eine der Xscanf Funktionen benutzen will) viel brauchbarer. Grund: Überlag dir mal, wie du das I/O System wieder standardkonform aus einem Fehler rauskriegst, den sscanf zwar meldet, dir aber ein I/O System in einem unbekannten Zustand hinterlässt. Du wirst sehen, das geht gar nicht.
Danke für die Antwort, Mir ist das auch schon klar geworden. Kaum verwend ich printf(), schon wächst die Hexfile um mindestens 1KByte. Ganz klar, eigene Funktionen sind am Besten, weil es dann auf die Anwendung zugeschnittsten ist und nicht unnötig Ressourcen frisst. Ich verwende Sie auch nur, um andere Sachen zu testen.. Es ist nur zu Debugging-Zwecken. gruß
Karl Heinz Buchegger schrieb: > Ist dir eigentlich schon aufgefallen, dass ausser dir keiner... Doch: Ebert und Kevin und Ludwig tun das die letzte Zeit auch... http://www.mikrocontroller.net/search?query=515c&sort_by_date=1 @ Lens: ihr könntet euch doch mal zusammensetzen... ;-)
Debugging sollte man nicht auf das Projekt nachtraeglich aufsetzen, sondern als Teil des Projektes mitplanen. Daher macht es Sinn debug Meldungen als Teil implementierten Protokolles laufen zu lassen. Kommunikation scheint ja Teil des Projektes zu sein...
Lens schrieb: > Im Projektbeispiel des Infineon C515C-L wird das Bit "REN" in "SCON" > gesetzt, obwohl in der Anwendung nur gesendet, aber nichts empfangen > wird. Solange niemand das RI auswertet, ist das REN schnurzpipegal.
Karl Heinz Buchegger schrieb: > Ist dir eigentlich schon aufgefallen, dass ausser dir in diesem Forum > anscheinend kein Mensch den C515 in Kombination mit der Keil-Umgebung in > Kombination mit deiner externen stdio/UART-Lib (wenn ich das richtig in > Erinnerung habe, ist das ja kein Keil Teil) benutzt? Na ja, ein paar wenige Leute kennen zumindest noch den SAB80C515 oder SAB50C517, die Vorgänger aus Siemens-Zeiten. Z.B. ich, Lothar nannte gerade welche, und ich glaube, den Peter Dannegger in Erinnerung zu haben. Der 80C515 hat viele Ähnlichkeiten mit dem C515C, dieser hat aber ein paar Modifikationen wie z.B. nur ein 6-Cycle-Core statt 12. Also, ich verwende dafür den SDCC als Compiler und Geany als IDE. Keil ist Top, aber Hobby-Leuten wohl erheblich zu teuer, das geht nun mal nicht. SDCC bietet aber auch alles, was das Herz begehrt, z.B. eine UART-Lib und FIFOs. Nur das Registerfile mußte ich dort mal anständig neu überarbeiten, das machte jemand nicht ganz sorgfältig. Lens schrieb: > Ich bräuchte einen Hinweis Laß REN einfach aus, dann funktioniert der Empfang schon nicht. Im User Manual sollten die Beschreibungen der bits aber auch stehen.
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.