ESP8266, Arduino IDE vs Lua?


13

Bir ESP8266 almayı planlıyorum. Gerçekten onunla oynamak için Lua öğrenmem gerekiyor mu? Standart Arduino IDE ile kullanan bazı insanlar gördüm.

Lua yerine Arduino IDE'yi kullanmak için özel bir bellenime mi ihtiyacınız var?

Arduino IDE benim için daha iyi görünüyor çünkü sözdizimini zaten biliyorum. Lua ile NodeMCU yerine Arduino IDE kullanmanın bir dezavantajı var mı?

Yanıtlar:


9

Arduino IDE kullanarak bir özel firmware. Yazdığınız şey bu. Yeni bellenime ihtiyacınız yok çünkü yazdığınız yeni bellenim.

Lua yerine ESP8266 programlamak için C ++ kullanarak herhangi bir olumsuz düşünemiyorum - aslında sadece bir fayda olabilir çünkü derlenmiş kod daha yavaş olacak yorumlanmış bir dil kullanmıyorsunuz.


3
Öyleyse neden çoğu insan Lua ile NodeMCU kullanıyor?
n0tis

3
@ n0tis Çünkü önceden kurulmuş ve kullanımı çok kolay. Ayrıca satın aldıklarında ve daha iyi bilmedikleri zaman kullanmaları söylenir.
Majenko

1
@ n0tis Sadece C ++ 'da onları programladım ve başka bir şey yapmam. Günün sonunda LUA yorumlayıcı ürün yazılımını her zaman yeniden yükleyebilir ve Arduino tarzı programlamaya devam etmezseniz LUA'ya geri dönebilirsiniz. Hiçbir şey kalıcı değildir - istediğiniz zaman fikrinizi değiştirebilirsiniz.
Majenko

3
Bu var Lua LUA değil. Bir kısaltma değildir. Bkz. Adda neler var? . Arduino'da Lua'yı nasıl kullanıyorsun?
Nick Gammon

2
Evet, sadece derleyip yüklersiniz. Lua bellenimi veya AI thnker AT bellenimi her ikisi de sadece panoya yüklenen programlardır: biri Lua komut dosyasını yorumlamak için, diğeri AT komutlarını yorumlamak için. Tıpkı Arduino çizimleriniz gibi.
Majenko

11

Lua, birçok komut dosyası dili gibi, bir programcı olarak sizi çok daha üretken yapma eğilimindedir: daha yüksek bir soyutlama düzeyinde çalışırken ve bellek yönetimi gibi önemsiz şeyler hakkında endişelenmediğinizde işler çok daha kolay hale gelir. Aynı hedeflere çok daha az kod satırı ile ulaşırsınız. Öte yandan, gelişmeyi hızlandırırken, program yürütmeyi de yavaşlatır. Bunun iyi bir değiş tokuş olup olmadığı, yazmak istediğiniz uygulamaya çok bağlıdır.

Özel durumunuzda, Lua'yı bilmediğinizi ve hem C ++ dilini hem de Arduino API'sini zaten biliyor olmanız gerektiğini düşünmelisiniz. O zaman, dili öğrenmek için gereken zaman nedeniyle Lua'nın avantajlarını tek bir projede kopyalayamazsınız. Dili bir yatırım olarak öğrenmeyi düşünebilirsiniz, muhtemelen bu platformda çok fazla program yapacaksanız buna değer , muhtemelen sadece tek, yeterince basit bir proje için değmez. Emin değilseniz, bu platformda Lua ile sağlanan API'ye göz atmanızı öneririm: projenize ne kadar uygun? Arduino API'sından önemli ölçüde daha uygun mu?


1

ARDUINO IDE İLE KALMAK İÇİN TAVSİYE EDERİM!

C ++ 'da programlama Lua kadar kolay ve çok yönlü olmamasına rağmen (Esplorer ile çalışmak gerçekten bir rüya gerçek!), Lua ÇOK KARARLI VE GÖRÜNÜMLÜ DEĞİL !!!

On satırlık basit bir program çalıştırabilirsiniz ve bir gün için iyi çalışır ... iki ... ve aniden, 3. günde çip beklenmedik bir şekilde askıda kalır ve hiçbir sebep olmadan! Eğer şanslıysanız, çip yeniden başlatılacak ve program tekrar çalışmaya başlayacak ... bu benimle OLMADI. Programı tekrar yüklemek zorunda kaldım! Bunun gibi 3 döngüden sonra Lua'yı terk etmeye karar verdim ... SONSUZA.


2
Aynı deneyim burada. Ve gerçekten, gerçekten Lua'yı sevdim.

Evet. Lua bir dil olarak ilginç bir deneyim. NodeMCU, çoğunlukla sinir bozucu biri ..
dda

2
Ben lua ve REPL seviyorum. ESP8266 (espruino) üzerindeki js ve küçük ayak izini de seviyorum. Gömülü sistemlerin bir programcısı olarak, Arduino kütüphanelerinin çoğunun değerli belleği harcayan ve / veya parçalayan gömülü olmayan programcılar tarafından yazıldığı çok açıktır. Arduino kullanın ama bu çirkin C ++ sınıfı yerine C kendi dize yönetimi kullanarak gibi şeyler yapmak. Bellek kötüye kullanımı değil takdir etmek için bir metadır.
uDude

Biraz hile öğrendim.:. Döngü rutininizde en altta bir milisaniye gecikme ekleyin ..... bu, çipin wifi 'ödevini' yapmasına izin verecektir .. ! çözüldü .....;)
user3152171

0

Darbe yaptığım için üzgünüm, ama bu konu Arduino IDE'ye karar vermeme yardımcı oldu.

Arduino IDE ile başladım ama ESP-07 ile çalışmaya başlayamadım. Esplorer ile NodeMCU ve Lua'ya taşındı. Garip bootloader baud hızı nedeniyle orada çalışmak için bir süre aldı. Birincisi, bir WEB sunucusu kurmak çok kolay görünüyordu, ancak sorun, bulunan tüm örneklerin eski bir FW 0.96'ya dayanması ve en son 2.1 ile denemenin hiç işe yaramadığıydı. İnsanların yeni FW ile fazla bir şey yapmadığını fark etmek bana ikinci düşünceler verdi.

Şimdi Arduino IDE ile işler gerektiği gibi çalışmaya başlıyor! :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.