Hi NXP Team,
We are trying to use the Event Recorder to produce test coverage results for GCOV/UNITY.
This will be executed by using the Keil Simulator. We are setting the EVENT_TIMESTAMP_SOURCE = 0 in EventRecorderConf.h to skip the double declaration of Systick_Timer IRQ Handler. When we do this, the 1st source file to generate the GCOV Test Coverage produces wrong results and followed with the other source files with zero percent test coverage. Debugging inside makes the progress step by step even if we dont put a breakpoint, meaning it stops with Access Violation on 0xE0000001 even pressing the RUN button to finish the test.
But if we use the EVENT_TIMESTAMP_SOURCE = 1 in EventRecorderConf.h, we need to exclude any duplicated Systick_Handler IRQ Definition along the code to prevent the compilation error and retain the one in EventRecorder.c. This can finish the test inside debug without breakpoint by pressing the RUN Button.
We noticed also the CMSIS File named core_cm4.h v2.10 has no definition of the DWT Structure. While the latest LPCOpen Library has the DWT Definition. Is the DWT feature enabled on LPC4330FBD144 using it together the EventRecorder without any complications? Please advise.
Thanks and Good Day,
Leo
解決済! 解決策の投稿を見る。
I finally managed to solve the problem by Mapping the DWT locations on UNITY/GCOV Environment.
Added address definitions with READ/WRITE Access on .ini file from 0xE0000000 to 0xE000EDFC.
The test coverage now appears without linker error on Systick_Handler IRQ with EVENT_TIMESTAMP_SOURCE = 0.
I finally managed to solve the problem by Mapping the DWT locations on UNITY/GCOV Environment.
Added address definitions with READ/WRITE Access on .ini file from 0xE0000000 to 0xE000EDFC.
The test coverage now appears without linker error on Systick_Handler IRQ with EVENT_TIMESTAMP_SOURCE = 0.
The issue likely stems from incorrect configuration of the Event Recorder with EVENT_TIMESTAMP_SOURCE = 0. Verify DWT availability for your LPC4330FBD144. Use EVENT_TIMESTAMP_SOURCE = 1 with proper SysTick handler management. Simplify your test case and use a debugger to pinpoint the issue.