Hallo, ich bin gerade dabei eine Debug-Umgebung für unsere µC mit Lauterbach Tools aufzubauen. Momentan mache ich das für einen STM32L151, welcher schon in einem fertigen Produkt eingebaut ist. Ich habe hier eine CombiProbe mit 2 getrennten DAPs zur Verfügung damit ich beide µC parallel Tracen + Debuggen kann. Später soll das für einen F4xx angepasst werden. Debugging geht ohne Probleme, auch parallel mit synchronisierten T32 Fenstern mit Stepping usw. Nur am Tracing hängt es noch. Die µCs sind über SWDP (SDIO, SDCK, SDO) , 4xTraceData und 1xTraceClk angeschloßen. Ich habe das Tracing mit unserem Keil ULINK Pro getestet und es funktioniert aus sicht des µCs auf jeden Fall. Bleibt nur die Frage was ich am Lauterbach Debugger einstellen muss um den Trace raus zu bekommen. Ich habe in der Keil IDE ein paar Register angeschaut. Die Inhalte der Register zwischen Keil und Lauterbach unterscheiden sich teilweise. Ich versuche das im PRACTICE Skript zwar richtig einzustellen, aber das gelingt nicht so richtig. Unter anderem weil der Lauterbach wohl ein paar Register anders setzt oder manche Register nicht anfasst. Ich habe mal ein Teil des Setup-Skripts und des Register Dumps mit angehängt. Vielleicht kann jemand was damit anfangen. (Die Werte im Dump, welche sich unterscheiden, habe ich mal mit T32 markiert.) Als weitere Info: Ich habe bereits Versucht über ITM im NRZ Mode printfs zu empfangen. Hier empfange ich sicher etwas, nur leider kann ich das in keinem Terminal ausgeben. Die Bsp-Skripte von Lauterbach sind hier nicht sehr hilfreich. Die Anschlüße der Adapter werde ich auch mal checken aber das sollten die Standard 20pin Anschlüsse mit ETM sein sein. Support von Lauterbach habe ich schon angeschrieben. Das dauert leider und ist teilweise nicht sehr hilfreich, weil oft einfach auf die Beispiel Skripte verwiesen wird. Kann mir jemand weiter helfen? Hat jemand Erfahrung mit den STM32L15x & Lauterbach Trace gemacht? Danke! Schönes Wochenende und viele Grüße Andreas
Hi, nur der Vollständigkeit halber... Das ist die ETM Initialisierung für den STM32L151VB. Problem war wohl die T32 Software. Hatte Release 2.2016 installiert. Nach einem Update auf ein aktuelles Release (09.2016) konnte man die AutoFocus Funktion verwenden. Auch die Initialisierung der Register ist etwas anders. ; ; set pinmux ; ; Prevent error during power saving states and stop peripherals in debug mode ; ; HERE: Normaly "RCC_AHBENR: IO port E clock enable" should be enabled. This should already be done by FW Data.Set SD:0x4002381C %Long 0yXXXXxxxxXXXXxxxxXXXXxxxxXXX1xxxx ; enable GPIOE Clock Data.Set SD:0x40021000 %LONG 0yXXXXxxxxXXXXxxxxXX1010101010xxxx ; PortE configuration Data.Set SD:0x40021008 %Long 0yXXXXxxxxXXXXxxxxXX1111111111xxxx ; PortE configuration GPIOx_OSPEEDR 0x00003FF0 IF CANALYZER() ( CAnalyzer.RESet CAnalyzer.Init ETM.ON ETM.PortSize 4 Trace.Method CAnalyzer Trace.Mode STREAM ) IF VERSION.BUILD.BASE()>=74752. ( CAnalyzer.AutoFocus ) ELSE ( ;for uTrace & Combiprobe use manual calibration CAnalyzer.ClockDELAY Large ;possible values None,Small,MEDium,Large,MAXimum ) Gruß Andreas
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.