Hallo, bevor ich zum Problem komme erstmal erstmal mein Setup: In einem Projekt benutze ich den STM8S103K4 mit RS232 Schnitstelle zum PC sowie den Debugger ST-Link(SWIM Interface). Interner RC-Oszi 16MHz. Entwicklungsumgebung ist die STVD mit COSMIC Compiler, Libs von ST. Die Funktion des Projekts: Der Controller nimmt vom PC Kommandos entgegen und erzeugt dann entsprechend an einem Pin ein bi-phase-Codiertes Signal mit 1200 baud. Das Problem: Soweit so gut. Wenn ich im STVD nun den Debugger starte, wird das Programm in den Controller geladen und ausgeführt. Alles funktioniert wie gewünscht, 1200 aud Signal am Ausgang, perfekt arbeit erledigt. Nun beende ich den Debugger, unterbreche die Betriebsspannung für ein paar Sekunden und lasse die Schaltung "normal" laufen, so wird plötzlich mein Signal mit nur noch ca. 289 baud ausgegeben. Ich glaub ich spinne. Details: Um ein sauberes Timing zu erhalten benutze ich den Timer1 als simplen Upcounter. Nach jedem Timer Overflow wird in der ISR das Signal bearbeitet und entsprechend die Bits/Pinstatus gesetzt. Basis des Clocks ist der HSI mit 16MHz. HSI = fMaster = Timer1 Clock. Frage(n): Wer kennt dieses Verhalten? Was hat das mit dem Debugger zu tun? Mir ist dies bisher aus keinem anderen Projekt bekannt. Was wird im STM8 mit Debugger anders eingestellt als ohne Debugger? Was kann ich tun, um das Problem zu debuggen-lösen? Ideen? Was ich bisher schon geprüft habe: 1. alle möglich Clocks habe ich mal am CLK_CCO ausgegeben uns am Oszi nachgeprüft => funktioniert mit/ohne Debgger richtig 2. andere MCU getestet => selbes Verhalten 3. Config des Timers nicht mit der Lib gemacht sondern von Hand => kein Unterschied im Verhalten 4. ST-Link Firmware Update => nix Neues 5. Internetsuche nach dem Problem => anscheinend habe nur ich das Problem 6. Errata Sheet der STM8 Controller durchgesehen => Nix dabei was hilft 7. Forum bei STMicroelectronics befragt => kaum Feedback, keine Ideen yum Debuggen 8. Recherche im Inet wegen Toolbugs => kann nix finden 9. Datasheet Studium brachte keine neuen Ideen was ich evtl. falsch mache Fazit: Eigentlich kann es das Problem garnicht geben !? Bin offen für alle Ideen und Anregungen. Viele Grüße, avrGerd
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.