GorgonMeducer
perf_counter
A dedicated performance counter for the Cortex-M Systick. It shares the SysTick with users' original SysTick function without interfering with it. This library will bring new functionalities, such as performance counter, delay_us and clock() service defined in time.h
https://raw.githubusercontent.com/GorgonMeducer/perf_counter/CMSIS-Pack/cmsis-pack/
https://github.com/GorgonMeducer/perf_counter/issues
lib/LICENSE
https://github.com/GorgonMeducer/perf_counter.git
- Add support for RT-Thread
- Other minor update
- Add support for FreeRTOS
- Other minor update
- Add new feature for RTOS. Now you can get cycle information for the current thread.
- Other minor update
- Include stddef.h in perf_counter.h to solve missing NULL definition issue.
- Improve support for IAR
- Fix issues found in foreach
- Other minor update
- Add CMSIS Dependency Check
- Add options for selecting between source code and library.
- Add GCC support to CMSIS-Pack
Cortex-M
SysTick
Performance Analaysis
Arm Compiler 5 (armcc) or Arm Compiler 6 (armclang).
GNU Tools for Arm Embedded Processors.
Support All Cortex-M based processors
Require CMSIS-CORE Support
Require RTX5 Support
Require FreeRTOS Support
Require Perf_Counter Core
Compile Cortex-M Processors with GNU Tools for Arm Embedded Processors.
Compile Cortex-M Processors with GNU Tools for Arm Embedded Processors.
Compile Cortex-M Processors with GNU Tools for Arm Embedded Processors.
Compile Cortex-M Processors with GNU Tools for Arm Embedded Processors.
A dedicated performance counter for Cortex-M systick.
A dedicated performance counter for Cortex-M systick.
A dedicated performance counter for Cortex-M systick.
A Patch for RTX5
//! \brief Enable RTOS Patch for perf_counter
#define __PERF_CNT_USE_RTOS__
A Patch for FreeRTOS
//! \brief Enable RTOS Patch for perf_counter
#define __PERF_CNT_USE_RTOS__
#define traceTASK_SWITCHED_OUT_DISABLE
#define traceTASK_SWITCHED_IN_DISABLE
extern void __freertos_evr_on_task_switched_out (void *ptTCB);
extern void __freertos_evr_on_task_switched_in(void *ptTCB, unsigned int uxTopPriority) ;
# define traceTASK_SWITCHED_OUT() \
__freertos_evr_on_task_switched_out(pxCurrentTCB)
# define traceTASK_SWITCHED_IN() \
__freertos_evr_on_task_switched_in(pxCurrentTCB, uxTopReadyPriority)
A Patch for RT-Thread
//! \brief Enable RTOS Patch for perf_counter
#define __PERF_CNT_USE_RTOS__