Fundamentos · 13 min de lectura

Programación por bloques: qué es y cómo se convierte en código real

Qué es la programación por bloques y cómo funciona: colores de los bloques, setup y loop, y un ejemplo con LED que pasa de bloques a código C++ y MicroPython.

La programación por bloques consiste en construir un programa apilando bloques de colores con forma de pieza de puzle, en lugar de escribirlo línea a línea. Cada bloque es una sola instrucción, como «configurar el pin como salida», «encender el LED» o «esperar 100 ms». Como los bloques solo encajan donde corresponde, errores como olvidar un punto y coma, dejar un paréntesis sin cerrar o escribir mal un comando desaparecen, y tú te concentras en la lógica del programa. Por eso la programación basada en bloques se considera la entrada más suave a la programación para niños y principiantes.

Este artículo es la parte 1 de la serie De los bloques al código. En la siguiente parte creamos el primer programa con bloques: hacer parpadear un LED con programación por bloques.

Pero la programación por bloques no es un lenguaje de juguete. Detrás de cada programa en bloques que llega a un Arduino o a una Raspberry Pi Pico hay código real, y la placa siempre ejecuta ese código. En este artículo verás, paso a paso y con proyectos gratuitos de BlueGrays, qué son los bloques, qué indican sus colores y cómo un programa en bloques se convierte en código C++ o MicroPython real. Al final encontrarás también las ventajas y los límites de la programación por bloques y cómo se combina con herramientas como Scratch, mBlock y Tinkercad.

Bloques del proyecto Parpadeo de LED: configuración (una vez) y repetir siempre
El proyecto Parpadeo de LED en bloques: el bloque de configuración pone el pin 9 como SALIDA y el bloque repetir siempre enciende el LED 100 ms y lo apaga 100 ms. Más abajo emparejamos este pequeño programa con su código C++ línea a línea.

¿Qué es la programación por bloques y por qué se llama así?

En la programación por bloques cada instrucción es una pieza con muescas y salientes en los bordes. El saliente inferior de un bloque encaja en la muesca del bloque de abajo, así que las instrucciones se ejecutan en orden de arriba abajo. Algunos bloques tienen un hueco abierto por dentro: son bloques contenedores que alojan otros bloques. Otros tienen ranuras ovaladas blancas donde se coloca un número u otro bloque de valor. Como la forma de cada pieza decide qué va en cada sitio, es casi imposible montar un programa que rompa las reglas. La mayoría de los editores de bloques actuales siguen el camino que abrieron Scratch, del MIT, y la biblioteca de código abierto Blockly de Google. Los bloques de BlueGrays también se basan en Blockly; el conjunto de bloques lo diseñamos nosotros para proyectos de electrónica y lo mostramos en el idioma de la app. Ten en cuenta que los bloques no son un nuevo lenguaje de programación. Instrucciones, orden, condiciones, bucles y variables son exactamente los mismos conceptos que en el código de texto; los bloques solo los hacen visibles.

¿Cómo se convierte un programa en bloques en código real?

Los editores de bloques usan un generador de código por debajo: cada tipo de bloque tiene una plantilla en código de texto y, al apilar los bloques, esas plantillas se unen en orden. BlueGrays es algo más estricto: los bloques de cada proyecto se crean para coincidir uno a uno con el código real que se carga en la placa. Cada línea de los bloques tiene su equivalente en el código, y cada línea del código, su equivalente en los bloques. En los proyectos de Arduino y ESP32 ese código es C++; en los de Raspberry Pi Pico, MicroPython. Para leer un programa en bloques te basta con conocer estas cinco partes:

  • configuración (una vez): la sección que se ejecuta una sola vez cuando la placa se enciende o se reinicia. Equivale a la función setup() de Arduino, y normalmente es donde los pines se configuran como entrada o SALIDA.
  • repetir siempre: la sección que se ejecuta de arriba abajo una y otra vez mientras la placa está encendida. En Arduino es la función loop(); en MicroPython, un bucle while True:.
  • Bloques de instrucción: bloques como «escribir ALTO en pin 9» o «esperar 100 ms» que se apilan dentro de los contenedores y hacen una tarea cada uno. La mayoría son una sola línea de código de texto.
  • Bloques de valor: números como 9 o 100 en los óvalos blancos y bloques redondeados que devuelven un resultado, como la lectura de un pin. Se colocan en las ranuras de los bloques de instrucción y se convierten en el valor entre paréntesis del código.
  • Menús desplegables: opciones como SALIDA o ALTO / BAJO. Equivalen a las constantes OUTPUT / INPUT y HIGH / LOW del código y, como el menú solo ofrece opciones válidas, no se pueden escribir mal.

Bloques y código lado a lado: el proyecto Parpadeo de LED

Basta de teoría, veamos un ejemplo real. En el proyecto Parpadeo de LED se conectan un LED y una resistencia al pin 9, y el LED parpadea cinco veces por segundo. En la tabla de abajo traducimos uno a uno a código los bloques de la imagen de arriba. Cada fila es un bloque, y cada bloque es una línea de código:

BloqueCódigo C++Qué hace
configuración (una vez)void setup() { … }Su contenido se ejecuta una vez al arrancar la placa
configurar pin 9 como SALIDApinMode(9,OUTPUT);Convierte el pin 9 en una salida capaz de manejar el LED
repetir siemprevoid loop() { … }Su contenido se repite mientras la placa funcione
escribir ALTO en pin 9digitalWrite(9,HIGH);Pone 5 V en el pin y el LED se enciende
esperar 100 msdelay(100);Detiene el programa 100 milisegundos
escribir BAJO en pin 9digitalWrite(9,LOW);Pone el pin a 0 V y el LED se apaga
esperar 100 msdelay(100);Espera 100 ms con el LED apagado
C++ (Arduino IDE)
1void setup() {
2  pinMode(9,OUTPUT);     // LED pini çıkış / LED pin as output
3}
4
5void loop() {
6  digitalWrite(9,HIGH);  // LED'i yak / Turn the LED on
7  delay(100);            // 100 ms bekle (1000 ms = 1 sn) / Wait 100 ms (1000 ms = 1 s)
8  digitalWrite(9,LOW);   // LED'i söndür / Turn the LED off
9  delay(100);            // 100 ms bekle / Wait 100 ms
10}

En el código hay algunas cosas que no ves en los bloques: la palabra void, las llaves y los puntos y coma. Son reglas de sintaxis de C++, y en los bloques de eso se encarga la propia forma. El hueco de un bloque contenedor hace el papel de las llaves, y los bloques colocados uno debajo de otro, el del orden de las líneas. Si cambiaras el 100 de la ranura por 1000, el código diría delay(1000) y el LED parpadearía una vez por segundo. Si eligieras BAJO en lugar de ALTO en el menú, HIGH pasaría a ser LOW. Gracias a esta correspondencia uno a uno, después de unos cuantos proyectos empiezas a leer el código sin mirar los bloques. El circuito y el montaje paso a paso de este mismo proyecto están en la parte 2 de la serie: parpadeo de un LED con programación por bloques.

Los bloques no se cargan directamente en la placa. En BlueGrays los bloques hacen que el programa sea más fácil de leer y entender; lo que se carga en la placa es siempre el código real del mismo proyecto. En los proyectos de Arduino y ESP32 copias el código en el Arduino IDE; en los de Pico, en Thonny, y lo cargas desde ahí.

¿Qué significan los colores de los bloques?

En los editores de bloques el color no es decoración: indica de qué categoría viene cada bloque. Con solo echar un vistazo a un programa, los colores te permiten leer «aquí se declara una variable, aquí se toma una decisión, aquí hay un bucle». Estas son las categorías que verás en las imágenes de bloques de los proyectos de BlueGrays:

ColorCategoríaBloques de ejemplo de las imágenesCódigo
TurquesaEstructura del programa, entrada/salida de pines, esperasconfiguración (una vez), repetir siempre, configurar pin … como SALIDA, escribir ALTO en pin …, leer un pin, esperar … mssetup(), loop(), pinMode(), digitalWrite(), digitalRead(), delay()
Turquesa oscuroBloques de pin y de tiempo de la Picopin led : GP LED_PIN, SALIDA; encender (on) / apagar (off) el pin led; esperar 0.5 segundosPin(…, Pin.OUT), led.on(), led.off(), time.sleep()
Rosa paloVariablesvariables globales (al principio), declarar entero (int) … = …, asignar un valor a una variableint ledState = 0; ledState = …;
Gris azuladoLógicabloque de condición, comparaciones ≠ y =, negaciónif, !=, ==, !
VerdeBuclescontar con i de 0 a 5 en pasos de 1for (int i = 0; i < 6; i++)
MoradoArraysarray con los valores 2 3 4 5 6 7, elemento i de ledPinsint ledPins[] = {2, 3, 4, 5, 6, 7}; ledPins[i]

Las formas también dan pistas. Los bloques de condición y comparación tienen extremos en punta, parecidos a un hexágono, y encajan en la ranura de condición de un bloque de condición; los bloques de números y variables, en cambio, tienen los extremos redondeados. Hay un detalle de la tabla en el que conviene fijarse: en el bucle que cuenta con i de 0 a 5 en pasos de 1, el límite superior está incluido, así que i toma los valores 0, 1, 2, 3, 4 y 5. En código se escribe con la condición i < 6, y el bucle da seis vueltas. El proyecto Luz secuencial LED enciende seis LED uno tras otro justo con este bloque; explicamos los bloques de bucles y arrays en detalle en la parte bucles y variables de la serie.

Bloques del proyecto Encender y apagar un LED con un botón: bloques de variables, lógica y pines
Encender y apagar un LED con un botón: los bloques rosa palo son variables, los gris azulado toman decisiones y los turquesa leen y escriben pines. Cada pulsación del botón invierte el estado del LED.

Los bloques de condición anidados de esta imagen se convierten en líneas if anidadas en el código. El bloque exterior con la comparación button ≠ lastButton es la línea if (button != lastButton) y actúa cuando cambia el estado del botón. El bloque interior con button = 1 solo detecta el momento de la pulsación. El bloque que asigna a ledState la negación de ledState es la línea ledState = !ledState;: el 0 pasa a 1 y el 1 pasa a 0. El bloque siguiente, que escribe ledState en el pin 7, es digitalWrite(7, ledState);. Puedes ver el proyecto completo en la página Encender y apagar un LED con un botón; explicamos la relación entre el bloque de condición e if/else en la parte botones y condiciones de la serie.

C++ en Arduino y ESP32, MicroPython en la Pico

La misma lógica de bloques se traduce a distintos lenguajes según la placa. En los proyectos de Arduino y ESP32 los bloques equivalen a código C++, y los bloques de configuración y repetir siempre se convierten en setup() y loop(). Por ejemplo, los bloques del proyecto LED Parpadeante con ESP32 tienen la misma estructura que el Parpadeo de LED; solo cambian el pin, que es el 5, y la espera, de 500 ms. En los proyectos de Raspberry Pi Pico, en cambio, los bloques se convierten en MicroPython. Aquí no existe una función setup(): lo que hay dentro del bloque de configuración se convierte en líneas que se ejecutan una vez al principio del archivo, y el bloque repetir siempre pasa a ser un bucle while True:.

Bloques del proyecto LED externo con la Raspberry Pi Pico: bloques de pin y de tiempo que se convierten en MicroPython
LED externo con la Raspberry Pi Pico en GP14: los bloques turquesa oscuro equivalen al objeto Pin y a la instrucción time.sleep() de MicroPython. El LED se enciende medio segundo y se apaga medio segundo.
MicroPython
1from machine import Pin
2import time
3
4# ============ PIN ============
5LED_PIN = 14                    # Boştaki herhangi bir GPIO / Any free GPIO
6led = Pin(LED_PIN, Pin.OUT)     # led adlı pin, ÇIKIŞ / pin named led, OUTPUT
7
8print("== BlueGrays: Pico Harici LED Blink ==")
9print("LED pin: GP" + str(LED_PIN))
10print("500ms yakip 500ms sonduruyor / 500ms on 500ms off")
11
12# ============ ANA DÖNGÜ / MAIN LOOP ============
13while True:
14    led.on()                    # LED'i yak / Turn the LED on
15    print("[LED] ACIK / ON")
16    time.sleep(0.5)             # 0.5 saniye bekle / Wait 0.5 s
17
18    led.off()                   # LED'i söndür / Turn the LED off
19    print("[LED] KAPALI / OFF")
20    time.sleep(0.5)             # 0.5 saniye bekle / Wait 0.5 s

Puedes seguir la correspondencia línea a línea. El bloque «declarar entero (int) LED_PIN = 14» dentro de «variables globales (al principio)» es la línea LED_PIN = 14; como en Python no se escriben los tipos, la parte (int) no aparece en el código. El bloque «pin led : GP LED_PIN, SALIDA» se convierte en led = Pin(LED_PIN, Pin.OUT). «encender (on) el pin led» es led.on(), «esperar 0.5 segundos» es time.sleep(0.5) e «imprimir en serie» es una línea print(). El bloque «crear texto con» une con + el texto «LED pin: GP» y el valor de LED_PIN. Atención: en Arduino la espera va en milisegundos (100 ms) y en MicroPython en segundos (0.5), y los bloques muestran esa diferencia con bloques distintos para ms y para segundos. Para el circuito, consulta la página LED externo con la Raspberry Pi Pico; si la Pico es nueva para ti, leer antes qué es la Raspberry Pi Pico te lo pondrá más fácil.

Ventajas y límites de la programación por bloques

TemaVentajaLímite
Errores de sintaxisNo hay errores de punto y coma, paréntesis ni mayúsculas y minúsculasLos errores de lógica siguen existiendo: un pin o una espera equivocados también lo están en bloques
LegibilidadLos colores y las formas muestran la estructura del programa de un vistazoLos programas largos ocupan mucho espacio en bloques; el código de texto es más compacto
Ritmo de aprendizajeEl primer programa llega en minutos y los conceptos se vuelven concretosSi nunca sales de los bloques, no desarrollas habilidades propias del código, como leer mensajes de error
AlcanceEstán listas las piezas básicas: pines, esperas, condiciones, bucles, variables y puerto serieNo todas las bibliotecas ni todos los detalles de hardware tienen bloque; los proyectos avanzados necesitan código
Relación con la placaLa misma lógica resulta familiar en Arduino, ESP32 y PicoLa placa siempre ejecuta código de texto, así que tarde o temprano hay que conocerlo

La programación por bloques no es la respuesta a todo: es un puente. En las primeras semanas es una herramienta muy potente para entender la lógica de un programa, pero el objetivo real es cruzar ese puente en algún momento y leer código de texto con soltura. Ver bloques y código lado a lado acelera ese paso, porque en cada proyecto nuevo ves una y otra vez cómo los mismos bloques se convierten en las mismas líneas. Después de encontrarte el bloque «repetir siempre» en diez proyectos, la palabra loop() ya no te resultará extraña. Cuando estés listo para el código de texto, el artículo programación Arduino desde cero lo explica todo, de las variables a las funciones, con ejemplos.

¿Para quién es la programación por bloques?

  • Niños y familias: los niños a partir de 9 o 10 años que leen con soltura pueden empezar junto a un adulto. Con los bloques en la pantalla y un LED encendiéndose en la protoboard, programar deja de ser algo abstracto.
  • Docentes y clubes de robótica: explicar un proyecto primero con bloques y pasar luego a su código reúne distintos niveles en la misma clase. El plan de clase que hemos preparado para ello está en la última parte de la serie: plan de clase de robótica con programación por bloques.
  • Principiantes en Arduino: si acabas de comprar tu placa y los primeros programas te resultan confusos, los bloques son la forma más rápida de ver qué hace cada línea. Para conocer la placa en sí, empieza por qué es Arduino.
  • Quien tenga dificultades para leer código: entender un programa escrito por otra persona es una habilidad en sí misma. Mirar los bloques de un proyecto ya hecho para captar su estructura facilita ver qué hace un código largo y dónde.

Comparación con Scratch, mBlock, Tinkercad y MakeCode

La mayoría de las herramientas que vienen a la mente al hablar de programación por bloques son editores para el ordenador o el navegador, y cada una destaca en su terreno. Lo que tienen en común es que tú arrastras los bloques y construyes tu propio programa. BlueGrays responde a otra necesidad: muestra los bloques de proyectos ya hechos y probados junto al esquema del circuito, la lista de componentes y el código real. En la app no puedes (por ahora) ordenar tus propios bloques para crear un programa; en su lugar, lees cómo está construido un programa que se sabe que funciona. Por eso estas herramientas no compiten, sino que se complementan. Por ejemplo, puedes comparar una secuencia de semáforo que hayas creado en mBlock con los bloques del proyecto Semáforo y, si aún no tienes placa, simular el circuito en Tinkercad. Para más detalles, consulta las guías programar Arduino con mBlock y simulación de Arduino en Tinkercad.

Herramienta¿Quién ordena los bloques?Dónde destaca
ScratchTú, en el ordenadorUn primer paso en la programación con animaciones, historias y juegos
mBlockTú, en el ordenadorProgramar placas como Arduino con bloques al estilo Scratch y ver el código generado
Tinkercad CircuitsTú, en el navegadorMontar un circuito virtual y simularlo con código de bloques o de texto
MakeCodeTú, en el navegadorPasar de bloques a JavaScript y Python con placas como la micro:bit
BlueGraysVienen hechos y emparejados con el código del proyectoLeer los bloques de proyectos probados junto al código real, el esquema y la lista de componentes

Cómo usar la programación por bloques en la app BlueGrays

  1. Elige en Descubrir › Proyectos uno con la insignia de bloques. También puedes usar el filtro para ver solo los proyectos con bloques. Más de 100 proyectos de la app tienen versión en bloques; la mayoría son de Arduino y el resto, de ESP32 y Raspberry Pi Pico.
  2. En la sección de código del proyecto, activa el interruptor Ver en bloques. En lugar del código aparecen los bloques del mismo programa; si tocas la imagen se abre a pantalla completa y puedes ampliarla cómodamente.
  3. Pasa a la pestaña Entiende los bloques. El programa se explica paso a paso: en cada paso solo ves los bloques de ese paso y lo que hacen.
  4. Si quieres saber qué hace una instrucción, consulta la Guía de código. Cada ejemplo aparece con instrucciones de Arduino y MicroPython y también en bloques.
  5. Desactiva el interruptor para volver al código real. Cópialo, pégalo en el Arduino IDE (en Thonny para la Pico) y cárgalo en tu placa.
  6. Refuerza lo aprendido con las Preguntas del día: 5 preguntas cada día en niveles de A1 a C2, una clasificación semanal e insignias.

En 31 proyectos tanto los bloques como el código son totalmente gratuitos; en el resto, los bloques se desbloquean con Premium, igual que el código. Algunos proyectos gratuitos que sirven como buen primer paso: Parpadeo de LED, Dos LED parpadeando alternadamente, Semáforo, Luz secuencial LED, LED Parpadeante con ESP32 y Parpadeo LED integrado de la Raspberry Pi Pico. Puedes ver todos los proyectos con bloques por plataforma en la página de programación por bloques, donde además puedes comparar los bloques y el código de un proyecto de ejemplo lado a lado.

Serie De los bloques al código: hoja de ruta

  1. Qué es la programación por bloques y cómo un programa en bloques se convierte en código real (este artículo)
  2. El primer programa: hacer parpadear un LED con programación por bloques, bloques y C++ lado a lado
  3. Botones y condiciones: el bloque de condición e if/else
  4. Bucles y variables: repetir siempre, contar, arrays y contadores
  5. Leer sensores con bloques, el puerto serie y MicroPython en la Pico
  6. Para docentes: plan de clase de robótica con programación por bloques

En la siguiente parte de la serie montamos desde cero el proyecto Parpadeo de LED de este artículo, con el circuito, los bloques y el código C++ lado a lado, en parpadeo de un LED con programación por bloques. Mientras tanto, puedes abrir en la app BlueGrays los proyectos mencionados aquí con su esquema y su código, y pasar con un toque a la versión en bloques del mismo programa con Ver en bloques o a la explicación paso a paso con Entiende los bloques.

Preguntas frecuentes

¿Qué es la programación por bloques?

La programación por bloques es una forma de crear programas apilando bloques de colores que encajan como piezas de puzle, en lugar de escribir instrucciones. Cada bloque es una instrucción y los bloques se ejecutan en orden de arriba abajo. Como no se pueden cometer errores de sintaxis, niños y principiantes se concentran en la lógica.

¿Qué diferencia hay entre la programación por bloques y la programación con texto?

Los conceptos son los mismos: instrucciones, orden, condiciones, bucles y variables existen en ambas. La diferencia está en la escritura; el código de texto necesita puntos y coma, paréntesis y una ortografía exacta, mientras que en los bloques de eso se encarga la forma de las piezas. En programas largos y complejos, el código de texto es más práctico.

¿A qué edad se puede aprender programación por bloques?

Los niños a partir de 9 o 10 años que leen con soltura pueden empezar junto a un adulto, y para los más pequeños existen herramientas de bloques con imágenes. No hay edad máxima: los adultos que empiezan con Arduino también aprovechan mucho los bloques en sus primeros proyectos.

¿Con qué programas se hace la programación por bloques?

Los más conocidos son Scratch, mBlock, Tinkercad Circuits y MakeCode, donde arrastras bloques en el ordenador y construyes tu propio programa. En la app BlueGrays lees los bloques de proyectos de Arduino, ESP32 y Pico ya hechos y probados junto a su código real. Estas herramientas se complementan.

¿Se puede programar Arduino con bloques?

Sí, pero la placa siempre ejecuta código de texto. Herramientas como mBlock traducen los bloques a código Arduino por debajo y lo cargan. En BlueGrays los bloques coinciden uno a uno con el código C++ del proyecto; para cargarlo, copias el código y lo pegas en el Arduino IDE.

¿Cómo pasar de la programación por bloques al código de texto?

Lo más eficaz es mirar lado a lado los bloques y el código del mismo programa. Tras seguir en varios proyectos en qué línea se convierte cada bloque, empiezas a leer código sin bloques. Después prueba a hacer pequeños cambios directamente en el código, por ejemplo cambiar la espera o el número de pin.

Ver todos los proyectos
Parpadeo de LED
#1Principiante

Parpadeo de LED

El primer hola de la electrónica: encender y apagar un solo LED. El Arduino enciende y apaga el LED a intervalos cortos, así que la luz parpadea rápido. Ves de la forma más sencilla cómo la placa cont

4.6(188)
1127
Dos LED parpadeando alternadamente
#2Principiante

Dos LED parpadeando alternadamente

Dos LED parpadean rápido por turnos: cuando uno se enciende, el otro se apaga, como si se pasaran una pelota. El Arduino deja cada luz encendida una quinta parte de segundo y luego le toca a la otra.

4.6(105)
343
Semáforo
#3Principiante

Semáforo

Una copia en miniatura del semáforo que ves cada día en la calle. El rojo se queda dos segundos, el amarillo brilla un instante, el verde se queda dos segundos y luego vuelve al rojo pasando otra vez

4.8(131)
397
Luz secuencial LED
#5Intermedio

Luz secuencial LED

Luces que se encienden una tras otra, como si corrieran. El Arduino enciende seis LED de uno en uno; cada uno brilla un instante y se apaga, así que la luz recorre la fila de principio a fin y vuelve

4.6(85)
207
Encender y apagar un LED con un botón
#10Principiante

Encender y apagar un LED con un botón

Pulsas el botón una vez y la luz se enciende, lo pulsas otra vez y se apaga, igual que el interruptor de tu habitación. El Arduino nota cada pulsación y cambia el LED al estado contrario, esperando un

4.8(100)
167
LED Parpadeante con ESP32
#103Principiante

LED Parpadeante con ESP32

Enseña el uso básico de la salida GPIO con ESP32. Conseguimos un efecto de parpadeo encendiendo y apagando un LED desde el pin digital. Versión para ESP32 del clásico proyecto blink en Arduino UNO; los comandos básicos de blink en el entorno Arduino son los mismos, pero la distribución de pines y los niveles GPIO de 3,3 V del ESP32 difieren de los del Arduino UNO.

4.7(37)
99
Parpadeo LED Integrado Raspberry Pi Pico (Pico y Pico W)
#147Principiante

Parpadeo LED Integrado Raspberry Pi Pico (Pico y Pico W)

¡El proyecto de apertura de la serie Raspberry Pi Pico! Hacemos parpadear el LED verde integrado para verificar que la placa funciona — un experimento clásico "Hello World". SIN componentes externos, solo Pico y cable USB. El código está escrito en MicroPython (el lenguaje oficialmente respaldado por la Raspberry Pi Foundation). Aprende la clase machine.Pin, el modo Pin.OUT, los métodos led.on()/off() y time.sleep() en Thonny IDE. Sigue cada cambio en vivo en l

5.0(1)
10
Encendido de un LED externo con la Raspberry Pi Pico (placa de pruebas)
#148Principiante

Encendido de un LED externo con la Raspberry Pi Pico (placa de pruebas)

El siguiente paso tras el LED integrado de Pico: conectar un LED externo a la placa de pruebas y controlarlo a través del pin GP14. Con este proyecto aprenderás a utilizar cualquier pin GPIO de uso general del Pico como salida, la polaridad del LED (patilla larga = ánodo/+, patilla corta = cátodo/–) y por qué es imprescindible utilizar una resistencia limitadora de corriente (220 Ω). Si no colocas la resistencia, el LED recibirá una corriente excesiva y podría quemarse. El circuito es muy sencil

4.5(2)
7