Hola!
Estoy probando mBlock para programar una placa arduino UNO.
Quería incorporar nuevas librerías para poder controlar dispositivos como una LCD 16x02. Es posible? Cómo?
Gracias!!!
¿ Te refieres a poder crear nuevos bloques en mBlock para arrastrar ?
Si, exacto!
Es posible descargar nuevos bloques o crearlos?
Por ejemplo, cuando uso el IDE de arduino para programar la placa UNO, utilizo la librería LiquidCrystal.h para controlar un LCD de 16x02. Como podría hacerlo con mBlock?
He utilizado mBlock para programar el mBot y me gustaría usarlo también con la placa UNO.
Un saludo y gracias por tu respuesta!
Se puede hacer pero no es nada sencillo y hay que enredar algo en las extensiones de mBlock.
Vete a la carpeta donde tengas instalado el mBlock
Y dentro de ésta al directorio /ext/libraries/arduino
Añade nuevos bloques
Edita el archivo Arduino.s2e y verás las especificaciones de bloques.
Creando un bloque de ejemplo llamado Comentario
He creado un bloque de ejemplo para que veas como se haría. El bloque de ejemplo hace lo siguiente:
["w", "Comentario%n","","Comentario",
{"encode":"{s0}","setup":"","inc":"#include <nueva_libreria.h>","def":"","work":"//{0} en setup;\n","loop":"//{0} en loop;\n nueva_libreria();"}],
OJO con la sintaxis en JSON, respeta la coma final.
Este bloque lo puedes añadir por ejemplo después del bloque de read Analog Pin quedando así:
["R", "read analog pin (A)%n","getAnalog","0",
{"encode":"{d0}","setup":"pinMode(A0+{0},INPUT);\n","inc":"","def":"","work":"analogRead(A0+{0})","loop":""}],
["w", "Comentario%n","","Comentario",
{"encode":"{s0}","setup":"","inc":"#include <nueva_libreria.h>","def":"","work":"//{0} en setup;\n","loop":"//{0} en loop;\n nueva_libreria();"}],
...
Si te fijas en cómo están construidos los demás bloques tanto de Arduino como de mBot podrás ver para que sirve cada parámetro
Resultado

Lo he cambiado y en el Sratch no aparece el bloque
Eso es porque mBlock crea una copia de los directios más importantes dentro de tu sistema por ejemplo en Windows 7 la crea en:
[Usuario]/AppData/Roaming/com.makeblock.mBlock.v3.3.0
No veo los bloques de Arduino, sólo los de mBot
Activa la extensión de Arduino desde el menú "extensiones"
Suerte !
Muchísimas gracias por darme una respuesta tan detallada y completa!!!
Probaré y a ver si sale :-)
Saludos!
Tu anterior borrador para un tema está pendiente
Si continúas, tus anteriores borradores serán descartados.