Raporlama modları

Sensörler, raporlama modları olarak adlandırılan farklı şekillerde olaylar üretebilir; her sensör tipinin kendisiyle ilişkilendirilmiş bir ve yalnızca bir raporlama modu vardır. Dört raporlama modu mevcuttur.

Sürekli

Olaylar ile tanımlanan sabit bir hızda üretilir sampling_period_ns iletilen parametre batch fonksiyonu. Sürekli raporlama modu kullanılarak, Örnek sensörlerdir ivme ölçerlerin ve jiroskop .

değiştirildiğinde

Olaylar, yalnızca ölçülen değerler değiştiyse oluşturulur. HAL düzeyinde sensörünün devreye sokulması (çağırarak activate(..., enable=1) ayrıca bir değişim sensör etkinleştirildiğinde derhal bir olay döndürmesi gerekir HAL anlamına bir olayı tetikler üzerinde). Değişimde raporlama modunu kullanan örnek sensörler, adım sayacı, yakınlık ve kalp atış hızı sensörü türleridir.

sampling_period_ns iletilen parametre batch fonksiyonu kadar bir olay oluşturulur olmamalıdır, yani ardışık olaylar arasındaki minimum zaman ayarlamak için kullanılır sampling_period_ns nanosaniye değeri daha sonra değiştirilmiş bile olsa, son durumunda bu yana geçen. Eğer değer değiştirilirse, bir olay kısa sürede oluşturulmalıdır sampling_period_ns geçen olay bu yana geçtikten.

Örneğin, varsayalım:

  • Biz ile adım sayacı aktive sampling_period_ns = 10 * 10^9 (10 saniye).
  • 55 saniye yürüyoruz, sonra bir dakika hareketsiz duruyoruz.
  • Etkinlik birinci dakika süresince her 10 saniyede üretilir (zaman olarak dahil t=0 için sensör aktivasyonu ve t=60 , yedi etkinlikleri, toplam saniye). Sonra adım sayısı değeri değiştirmez çünkü hiçbir olay iki dakikada bir oluşturulur t=60 saniye.

Tek atış

Bir olayın algılanması üzerine, sensör kendini devre dışı bırakır ve ardından HAL aracılığıyla tek bir olay gönderir. Yarış koşullarından kaçınmak için sıralama önemlidir. (Olay HAL aracılığıyla rapor edilmeden önce sensör devre dışı bırakılmalıdır). Sensör yeniden etkinleştirilene kadar başka bir olay gönderilmez. Önemli hareket sensörünün bu tür bir örnektir.

Tek atış sensörlerine bazen tetik sensörleri denir.

sampling_period_ns ve max_report_latency_ns geçirilen parametreler batch fonksiyonu göz ardı edilir. Tek seferlik olaylardan gelen olaylar, donanım FIFO'larında saklanamaz; olaylar oluştukları anda rapor edilmelidir.

Özel

Bireysel Bkz sensör tipi açıklamaları olaylar oluştuğunda ilgili ayrıntılar için.