{"id":5938,"date":"2023-11-10T09:54:34","date_gmt":"2023-11-10T09:54:34","guid":{"rendered":"https:\/\/picockpit.com\/raspberry-pi\/?p=5938"},"modified":"2023-11-23T02:07:41","modified_gmt":"2023-11-23T02:07:41","slug":"exploring-microlua-lua-programming-for-rp2040","status":"publish","type":"post","link":"https:\/\/picockpit.com\/raspberry-pi\/es\/explorando-la-programacion-microlua-lua-para-rp2040\/","title":{"rendered":"Explorando MicroLua: Programaci\u00f3n Lua para RP2040"},"content":{"rendered":"<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"638\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\" alt=\"Explorando MicroLua para el RP2040 Imagen del t\u00edtulo\" class=\"wp-image-5939\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png 960w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image-300x199.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image-768x510.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image-18x12.png 18w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/figure>\n\n\n\n<p>\u00bfAlguna vez has querido adentrarte en el mundo de la programaci\u00f3n Lua y explorar las capacidades del microcontrolador RP2040? No busques m\u00e1s: \u00a1MicroLua te ofrece una oportunidad apasionante para hacerlo! <\/p>\n\n\n\n<p>En este art\u00edculo, quiero profundizar en lo que <a href=\"https:\/\/github.com\/MicroLua\/MicroLua\">MicroLua<\/a> c\u00f3mo funciona y por qu\u00e9 creo que es una herramienta muy valiosa para los desarrolladores.<\/p>\n\n\n\n<p>Quiero enviar un gran saludo a <a href=\"https:\/\/github.com\/MicroLua\">Remy Blank<\/a> por desarrollar MicroLua y compartirlo con el mundo. Remy lo ha publicado con una licencia MIT (como la propia Lua), poniendo MicroLua a disposici\u00f3n de todo el mundo. <\/p>\n\n\n\n<p>Tengo muchas ganas de utilizarlo en futuros proyectos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u00bfQu\u00e9 es MicroLua?<\/strong> <strong>\u00bfQu\u00e9 es un RP2040?<\/strong><\/h2>\n\n\n\n<p>As\u00ed, MicroLua utiliza la implementaci\u00f3n de Lua y la empaqueta. <\/p>\n\n\n\n<p>Lua es un lenguaje multiparadigma de tipado din\u00e1mico. Y es, por supuesto, uno de los lenguajes de scripting m\u00e1s r\u00e1pidos que existen. Tambi\u00e9n es superpeque\u00f1o (el c\u00f3digo fuente y la documentaci\u00f3n juntos ocupan 1,3 MB).<\/p>\n\n\n\n<p>Es r\u00e1pido, peque\u00f1o e ideal cuando se quiere integrar algo en aplicaciones m\u00e1s grandes.<\/p>\n\n\n\n<p>Lua tambi\u00e9n tiene 21 palabras clave destacadas y una sintaxis bastante sencilla, por lo que es relativamente f\u00e1cil de aprender.<\/p>\n\n\n\n<p>Pero, si no est\u00e1s familiarizado, la cosa inmediata de la que todo el mundo se queja con Lua es que es un lenguaje indexado basado en 1. Y honestamente me molesta cada vez que lo uso. Y honestamente, me molesta cada vez.<\/p>\n\n\n\n<p>Aqu\u00ed tienes un ejemplo de Lua, para que lo veas:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"752\" height=\"817\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-09-17-01-24.png\" alt=\"Ejemplo Lua de Lua.org\" class=\"wp-image-5943\" style=\"width:511px;height:auto\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-09-17-01-24.png 752w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-09-17-01-24-276x300.png 276w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Screenshot-from-2023-11-09-17-01-24-11x12.png 11w\" sizes=\"auto, (max-width: 752px) 100vw, 752px\" \/><figcaption class=\"wp-element-caption\">Cr\u00e9dito: <a href=\"https:\/\/www.lua.org\/cgi-bin\/demo?globals\">lua.org<\/a>.<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Remy ha dise\u00f1ado MicroLua para programar espec\u00edficamente para el microcontrolador RP2040. <\/p>\n\n\n\n<p>El microcontrolador RP2040 es un chip interno de Raspberry Pi que acciona un <a href=\"https:\/\/buyzero.de\/products\/raspberry-pi-pico-w-h-konfigurator-pico-pico-w-pico-h-pico-wh?_pos=1&amp;_sid=22b5b2d56&amp;_ss=r&amp;variant=43536399958283\">Pico<\/a>. Sin embargo, Raspberry Pi tambi\u00e9n vende <a href=\"https:\/\/buyzero.de\/products\/rp2040-microcontroller-chip?_pos=3&amp;_sid=25007eedd&amp;_ss=r\">el chip RP2040<\/a> por separado. Por lo tanto, tambi\u00e9n puede encontrar el RP2040 en otras placas, como una <a href=\"https:\/\/buyzero.de\/products\/adafruit-feather-rp2040-pink?_pos=2&amp;_sid=25007eedd&amp;_ss=r\">Pluma Adafruit<\/a>.<\/p>\n\n\n\n<p>MicroLua, por tanto, empaqueta Lua para estas placas. En este contexto, MicroLua integra el \u00faltimo int\u00e9rprete de Lua (versi\u00f3n 5.4) con interfaces para <a href=\"https:\/\/github.com\/raspberrypi\/pico-sdk\">el kit de desarrollo de software de Pico<\/a> e incluye una biblioteca cooperativa de hilos.<\/p>\n\n\n\n<p>Al combinar el int\u00e9rprete Lua con las interfaces de Pico, MicroLua te permite acceder a los pines GPIO y a los temporizadores. Y me encanta que Remy haya incluido una biblioteca de hilos cooperativa. As\u00ed, si tienes un Pico, puedes jugar con ambos n\u00facleos.<\/p>\n\n\n\n<p>Adem\u00e1s, MicroLua es compatible con Fennel, as\u00ed que si te gusta Lisp (como a m\u00ed), puedes seguir sac\u00e1ndole partido a MicroLua. \u00bfQuieres usar un lenguaje tipo Lisp con tu Raspberry Pi Pico? Remy acaba de hacerlo rid\u00edculamente f\u00e1cil.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Introducci\u00f3n a MicroLua<\/strong><\/h2>\n\n\n\n<p>Para configurar MicroLua, tendr\u00e1s que clonar <a href=\"https:\/\/github.com\/MicroLua\/MicroLua\">el dep\u00f3sito<\/a>inicialice los subm\u00f3dulos y siga las instrucciones de compilaci\u00f3n proporcionadas.<\/p>\n\n\n\n<p>El GitHub tiene el siguiente c\u00f3digo que pondr\u00e1 en marcha un conjunto de pruebas:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewbox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"# Configure the location of the Pico SDK. Adjust for your setup.$ export PICO_SDK_PATH=&quot;${HOME}\/pico-sdk&quot;# Clone the repository and initialize submodules.$ git clone https:\/\/github.com\/MicroLua\/MicroLua.git$ cd MicroLua$ git submodule update --init# Connect a Picoprobe to the target, on the UART and optionally on the debug# port. Then view the Picoprobe's UART connection in a separate terminal.# The &quot;term&quot; script uses socat.$ tools\/term \/dev\/ttyACM0# Build the unit tests.$ cmake -s . -B build -DPICO_BOARD=pico$ make -j9 -C build\/lib# Start the target in BOOTSEL mode and flash it with picotool.$ picotool load -v -x build\/lib\/mlua_tests.elf# Alternatively, start the target in BOOTSEL mode and copy to its boot drive.$ cp build\/lib\/mlua_tests.uf2 \/mnt\/RPI-RP2\/\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copia\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code data-no-translation=\"\"><span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Configure<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">location<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">of<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Pico<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">SDK<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Adjust<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">for<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">your<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">setup<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">export<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">PICO_SDK_PATH<\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">${HOME}\/pico-sdk<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Clone<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">repository<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">initialize<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">submodules<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">git<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">clone<\/span><span style=\"color: #D8DEE9FF\"> https<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #616E88\">\/\/github.com\/MicroLua\/MicroLua.git<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">cd<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">MicroLua<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">git<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">submodule<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">update<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">--<\/span><span style=\"color: #D8DEE9\">init<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Connect<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">a<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Picoprobe<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">to<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">target<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">UART<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">optionally<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">debug<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">port<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Then<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">view<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Picoprobe<\/span><span style=\"color: #ECEFF4\">&#39;<\/span><span style=\"color: #A3BE8C\">s UART connection in a separate terminal<\/span><span style=\"color: #D8DEE9\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">The<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">term<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">script<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">uses<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">socat<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">tools<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">term<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">dev<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">ttyACM0<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Build<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">unit<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">tests<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">cmake<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">s<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">B<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">build<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">DPICO_BOARD<\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9\">pico<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">make<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">j9<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">C<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">build<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">lib<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Start<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">target<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">in<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">BOOTSEL<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">mode<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">flash<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">it<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">with<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">picotool<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">picotool<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">load<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">v<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">build<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">lib<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">mlua_tests<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">elf<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #D8DEE9\">Alternatively<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">start<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">target<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">in<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">BOOTSEL<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">mode<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">copy<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">to<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">its<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">boot<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">drive<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">$<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">cp<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">build<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">lib<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">mlua_tests<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">uf2<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">mnt<\/span><span style=\"color: #81A1C1\">\/<\/span><span style=\"color: #D8DEE9\">RPI<\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9\">RP2<\/span><span style=\"color: #81A1C1\">\/<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Una vez que lo hayas conseguido, estar\u00e1s listo.<\/p>\n\n\n\n<p>Debo mencionar que Remy ha identificado algunos problemas con el rendimiento de MicroLua. En primer lugar, el hecho de que la latencia de env\u00edo de eventos es relativamente lenta y necesita algunas mejoras.<\/p>\n\n\n\n<p>Adem\u00e1s, si va a <a href=\"https:\/\/github.com\/MicroLua\/MicroLua\/tree\/main\">la p\u00e1gina de GitHub<\/a>Remy ha incluido una hoja de ruta con las cosas que hay que a\u00f1adir, como m\u00e1s enlaces para el SDK de Pico, un sistema de archivos y comunicaci\u00f3n multichip. Y Remy quiere mejorar el rendimiento de los hilos, la comunicaci\u00f3n entre n\u00facleos y ajustar el recolector de basura.<\/p>\n\n\n\n<p>As\u00ed que es un proyecto que est\u00e1 muy vivo y que merece la pena seguir de cerca.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" hcb-fetch-image-from=\"https:\/\/www.youtube.com\/shorts\/O90MXajJkkk\" title=\"A veces el MEJOR Proyecto Raspberry Pi Pico es el m\u00e1s F\u00c1CIL Proyecto Raspberry Pi Pico\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/O90MXajJkkk?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Escrib\u00ed el peque\u00f1o programa del v\u00eddeo en MicroPython, pero la pr\u00f3xima vez usar\u00e9 Fennel y MicroLua.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n:<\/h2>\n\n\n\n<p>Ahora que ya lo tienes, empieza tu pr\u00f3ximo proyecto Pico. \u00a1El mundo es tuyo!<\/p>\n\n\n\n<p>Lo primero que pens\u00e9 al ver este proyecto fue <a href=\"https:\/\/github.com\/whitecatboard\/Lua-RTOS-ESP32\/\">Lua RTOS para un ESP32<\/a>. As\u00ed que si usted est\u00e1 buscando sus opciones para Lua con microcontroladores en general, aseg\u00farese de ir a ver ese proyecto tambi\u00e9n.<\/p>\n\n\n\n<p>Sin embargo, si necesitas algo de inspiraci\u00f3n, puedes echar un vistazo a algunos proyectos de Pico que hemos presentado:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/everything-about-sound-output-using-the-pico-w\/\">Todo sobre la salida de sonido con Pico W<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/everything-about-bluetooth-on-the-raspberry-pi-pico-w\/\">Todo sobre Bluetooth en la Raspberry Pi Pico W<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-pico-w-security-alarm\/\">Una alarma de seguridad Raspberry Pi Pico W<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-raspberry-pi-pico-keyboard\/\">Un teclado Raspberry Pi Pico<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-pico-clock\/\">Un reloj Raspberry Pi Pico<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-pico-air-quality-monitor\/\">Monitor de calidad del aire Raspberry Pi Pico<\/a><\/li>\n<\/ul>\n\n\n\n<p>Adem\u00e1s, si tienes un Pico W, no olvides conectarlo a <a href=\"https:\/\/picockpit.com\/\">PiCockpit<\/a>As\u00ed podr\u00e1s conectarte a \u00e9l desde cualquier parte del mundo a trav\u00e9s de Internet.<\/p>\n\n\n\n<p>\u00bfQu\u00e9 proyectos vas a crear con MicroLua? \u00a1Tengo muchas ganas de usar Fennel para mi pr\u00f3ximo proyecto Pico!<\/p>\n<div class=\"shariff shariff-align-center shariff-widget-align-left shariff-buttonstretch\"><ul class=\"shariff-buttons theme-white orientation-horizontal buttonsize-medium\"><li class=\"shariff-button twitter shariff-nocustomcolor\" style=\"background-color:#595959\"><a href=\"https:\/\/twitter.com\/share?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fes%2Fexplorando-la-programacion-microlua-lua-para-rp2040%2F&text=Exploring%20MicroLua%3A%20Lua%20Programming%20for%20RP2040\" title=\"Compartir en X\" aria-label=\"Compartir en X\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#000; color:#000\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#000\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\"><path fill=\"#000\" d=\"M14.258 10.152L23.176 0h-2.113l-7.747 8.813L7.133 0H0l9.352 13.328L0 23.973h2.113l8.176-9.309 6.531 9.309h7.133zm-2.895 3.293l-.949-1.328L2.875 1.56h3.246l6.086 8.523.945 1.328 7.91 11.078h-3.246zm0 0\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#000\">compartir<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button facebook shariff-nocustomcolor\" style=\"background-color:#4273c8\"><a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fes%2Fexplorando-la-programacion-microlua-lua-para-rp2040%2F\" title=\"Compartir en Facebook\" aria-label=\"Compartir en Facebook\" role=\"button\" rel=\"nofollow\" class=\"shariff-link\" style=\"; background-color:#3b5998; color:#3b5998\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#3b5998\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 18 32\"><path fill=\"#3b5998\" d=\"M17.1 0.2v4.7h-2.8q-1.5 0-2.1 0.6t-0.5 1.9v3.4h5.2l-0.7 5.3h-4.5v13.6h-5.5v-13.6h-4.5v-5.3h4.5v-3.9q0-3.3 1.9-5.2t5-1.8q2.6 0 4.1 0.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#3b5998\">compartir<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button telegram shariff-nocustomcolor\" style=\"background-color:#4084A6\"><a href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fes%2Fexplorando-la-programacion-microlua-lua-para-rp2040%2F&text=Exploring%20MicroLua%3A%20Lua%20Programming%20for%20RP2040\" title=\"Compartir en Telegram\" aria-label=\"Compartir en Telegram\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#0088cc; color:#0088cc\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#0088cc\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 32 32\"><path fill=\"#0088cc\" d=\"M30.8 6.5l-4.5 21.4c-.3 1.5-1.2 1.9-2.5 1.2L16.9 24l-3.3 3.2c-.4.4-.7.7-1.4.7l.5-7L25.5 9.2c.6-.5-.1-.8-.9-.3l-15.8 10L2 16.7c-1.5-.5-1.5-1.5.3-2.2L28.9 4.3c1.3-.5 2.3.3 1.9 2.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#0088cc\">compartir<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button reddit shariff-nocustomcolor\" style=\"background-color:#ff5700\"><a href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fes%2Fexplorando-la-programacion-microlua-lua-para-rp2040%2F\" title=\"Compartir en Reddit\" aria-label=\"Compartir en Reddit\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#ff4500; color:#ff4500\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#ff4500\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 512 512\"><path fill=\"#ff4500\" d=\"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#ff4500\">compartir<\/span>&nbsp;<\/a><\/li><\/ul><\/div>","protected":false},"excerpt":{"rendered":"<p>\u00bfAlguna vez has querido adentrarte en el mundo de la programaci\u00f3n Lua y explorar las capacidades del microcontrolador RP2040? No busques m\u00e1s: \u00a1MicroLua te ofrece una oportunidad apasionante para hacerlo! En este art\u00edculo, quiero profundizar en lo que es MicroLua, c\u00f3mo funciona, y por qu\u00e9 creo que es un...<\/p>","protected":false},"author":2,"featured_media":5939,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[2151,483,606,2152,2150,597,2149,11,811,221,1864,475,187,909],"class_list":["post-5938","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-raspberry-pi-pico","tag-fennel","tag-language","tag-linux","tag-lisp","tag-lua","tag-microcontroller","tag-microlua","tag-pico","tag-pico-sdk","tag-pico-w","tag-programming","tag-programming-language","tag-raspberry-pi","tag-rp2040"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Exploring MicroLua: Lua Programming for RP2040 | PiCockpit<\/title>\n<meta name=\"description\" content=\"Have you ever wanted to use Lua with an RP2040 microcontroller? MicroLua offers an exciting opportunity to do just that!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/picockpit.com\/raspberry-pi\/es\/explorando-la-programacion-microlua-lua-para-rp2040\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Exploring MicroLua: Lua Programming for RP2040 | PiCockpit\" \/>\n<meta property=\"og:description\" content=\"Have you ever wanted to use Lua with an RP2040 microcontroller? MicroLua offers an exciting opportunity to do just that!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/picockpit.com\/raspberry-pi\/es\/explorando-la-programacion-microlua-lua-para-rp2040\/\" \/>\n<meta property=\"og:site_name\" content=\"PiCockpit\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pi3gshop\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-10T09:54:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-23T02:07:41+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"638\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"raspi berry\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@pi3g\" \/>\n<meta name=\"twitter:site\" content=\"@pi3g\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"raspi berry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/\"},\"author\":{\"name\":\"raspi berry\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\"},\"headline\":\"Exploring MicroLua: Lua Programming for RP2040\",\"datePublished\":\"2023-11-10T09:54:34+00:00\",\"dateModified\":\"2023-11-23T02:07:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/\"},\"wordCount\":745,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\",\"keywords\":[\"Fennel\",\"language\",\"linux\",\"Lisp\",\"Lua\",\"microcontroller\",\"MicroLua\",\"Pico\",\"pico sdk\",\"Pico W\",\"programming\",\"programming language\",\"Raspberry Pi\",\"RP2040\"],\"articleSection\":[\"Raspberry Pi Pico\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/\",\"name\":\"Exploring MicroLua: Lua Programming for RP2040 | PiCockpit\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\",\"datePublished\":\"2023-11-10T09:54:34+00:00\",\"dateModified\":\"2023-11-23T02:07:41+00:00\",\"description\":\"Have you ever wanted to use Lua with an RP2040 microcontroller? MicroLua offers an exciting opportunity to do just that!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#primaryimage\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/Exploring-MicroLua-for-the-RP2040-Title-Image.png\",\"width\":960,\"height\":638,\"caption\":\"Exploring MicroLua for the RP2040 Title Image\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/exploring-microlua-lua-programming-for-rp2040\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Raspberry Pi Pico\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/category\\\/raspberry-pi-pico\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Exploring MicroLua: Lua Programming for RP2040\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"name\":\"PiCockpit\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\",\"name\":\"PiCockpit.com\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"width\":1165,\"height\":283,\"caption\":\"PiCockpit.com\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/pi3gshop\",\"https:\\\/\\\/x.com\\\/pi3g\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\",\"name\":\"raspi berry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"caption\":\"raspi berry\"},\"description\":\"I'm here to help you with all your Raspberry Pi related questions &amp; love to share about new project ideas for the Raspberry Pi, and give quick tips. Of course I'll also help you with PiCockpit and how to make your Raspberry Pi even easier to use with this raspberry pi monitoring solution :-)\",\"sameAs\":[\"https:\\\/\\\/picockpit.com\"],\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/es\\\/author\\\/raspi-berry\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Explorando MicroLua: Programaci\u00f3n Lua para RP2040 | PiCockpit","description":"\u00bfAlguna vez has querido utilizar Lua con un microcontrolador RP2040? MicroLua le ofrece la oportunidad de hacerlo.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/picockpit.com\/raspberry-pi\/es\/explorando-la-programacion-microlua-lua-para-rp2040\/","og_locale":"es_ES","og_type":"article","og_title":"Exploring MicroLua: Lua Programming for RP2040 | PiCockpit","og_description":"Have you ever wanted to use Lua with an RP2040 microcontroller? MicroLua offers an exciting opportunity to do just that!","og_url":"https:\/\/picockpit.com\/raspberry-pi\/es\/explorando-la-programacion-microlua-lua-para-rp2040\/","og_site_name":"PiCockpit","article_publisher":"https:\/\/www.facebook.com\/pi3gshop","article_published_time":"2023-11-10T09:54:34+00:00","article_modified_time":"2023-11-23T02:07:41+00:00","og_image":[{"width":960,"height":638,"url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png","type":"image\/png"}],"author":"raspi berry","twitter_card":"summary_large_image","twitter_creator":"@pi3g","twitter_site":"@pi3g","twitter_misc":{"Escrito por":"raspi berry","Tiempo de lectura":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#article","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/"},"author":{"name":"raspi berry","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee"},"headline":"Exploring MicroLua: Lua Programming for RP2040","datePublished":"2023-11-10T09:54:34+00:00","dateModified":"2023-11-23T02:07:41+00:00","mainEntityOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/"},"wordCount":745,"commentCount":0,"publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png","keywords":["Fennel","language","linux","Lisp","Lua","microcontroller","MicroLua","Pico","pico sdk","Pico W","programming","programming language","Raspberry Pi","RP2040"],"articleSection":["Raspberry Pi Pico"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/","url":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/","name":"Explorando MicroLua: Programaci\u00f3n Lua para RP2040 | PiCockpit","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#website"},"primaryImageOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#primaryimage"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png","datePublished":"2023-11-10T09:54:34+00:00","dateModified":"2023-11-23T02:07:41+00:00","description":"\u00bfAlguna vez has querido utilizar Lua con un microcontrolador RP2040? MicroLua le ofrece la oportunidad de hacerlo.","breadcrumb":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#primaryimage","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/11\/Exploring-MicroLua-for-the-RP2040-Title-Image.png","width":960,"height":638,"caption":"Exploring MicroLua for the RP2040 Title Image"},{"@type":"BreadcrumbList","@id":"https:\/\/picockpit.com\/raspberry-pi\/exploring-microlua-lua-programming-for-rp2040\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/picockpit.com\/raspberry-pi\/"},{"@type":"ListItem","position":2,"name":"Raspberry Pi Pico","item":"https:\/\/picockpit.com\/raspberry-pi\/category\/raspberry-pi-pico\/"},{"@type":"ListItem","position":3,"name":"Exploring MicroLua: Lua Programming for RP2040"}]},{"@type":"WebSite","@id":"https:\/\/picockpit.com\/raspberry-pi\/#website","url":"https:\/\/picockpit.com\/raspberry-pi\/","name":"PiCockpit","description":"","publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/picockpit.com\/raspberry-pi\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization","name":"PiCockpit.com","url":"https:\/\/picockpit.com\/raspberry-pi\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","width":1165,"height":283,"caption":"PiCockpit.com"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pi3gshop","https:\/\/x.com\/pi3g"]},{"@type":"Person","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee","name":"baya raspada","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","caption":"raspi berry"},"description":"Estoy aqu\u00ed para ayudarte con todas tus preguntas relacionadas con la Raspberry Pi y me encanta compartir sobre nuevas ideas de proyectos para la Raspberry Pi, y dar consejos r\u00e1pidos. Por supuesto, tambi\u00e9n te ayudar\u00e9 con PiCockpit y c\u00f3mo hacer que tu Raspberry Pi sea a\u00fan m\u00e1s f\u00e1cil de usar con esta soluci\u00f3n de monitoreo de la frambuesa Pi :-)","sameAs":["https:\/\/picockpit.com"],"url":"https:\/\/picockpit.com\/raspberry-pi\/es\/author\/raspi-berry\/"}]}},"_links":{"self":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/posts\/5938","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/comments?post=5938"}],"version-history":[{"count":7,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/posts\/5938\/revisions"}],"predecessor-version":[{"id":5948,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/posts\/5938\/revisions\/5948"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/media\/5939"}],"wp:attachment":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/media?parent=5938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/categories?post=5938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/es\/wp-json\/wp\/v2\/tags?post=5938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}