Merhaba,
Bir projede FreeRTOS kullandım.Ancak hiç software timer kullanmadım.
Şimdi ihtiyaç gereği, işlemci kullanımını, stack durumunu vs takip etmem gerekiyor.
Bir task içinde sistemi monitör etmek istiyorum.
Özellikle işlemci kullanımını nasıl yapabilirim?
Idle taska girildiğinde bir timer başlatsam, çıkınca durdursam, elimde bir veri olacak.Ama cihaza bir kesme geldiğinde kernel bunu nasıl bilecek ve/veya gerçekten idle task içinde ne kadar süre kalındığını nasıl bilebilirim?
https://stm32f4-discovery.net/2015/05/cpu-load-monitor-for-stm32f4xx/
buradan yola çıkarak birşeyler yapılabilir.
idle task içinde yazılımsal olarak counter yapıp başka bir taskta mesela 1hz ile dönen bir taskta bu saydığın sayının hep saysaydı kaç olaağına oranına bakarsın. test için de tüm taskları kapatır koşturursun birde tek taskta bekletir koşturursun. birinde 0 gibi birşey, diğeri de 99 gibi olması lazım. sürekli saysa kaç olurdu bunu deneyerek bulabilirsiniz.
http://www.freertos.org/rtos-run-time-stats.html
Segger Sysview
Hem detaylı bilgi veriyor hem bedava