Hallo, hat jemand mit CubeMX, Keil, ArmClang & FreeRTOS es schon geschafft, Kernel Awareness hinzubekommen? Ich probiere den EventRecorder in Betrieb zu nehmen, aber da kommt sich alles in die Quere, mit ArmClang scheint einiges noch nicht getestet und es macht Unterschiede, von wo z.B. Freertos kommt. Man kann das ja über CubeMX zum Projekt hinzufügen und darüber alles konfigurieren(auch TouchGFX) und man könnte alles auch über die Keil Packages hinzufügen(Freertos, Eventrecorder, etc) was dann wieder nicht 100% mit TouchGFX zusammenspielt. Passt man dann manuell Header an, hat man das Problem, das bei der nächsten Codegenerierung alles wieder futsch ist(nicht bei den CubeMX generierten Sachen...wenn man die Änderungen dort an die richtigen Stellen packt, bleibt das bestehen) Aber irgendwie ist das Zusammenspielt nicht so 100% rund oder ist das Gefummel so gewollt?
ok, die Frage war unpräzise gestellt. Ursprünglich wollte ich cubeMX&touchgfx zusammen mit Keil RTX5 verwenden. Die Mischung aus Keil RunTime Environment & CubeMX Codegenerierung funktioniert in dem Fall aber nicht(zumindest hab ich es nicht hinbekommen) Deshalb dann mit Freertos 10 mit cmsis V2 API, TouchGFX usw alles per CubeMX zusammen mit dem Keil EventRecorder Für den EventRecorder benötigt man eine freertos_evr.h. CubeMX generiert die nicht, aber Keil liefert eine mit. Die soll mit RTX5 funktionieren. Von daher war mein Ansatz, RTX5.scvd für den Komponentenviewer zu verwenden und ich hätte erwartet das Freertos mit cmsis v2 API damit dann tut, da Keil RTX auch cmsis-v2 implementiert. Das geht aber nur teilweise. Z.B. Threadnamen werden nicht angezeigt. Weiß jemand wie da das weitere Vorgehen wäre? Meine Eventrecorder defines sehen so aus:
1 | #define configEVR_SETUP_LEVEL 1
|
2 | #define configEVR_INITIALIZE 1
|
3 | |
4 | #define traceTASK_NOTIFY_GIVE_FROM_ISR_DISABLE
|
5 | #define traceTASK_NOTIFY_TAKE_BLOCK_DISABLE
|
6 | #define traceTASK_NOTIFY_TAKE_DISABLE
|
7 | #define traceTASK_NOTIFY_WAIT_BLOCK_DISABLE
|
8 | #define traceTASK_NOTIFY_FROM_ISR_DISABLE
|
9 | //#define traceTASK_NOTIFY_DISABLE
|
10 | #define traceTASK_NOTIFY_WAIT_DISABLE
|
11 | |
12 | #define configEVR_LEVEL_TASKS 0x05
|
13 | #define configEVR_LEVEL_QUEUE 0x05
|
14 | #define configEVR_LEVEL_TIMERS 0x05
|
15 | #define configEVR_LEVEL_EVENTGROUPS 0x05
|
16 | #define configEVR_LEVEL_HEAP 0x05
|
17 | #define configEVR_LEVEL_STREAMBUFFER 0x05
|
18 | |
19 | #define USE_TRACE_EVENT_RECORDER
|
Einige der Traces musste ich deaktivieren, da sich da anscheinend intern Parameter geändert haben. Weiß da jemand weiter und hat das schonmal benutzt?
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.