Picproje Elektronik Sitesi

ENDÜSTRiYEL OTOMASYON => IoT => Konuyu başlatan: berkay_91 - 15 Ağustos 2021, 22:36:14

Başlık: ESP32 Döngü Gecikme Hatası
Gönderen: berkay_91 - 15 Ağustos 2021, 22:36:14
Merhaba, ESP32 kullanırken void loop() fonksiyonunun içerisine gecikme koymazsam hata veriyor, 5 ms gibi küçük gecikmeler eklediğimde döngünün içerisinde, çağırdığım fonksiyonlara erişip çok güzel çalışıyor. fakat bazen 5 ms büyük kayıplar yaşatıyor bunun önüne nasıl geçebilirim?
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: ahmet35 - 16 Ağustos 2021, 12:13:24
delay(0); veya yield(); ekleneyerek deneyin. Bu komutlar WDT sayacını sıfırlar.

Arduino kullanmıyorsanız vPortYield(); ekleyin.
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: fyper - 16 Ağustos 2021, 13:33:45
esp nin kendi iç fonksiyonları var onlar için delay ya da operasyon vb. koymak gerekiyor .  5ms den daha düşük denediniz mi?

github ta firmanın repo su var sorulmuş olabilir, konuyu orada da araştırmanız iyi olacaktır.
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: berkay_91 - 16 Ağustos 2021, 19:58:06
Alıntı yapılan: ahmet35 - 16 Ağustos 2021, 12:13:24delay(0); veya yield(); ekleneyerek deneyin. Bu komutlar WDT sayacını sıfırlar.

Arduino kullanmıyorsanız vPortYield(); ekleyin.

arduino derleyicisini kullanıyorum, yield(); komutu işe yaramadı
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: berkay_91 - 16 Ağustos 2021, 20:33:49
https://github.com/espressif/arduino-esp32/issues/2493 (https://github.com/espressif/arduino-esp32/issues/2493)

bu kod ile sorun çözülüyor disableCore0WDT();
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: ahmet35 - 17 Ağustos 2021, 10:30:43
Bence WDT kapatmak iyi bir yöntem değil. Bunun yerine loop içerisideki fazla zaman harcayan fonksiyon, döngü vb. bulup, onun içerisine delay(0); eklemek daha iyi olur.
Başlık: Ynt: ESP32 Döngü Gecikme Hatası
Gönderen: ozkarah - 17 Mayıs 2022, 03:19:44
ESP8266'da bu problemle çok karşılaştım ama ESP32 çift çekirdekli ve hiç delay olmadan kare dalga üreten bir kod ile denedim, hiç kırılmadı.

Kodunuzu paylaşabilir misiniz?