🤖 Manual AlbertCode v3

Traductor de Pseudocódigo a Arduino

🎯 ¿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ño en vez de sino)
  • No cerrar bloques (finsi, finmientras, etc.)
  • Espacios incorrectos en operadores (x=x+1 en vez de x = x + 1)
  • Mayúsculas/minúsculas inconsistentes (aunque el parser es flexible)

🐛 Debug rápido

  1. Abrí la consola del navegador (F12 → Console)
  2. Probá con un código mínimo: imprimir "test"
  3. Verificá los mensajes de error que aparecen
  4. Revisá que todas las secciones estén bien cerradas