🎯 ¿Qué es AlbertCode?
AlbertCode es un lenguaje de programación en español diseñado para aprender Arduino de forma sencilla. Escribí tu lógica en pseudocódigo y el traductor la convierte automáticamente en código C++ para tu placa Arduino.
💡 Ideal para:
- Estudiantes que se inician en programación
- Profesores que buscan herramientas educativas
- Prototipado rápido de ideas
- Aprender lógica sin complicaciones de sintaxis
🧱 Estructura de un Programa
Todo programa en AlbertCode tiene 3 secciones principales:
Variables
// Declará tus variables aquí
fin variables
al iniciar
// Configuración inicial (setup)
fin al iniciar
para siempre
// Código que se repite (loop)
fin parasiempre
📌 Nota: Las 3 secciones son opcionales, pero se recomienda usar al menos
al iniciar y para siempre para programas completos.
📋 Plantilla para copiar
// ============================================
// ALUMNO: _________________________________
// FECHA: __________________________________
// PROYECTO: _______________________________
// ============================================
Variables
// entero contador = 0
// caracter mensaje = "Hola"
fin variables
al iniciar
// pin 13 salida
// serial 9600
fin al iniciar
para siempre
// Tu código aquí
fin parasiempre
🔤 Variables
Las variables permiten guardar y manipular datos en tu programa.
| Tipo | Sintaxis | Ejemplo | Descripción |
|---|---|---|---|
| Entero | entero nombre = valor |
entero contador = 0 |
Números enteros (0, 1, 100, -5, etc.) |
| Caracter | caracter nombre = "texto" |
caracter mensaje = "Hola" |
Texto entre comillas |
Operaciones con variables
entero x = 10
entero y = 5
x = x + 1 // x ahora vale 11
y = x * 2 // y ahora vale 22
x = x - y // x ahora vale -11
⚠️ Reglas importantes:
- Los nombres de variables no pueden tener espacios
- Usá letras, números y guión bajo (ej:
mi_variable) - No uses palabras reservadas como nombres (ej:
si,mientras)
🔌 Comandos de Hardware
Pines
| Acción | Sintaxis | Ejemplo |
|---|---|---|
| Configurar como salida | pin N salida |
pin 13 salida |
| Configurar como entrada | pin N entrada |
pin 8 entrada |
| Entrada con pull-up | pin N entradapullup |
pin 8 entradapullup |
| Encender pin (HIGH) | encender N |
encender 13 |
| Apagar pin (LOW) | apagar N |
apagar 13 |
| Leer estado de pin | leer N |
estado = leer 8 |
Tiempo
| Acción | Sintaxis | Ejemplo |
|---|---|---|
| Esperar (milisegundos) | demorar milisegundos |
demorar 1000 (1 segundo) |
Comunicación Serial
| Acción | Sintaxis | Ejemplo |
|---|---|---|
| Iniciar serial | serial baudios |
serial 9600 |
| Imprimir texto | imprimir "texto" |
imprimir "Hola Mundo" |
| Imprimir variable | imprimir variable |
imprimir contador |
🔌 Conexión LED típica:
- LED patita larga (+) → Pin 13
- LED patita corta (-) → Resistencia 220Ω → GND
🔀 Estructuras de Control
Condicional Si / Sino
si condición entonces
// código si es verdadero
sino
// código si es falso
finsi
Operadores de comparación
| Operador | Significado | Ejemplo |
|---|---|---|
== |
Igual a | x == 5 |
!= |
Diferente de | x != 5 |
> |
Mayor que | x > 5 |
< |
Menor que | x < 5 |
>= |
Mayor o igual | x >= 5 |
<= |
Menor o igual | x <= 5 |
Bucle Mientras
mientras condición
// código a repetir
finmientras
Bucle Para
para variable = inicio hasta fin
// código a repetir
finpara
⚠️ Importante: Siempre cerrá los bloques con su correspondiente
finsi, finmientras, finpara, etc.
💡 Ejemplos Prácticos
1️⃣ LED Parpadeo
al iniciar
pin 13 salida
fin al iniciar
para siempre
encender 13
demorar 500
apagar 13
demorar 500
fin parasiempre
2️⃣ Botón → LED
Variables
entero estado
fin variables
al iniciar
pin 13 salida
pin 8 entradapullup
fin al iniciar
para siempre
estado = leer 8
si estado == 0 entonces
encender 13
sino
apagar 13
finsi
fin parasiempre
3️⃣ Contador Serial
Variables
entero x = 0
fin variables
al iniciar
serial 9600
fin al iniciar
para siempre
imprimir x
x = x + 1
demorar 1000
fin parasiempre
4️⃣ Semáforo Simple
al iniciar
pin 9 salida
pin 10 salida
pin 11 salida
fin al iniciar
para siempre
encender 9
demorar 3000
apagar 9
encender 10
demorar 1000
apagar 10
encender 11
demorar 3000
apagar 11
fin parasiempre
🔧 Solución de Problemas
| Problema | Posible Causa | Solución |
|---|---|---|
| No genera código | Faltan secciones principales | Agregá al iniciar y/o para siempre |
| Error en consola | Archivo JS no cargado | Verificá que interprete.js esté vinculado |
| Código vacío | Regex no reconoce comando | Verificá sintaxis y espacios |
| LED no responde | Pin no configurado | Agregá pin N salida en al iniciar |
| Botón no funciona | Resistencia pull-up faltante | Usá pin N entradapullup |
❌ Errores comunes de sintaxis:
- Usar acentos en palabras clave (
siñoen vez desino) - No cerrar bloques (
finsi,finmientras, etc.) - Espacios incorrectos en operadores (
x=x+1en vez dex = x + 1) - Mayúsculas/minúsculas inconsistentes (aunque el parser es flexible)
🐛 Debug rápido
- Abrí la consola del navegador (F12 → Console)
- Probá con un código mínimo:
imprimir "test" - Verificá los mensajes de error que aparecen
- Revisá que todas las secciones estén bien cerradas