Mohu programovat své Arduino pomocí jiného programovacího jazyka než C ++? Pokud ano, jaké programovací jazyky? Jaký software bych potřeboval pro kompilaci a načtení mého kódu do Arduina?
Mohu programovat své Arduino pomocí jiného programovacího jazyka než C ++? Pokud ano, jaké programovací jazyky? Jaký software bych potřeboval pro kompilaci a načtení mého kódu do Arduina?
Teoreticky lze použít jakýkoli kompilátor, který vydává sestavu AVR (modulo omezení velikosti kódu, využití RAM atd.).
AVR backendy existují jak pro LLVM, tak pro GCC - takže teoreticky, s určitým úsilím, většina jazyků, které jsou podporovány LLVM a frontou GCC - konce lze zkompilovat do AVR. Velkou otázkou bude podpora knihoven atd.
Nicméně, zde je několik zvláštních možností pro ducha otázky, spíše než pro její písmeno [1].
No, můžete napsat syrové AVR Assembly!
[1] - Tyto jsem však nezkoušel!
Některé běžně známé:
Teoreticky byste měli být schopni rozšířit avr-gcc o podporu dalších jazyků, i když to není malý úkol. Měl bych také upozornit, že podpora jiných jazyků než C obvykle přichází s některými poměrně závažnými omezeními jazykových komponent - například i v C ++ se nedoporučuje vytvářet instance nových objektů jako malloc
a zdarma
jsou extrémně drahé jak v paměťovém prostoru, tak v cyklech.
Kromě používání Google jsou použitelné následující odkazy Klikněte zde.
Protože avr-g ++ by měl podporovat všechny standardní konstrukce C / C ++, je možné kódovat vložené sestavení. Další informace o tomto vlákně fóra arduino.cc
Překvapuje mě, že nikdo nezmínil AVR Assembly!
Assembly se často nepovažuje za nejzajímavější nebo dokonce snadnou metodu programování, ale přesto je to , 100% možné se všemi arduino založenými na AVR. Desky SAM pravděpodobně nebudou s touto variantou fungovat, ale stále je možné při jejich programování použít sestavení.
Všechny desky Arduino (od zveřejnění) podporují programování sestavování prostřednictvím Atmel Studio, Sada SDK vytvořená pro čipy založené na platformě Atmel.
Sestava je naivně podporována všemi zařízeními Atmel a ke své činnosti nevyžaduje žádný zavaděč, takže všechny programy jsou neodmyslitelně v reálném čase.