Etkileşimli STM32 Event Groups ve Software Timers#
Bu laboratuvar, `Event Groups` ve `Software Timers` kavramlarini yalnizca API isimleri olarak degil; birden fazla sinyalin ayni gorevi nasil uyandirdigi, `ANY` ile `ALL` bekleme arasindaki farkin ne oldugu ve `clear-on-exit` seciminin neden kritik hale gelebildigi somut bir RTOS koordinasyon problemi olarak gorunur kilar. Hedef, `xEventGroupWaitBits` ile `xTimer` callback mantigini ayni zaman cizelgesinde sezgisel hale getirmektir.
Bu Derste Ne Oturmali?#
Event Groups, bir gorevin birden fazla olay bitine goreANYya daALLmantigiyla bloke olmasini saglar; bu, daginik global flag okumaktan cok daha okunabilir bir desen olabilir.clear-on-exit, dogru kullanildiginda ayni bitlerin gereksiz yere tekrar tetiklemesini engeller; kapali oldugunda ise stale retrigger davranisi kolayca ortaya cikabilir.Software timer, agir isi callback icinde yapmak icin degil; gorevlere dogru anda hafif bir sinyal vermek icin degerlidir.Dogru desen sadece
xEventGroupWaitBitskullanmak degil; hangi bitlerin beklenecegini, ne zaman temizlenecegini ve timer callback’inin nasil hafif tutulacagini birlikte dusunmektir.
Not
Bu laboratuvarin sonraki dogal adimi CAN ve mesaj filtreleme olur; onun ardindan watchdog + fault recovery, USB CDC + ring buffer ya da stream buffer / message buffer gelebilir.