Al buscar información sobre un osciloscopio Arduino suelen confluir dos inquietudes técnicas muy concretas: por un lado, quienes desean construir un osciloscopio casero con Arduino y PC aprovechando las entradas analógicas de la placa para graficar ondas de baja frecuencia en pantalla (un proyecto formativo excelente para entender cómo funciona un convertidor analógico-digital); por otro lado, desarrolladores y aficionados a la robótica que trabajan con Arduino UNO, Nano, ESP32 o Raspberry Pi y necesitan un osciloscopio de verdad para depurar modulaciones PWM de servomotores, ruido en fuentes conmutadas o tramas de datos en buses serie I2C, SPI y UART. En esta guía detallada resolvemos ambos escenarios con código práctico, esquemas de protección y criterios de instrumentación profesional.

¿Cuál es el mejor osciloscopio para proyectos con Arduino y microcontroladores? Comparativa 2026
Cuando un circuito con microcontroladores va más allá de medir la salida lenta de un potenciómetro o un sensor de temperatura y entran en juego señales PWM de motores, transiciones lógicas de nanosegundos o buses de comunicación digital, un monitor casero basado en el ADC de Arduino resulta insuficiente por falta de velocidad y memoria. Esta tabla reúne los instrumentos más valorados por la comunidad de electrónica en relación calidad-precio:
| Modelo exacto | Formato | Ancho de banda | Canales | Muestreo máx. | Aislamiento USB / Chasis | Punto fuerte con microcontroladores | Oferta |
|---|---|---|---|---|---|---|---|
| Sobremesa de banco | 100 MHz | 2 analógicos | 1 GSa/s (24 Mpts) | Tierra PE de red (requiere precaución en masa) | Decodificación hardware de I2C, SPI y UART en pantalla con 24 millones de puntos para capturar tramas largas | VER MEJOR PRECIO | |
| Módulo USB para PC | 25 MHz | 2 analógicos | 100 MSa/s | Aislamiento galvánico USB integrado | Protege al 100% los puertos USB del ordenador frente a sobretensiones o bucles de tierra accidentales en protoboard | VER MEJOR PRECIO | |
| Módulo USB para PC | 20 MHz | 2 analógicos + 16 lógicos | 48 MSa/s | Masa compartida con PC | Analizador lógico integrado de 16 canales digitales para monitorizar simultáneamente buses paralelos y pines GPIO | VER MEJOR PRECIO | |
| Portátil de mano con batería | 50 MHz | 2 analógicos | 250 MSa/s | Aislado al operar a batería | Instrumento 3 en 1 con multímetro True-RMS y generador DDS para inyectar señales de prueba en circuitos autónomos | VER MEJOR PRECIO | |
| Sobremesa de banco | 110 MHz | 2 analógicos | 1 GSa/s | Tierra PE de red | La opción de sobremesa con mandos giratorios y pantalla a color de 7 pulgadas más asequible para estudiantes de robótica | VER MEJOR PRECIO | |
| Módulo USB para PC | 10 MHz | 2 analógicos + AWG | 100 MSa/s | Masa compartida con PC | El entorno de software PicoScope 7 con decodificación nativa de más de 30 protocolos serie y generador arbitrario | VER MEJOR PRECIO |
- 100 MHz de ancho de banda en 2 canales analógicos con 1 GSa/s de muestreo en tiempo real.
- Profundidad de memoria de 24 Mpts incluida de serie y captura de 30.000 formas de onda/s.
- Incluye 2 sondas pasivas PVP2150 de 150 MHz y decodificación de protocolos serie.
- Aislamiento galvánico real entre la etapa de medida BNC y el puerto USB del ordenador.
- Protege la placa base del portátil frente a bucles de masa accidentales en el laboratorio.
- 25 MHz de ancho de banda, 100 MSa/s de muestreo y canal dedicado de disparo externo (EXT).
- Combina 2 canales analógicos de 20 MHz (48 MSa/s) con un analizador lógico digital de 16 canales.
- Compatible con el ecosistema libre Sigrok / PulseView en Windows, Linux y macOS.
- Herramienta económica ideal para depurar tramas I2C, SPI y UART en proyectos Arduino y ESP32.
Cómo hacer un osciloscopio con Arduino y PC: tutorial de montaje y código paso a paso
Si tu objetivo es experimentar y programar un osciloscopio casero con Arduino para visualizar en la pantalla del ordenador señales eléctricas lentas (como la curva de carga y descarga de un condensador RC, la respuesta de una fotorresistencia LDR o señales de audio de muy baja frecuencia), puedes ponerlo en marcha en pocos minutos aprovechando la herramienta Serial Plotter de Arduino IDE.
1. Esquema de conexiones y circuito de protección básico para el ADC
El convertidor analógico-digital (ADC) del microcontrolador ATmega328P de Arduino UNO solo admite voltajes comprendidos estrictamente entre 0 V y 5 V (o entre 0 V y 3.3 V en placas ESP32 y Raspberry Pi Pico). Cualquier voltaje negativo respecto a masa o superior a 5 V perforará la unión de silicio del pin y destruirá el microcontrolador de forma permanente.
Para trabajar con un mínimo de seguridad en la protoboard, añade este sencillo circuito de protección en el pin de entrada A0:
- Resistencia de entrada en serie (10 kΩ): Limita la corriente que puede entrar al pin del microcontrolador ante un sobrevoltaje accidental.
- Diodo Zener de 5.1 V a masa: Con el cátodo conectado a
A0y el ánodo aGND, recorta cualquier pico inductivo o tensión superior a 5.1 V antes de que alcance el conversor. - Divisor de tensión resistivo (opcional): Si deseas medir señales continuas de hasta 10 V o 15 V, añade una segunda resistencia de 10 kΩ entre
A0yGND(divisor 2:1) y recalcula la escala de voltaje en el código.
2. Código C++ optimizado para Arduino IDE y Serial Plotter
El siguiente sketch en C++ configura la lectura del canal analógico y acelera el reloj del conversor modificando el registro ADCSRA para superar las limitaciones de velocidad del analogRead() convencional:
// Osciloscopio con Arduino UNO y Serial Plotter
// Autor: elosciloscopio.com
const int analogPin = A0;
void setup() {
// Comunicación serie a alta velocidad para reducir la latencia de transmisión
Serial.begin(115200);
// Aceleración del ADC mediante manipulación del prescaler (registro ADCSRA)
// Por defecto el prescaler es 128 (reloj ADC de 125 kHz -> 104 microsegundos por muestra)
// Al cambiarlo a 16 (0x04), elevamos el reloj ADC a 1 MHz (~13 microsegundos por muestra, ~77 kSa/s)
ADCSRA = (ADCSRA & 0xf8) | 0x04;
}
void loop() {
// Lectura del valor bruto del ADC (rango 0 a 1023 para 10 bits)
int rawValue = analogRead(analogPin);
// Conversión a voltios reales (referencia interna predeterminada de 5.0 V)
float voltage = (rawValue * 5.0) / 1023.0;
// Transmisión al puerto serie en formato numérico para el graficador
Serial.println(voltage);
}
Para visualizar la gráfica en tu ordenador:
- Carga el código en tu placa Arduino UNO desde el entorno Arduino IDE.
- Abre el menú Herramientas > Serial Plotter (o pulsa la combinación de teclas
Ctrl + Mayús + Len Windows). - En la esquina inferior derecha del Serial Plotter, asegúrate de seleccionar la velocidad de 115200 baudios para que coincida con el código.
- Verás representarse de forma continua la curva de voltaje en tiempo real a medida que varíe la tensión en la sonda de pruebas conectada al pin A0.
3. Programa de osciloscopio en PC: opciones con Processing y Python
El Serial Plotter de Arduino IDE cumple una función básica, pero carece de base de tiempos ajustable, controles de escala vertical en voltios por división (V/div) y sistema de disparo. Quienes buscan un programa de osciloscopio más avanzado para ordenador suelen recurrir a dos alternativas de código abierto:
- Processing (Java): La comunidad maker dispone de numerosos sketches de Processing que leen los datos recibidos por el puerto serie COM y dibujan una retícula clásica de osciloscopio con cuadrícula milimétrica, selector de acoplamiento y control de disparo por umbral de software.
- Python con PyQtGraph y PySerial: Para proyectos educativos universitarios, un script en Python permite graficar miles de muestras por segundo con aceleración gráfica por hardware, exportando los datos capturados a formato CSV o NumPy para análisis espectral mediante Transformada Rápida de Fourier (FFT).
Limitaciones técnicas del ADC de Arduino frente a un osciloscopio digital real
Aunque como ejercicio didáctico construir un monitor analógico resulta muy enriquecedor, es fundamental entender por qué una placa de microcontrolador no puede sustituir a un equipo de instrumentación en un banco de trabajo:
Monitor ADC con Arduino UNO (ATmega328P)
- Velocidad de muestreo muy baja: La función estándar
analogRead()requiere unos 104 µs por muestra (~9.600 muestras por segundo). Según el teorema de muestreo de Nyquist, solo permite registrar señales de hasta 2 o 3 kHz de forma coherente. - Rango dinámico nulo (0 V a 5 V unipolar): No puede medir señales alternas de corriente alterna (AC) con valores negativos sin circuitos externos de desplazamiento de nivel (offset DC), ni voltajes superiores a 5 V.
- Inexistencia de disparo por hardware (Trigger): Sin comparadores analógicos dedicados a detectar el flanco de subida o bajada, la onda se desplaza continuamente por la pantalla y resulta imposible congelar pulsos transitorios o glitches rápidos.
- Baja impedancia de entrada (~10 kΩ): Mientras que una sonda real de osciloscopio ofrece una impedancia de 10 MΩ para no perturbar el circuito, el pin de Arduino drena corriente de la señal y falsea la medición.
Osciloscopio digital real de laboratorio
- Velocidad de muestreo de hasta 1.000.000.000 Sa/s: Un osciloscopio digital de 1 GSa/s captura detalles con resolución temporal de nanosegundos y anchos de banda reales de 50 MHz a 100 MHz.
- Rango de voltaje seguro de hasta 300-400 V: Con sondas pasivas atenuadas 10X, permite diagnosticar fuentes conmutadas, transistores de potencia y relés con acoplamiento AC, DC y referencia a tierra.
- Sistema de disparo complejo (Trigger): Disparo por flanco, ancho de pulso, tiempo de caída, ventana lógica y congelación de eventos únicos en modo Single.
- Impedancia estandarizada de 1 MΩ || 15 pF: Conexión limpia que respeta la dinámica eléctrica original del circuito bajo prueba sin alterar su comportamiento.
¿Qué osciloscopio elegir para depurar Arduino, ESP32 y Raspberry Pi?
Al desarrollar proyectos de electrónica aplicada, robótica o domótica con microcontroladores, el osciloscopio se convierte en la herramienta indispensable para resolver averías que un multímetro digital jamás detecta:
1. Medición de señales PWM en servomotores y controladores de potencia
Las placas Arduino generan salidas PWM mediante temporizadores de hardware a frecuencias de 490 Hz o 980 Hz (o varias decenas de kilohercios en controladores MOSFET y drivers de motor paso a paso). Si una señal PWM presenta deformaciones en los flancos, caídas de tensión o sobreoscilaciones inductivas, el motor vibrará o el transistor disipará un exceso de calor. Para verificar el ciclo de trabajo (duty cycle) real y la limpieza de los pulsos, se requiere un equipo con ancho de banda suficiente, como los osciloscopios digitales de sobremesa de 100 MHz.
2. Depuración de buses de comunicación serie: I2C, SPI y UART
¿Por qué falla la lectura de un sensor de presión o una pantalla OLED en el bus I2C? Un analizador lógico digital puede mostrar si el byte recibido es correcto o no, pero no revela la causa física del error:
- No te muestra si las resistencias de pull-up en las líneas SDA y SCL tienen un valor excesivo, redondeando los flancos de subida y provocando violaciones de tiempo.
- No detecta rebotes mecánicos o ruido inductivo acoplado en las pistas de la placa o en los cables de la protoboard.
- No avisa si una caída en la línea de alimentación de 3.3 V o 5 V al activar un módulo Wi-Fi o Bluetooth reinicia el periférico.
Para este trabajo, un equipo como el Rigol DS1102Z-E o un analizador mixto como el Hantek 6022BL permiten correlacionar la trama de datos decodificada con la forma de onda analógica real. Si deseas profundizar en el análisis de puertos serie, consulta nuestra guía sobre cómo depurar el bus UART con osciloscopio y el tutorial de pinout de Arduino UNO.
3. Prevención de bucles de masa y cortocircuitos en el ordenador
Este es el peligro más habitual al medir placas de desarrollo conectadas por USB: en un osciloscopio de sobremesa estándar conectado a la red eléctrica, el cocodrilo de masa de la sonda está conectado internamente a la toma de tierra del edificio (PE). Si tu ordenador de sobremesa o portátil también está enchufado a la toma de corriente, ambos comparten la misma masa.
Si por descuido conectas la pinza de masa de la sonda a un pin de 5 V, a una salida de colector abierto o a una fuente de alimentación flotante, provocarás un cortocircuito directo a tierra que puede quemar la placa Arduino, fundir las pistas de la placa base o averiar el controlador USB de tu ordenador.
Para montar un banco de trabajo seguro con microcontroladores, los osciloscopios USB para PC con aislamiento galvánico de hardware, como el Owon VDS1022I, cortan por completo la continuidad eléctrica entre el circuito de prueba y el ordenador. Otra alternativa muy versátil para mediciones sin cables es emplear osciloscopios portátiles y de mano a batería o incluso visualizar señales en un osciloscopio en el móvil Android.
Preguntas frecuentes sobre osciloscopios y Arduino
Sí. El microcontrolador ESP32 incorpora un procesador de doble núcleo a 240 MHz y un convertidor ADC de 12 bits capaz de muestrear hasta unos 2 MSa/s utilizando acceso directo a memoria (DMA). Esto permite registrar y graficar señales analógicas periódicas de hasta unos 100 kHz a 200 kHz en un servidor web local o en una pantalla LCD SPI integrada. Conviene recordar que el ADC interno del ESP32 presenta una no-linealidad apreciable en los extremos del rango de voltaje (por debajo de 0.15 V y por encima de 3.1 V), por lo que requiere curvas de calibración por software para obtener valores de tensión exactos.
Porque en la inmensa mayoría de osciloscopios de sobremesa la pinza de masa está unida directamente a la toma de tierra de la red eléctrica. Si el ordenador que alimenta al Arduino también está conectado a la red, colocar la pinza de masa en cualquier punto del circuito que no sea el negativo común cerrará un bucle de corriente destructivo a través del chasis. Para evitar averías costosas se aconseja utilizar módulos con aislamiento galvánico integrado como el Owon VDS1022I o alimentar el ordenador portátil exclusivamente con su batería interna durante los ensayos.
Para quienes disponen de un presupuesto ajustado de entre 90 € y 130 €, un módulo USB con aislamiento como el Owon VDS1022I o un híbrido con analizador lógico como el Hantek 6022BL representan el equilibrio perfecto para trabajar en el escritorio del ordenador. Si se busca un equipo de laboratorio completo con mandos giratorios independientes, pantalla propia y decodificación de protocolos serie en tiempo real, el Rigol DS1102Z-E (en el entorno de los 260 €) es la referencia estándar indiscutible para estudiantes de formación profesional e ingeniería electrónica.