Dostlar selamlar
WS2812 şerit ledi kullanarak bir proje yapmaktayım. İsteğim telefon üzerinden animasyon , renk ve parlaklık değiştirmek. Kontrolcü olarak Nodemcu kullandım ve App ınventor yardımı ile uygulamamı yaptım. Firebase üzerinden sağlıklı haberleşiyorlar buraya kadar bir sıkıntı yok. Ancak FASTLED kütüphanesi ile hazırladığım kodu yükleyince CYLON animasyonu dışındaki animasyonlar donarak çalışıyor. Kodları direkt örneklerden aldım. Örnekleri tek hali ile yükleyince bir problem olmuyor. Tek renk modu ve parlaklık değiştirmede bi sıkıntı yok ancak animasyonlarda iş patlıyor. Bana önerebileceğiniz şeyler var mı? Şimdiden teşekkürler.
Hazırladığım kodu ve bir animasyonun normal halini ve kodumda çalışan halini paylaşıyorum. https://drive.google.com/drive/folders/1L5FfYN8Z2H_a1hb0o8-ibQd5SvtxcDfu?usp=sharing
unsigned long simdikizaman = millis();
if (simdikizaman - oncekizaman >= bekle) // gecikme suremiz doldu mu diye kosul ekledik
{
oncekizaman = simdikizaman; // kosul satirina girdigine gore zaman dolmus simdi eski zamani simdiki zamanla yeniliyoruz.
Bu kısmı loop tan sil dene, gördüğüm kadarıyla her animasyonun kendi zaman sabiti var. Eğer firebase den komut gelmezse switch döngüsünün default kısmına delay(100) eklersin serveri sıkboğaz etmez.
unsigned long simdikizaman = millis();
if (simdikizaman - oncekizaman >= bekle) // gecikme suremiz doldu mu diye kosul ekledik
{
oncekizaman = simdikizaman; // kosul satirina girdigine gore zaman dolmus simdi eski zamani simdiki zamanla yeniliyoruz.
Bu kısmı loop tan sil dene, gördüğüm kadarıyla her animasyonun kendi zaman sabiti var. Eğer firebase den komut gelmezse switch döngüsünün default kısmına delay(100) eklersin serveri sıkboğaz etmez.
Sildim ancak değişen bir şey olmadı animasyonlar donmaya devam ediyor. Bu kod ile multi tasking yapmaya çalıştım ancak beceremedim.
Şöyle bir şey fark ettim. İçersinde fazla void bulunduran animasyonlarda problem var. Örneğin Pacifica isimli animasyon 4 tane alt void ile çalışıyor ama güzel çalışan CYLON tek fonksiyonla çalışıyor. Sizce bunla bir ilgisi var mıdır?