Pico Eğitim Kartı için PIR ve ultrasonik sensör fonksiyonlarının uygulanması
Ayrıntılar...
|
| void | init_pir (void) |
| | PIR hareket sensörünü başlatır.
|
| |
| bool | detect_motion (void) |
| | PIR sensörü tarafından hareket algılanıp algılanmadığını kontrol eder.
|
| |
| void | init_ultrasonic (void) |
| | Ultrasonik sensör pinlerini başlatır.
|
| |
| float | measure_distance (void) |
| | Ultrasonik sensör kullanarak mesafe ölçer.
|
| |
| bool | wait_for_motion (uint32_t timeout_ms) |
| | Zaman aşımı ile hareket algılamayı bekler.
|
| |
| float | get_average_distance (uint8_t num_samples, uint32_t delay_ms) |
| | Birden fazla ölçümden ortalama mesafeyi alır.
|
| |
Pico Eğitim Kartı için PIR ve ultrasonik sensör fonksiyonlarının uygulanması
- Ayrıca Bakınız
- Sensörler (PIR + Ultrasonik)
◆ SENSOR_TIMEOUT
| #define SENSOR_TIMEOUT 26100 |
◆ SOUND_SPEED
| #define SOUND_SPEED 343.0f |
◆ TRIGGER_PULSE
◆ detect_motion()
| bool detect_motion |
( |
void |
| ) |
|
PIR sensörü tarafından hareket algılanıp algılanmadığını kontrol eder.
- Döndürdüğü değer
- Hareket algılandıysa true, aksi halde false
◆ get_average_distance()
| float get_average_distance |
( |
uint8_t |
num_samples, |
|
|
uint32_t |
delay_ms |
|
) |
| |
Birden fazla ölçümden ortalama mesafeyi alır.
- Parametreler
-
| num_samples | Ortalama alınacak örnek sayısı |
| delay_ms | Örnekler arasındaki gecikme süresi (milisaniye) |
- Döndürdüğü değer
- float Santimetre cinsinden ortalama mesafe veya ölçümler başarısız olursa -1.0
- Not
- Negatif dönen ölçümler (zaman aşımı) ortalamaya dahil edilmez.
◆ init_pir()
PIR hareket sensörünü başlatır.
PIR sensör pinini giriş olarak yapılandırır
◆ init_ultrasonic()
| void init_ultrasonic |
( |
void |
| ) |
|
Ultrasonik sensör pinlerini başlatır.
Tetikleme pinini çıkış ve yankı pinini giriş olarak yapılandırır
◆ measure_distance()
| float measure_distance |
( |
void |
| ) |
|
Ultrasonik sensör kullanarak mesafe ölçer.
- Döndürdüğü değer
- float Santimetre cinsinden mesafe veya ölçüm başarısız olursa -1.0
- Not
- Ölçüm aralığı tipik olarak ~2 cm ile ~450 cm arasındadır. Zaman aşımlarında -1.0 döner.
-
Ölçüm öncesi
init_ultrasonic() çağrılmış olmalıdır.
◆ wait_for_motion()
| bool wait_for_motion |
( |
uint32_t |
timeout_ms | ) |
|
Zaman aşımı ile hareket algılamayı bekler.
- Parametreler
-
| timeout_ms | Beklenecek maksimum süre (milisaniye), 0 ise zaman aşımı yok |
- Döndürdüğü değer
- Hareket algılandıysa true, zaman aşımı oluştuysa false
} else {
}
bool wait_for_motion(uint32_t timeout_ms)
Zaman aşımı ile hareket algılamayı bekler.
Definition sensors.c:111