Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

ATMega328P: Guía Maestra del Microcontrolador de Arduino (Pinout, Características, Aplicaciones)

El ATMega328P (Microchip/Atmel) es el microcontrolador 8-bit AVR más icónico y utilizado del mundo, corazón de Arduino Uno, Nano, Pro Mini y millones de proyectos embebidos. Su arquitectura RISC de alto rendimiento, bajo consumo, rico periférico y ecosistema masivo (Arduino IDE, avr-gcc, PlatformIO, librerías infinitas) lo convierten en la opción default para aprendizaje, prototipado y producción de bajo/medio volumen. Analizamos su pinout completo, características, programación y aplicaciones.

¿Qué es el ATMega328P?

MCU 8-bit AVR RISC (Reduced Instruction Set Computer) con pipeline de 1 ciclo/instrucción (1 MIPS/MHz). Hasta 20 MHz (16 MHz típico en Arduino). Memoria: 32 KB Flash (programa), 2 KB SRAM (datos), 1 KB EEPROM (datos no volátiles). Periféricos: 23 I/O (14 digitales + 6 analógicos), 6 PWM (16-bit Timer1 + 2×8-bit Timer0/2), UART, SPI, I2C (TWI), Watchdog, Brown-out, ADC 10-bit 6 canales (15 ksps), Comparador analógico, Temp sensor interno. Alimentación: 1.8 – 5.5 V. Temperatura: -40 °C a +105 °C (industrial). Encapsulados: PDIP-28 (DIP), TQFP-32 (SMD), QFN/MLF-32.

Configuración de Pines (PDIP-28 / TQFP-32)

PDIP-28 (Arduino Uno/Nano/Pro Mini):

Pin DIPPin ArduinoNombre AVRFunciones Principales
1-PC6 (RESET)Reset activo bajo. PC6 si fuse RSTDISBL programado (pierde programación ISP).
2D0 (RX)PD0 (RXD)UART RX / GPIO
3D1 (TX)PD1 (TXD)UART TX / GPIO
4D2PD2 (INT0)GPIO / Interrupción externa 0
5D3 (PWM)PD3 (INT1/OC2B)GPIO / INT1 / PWM Timer2 OC2B
6D4PD4 (T0)GPIO / Timer0 clock externo
7VCCVCCAlimentación digital (1.8-5.5 V)
8GNDGNDTierra
9-PB6 (XTAL1)Cristal externo / Clock entrada
10-PB7 (XTAL2)Cristal externo
11D5 (PWM)PD5 (OC0B)GPIO / PWM Timer0 OC0B
12D6 (PWM)PD6 (OC0A)GPIO / PWM Timer0 OC0A
13D7PD7GPIO
14D8PB0 (ICP1/CLKO)GPIO / Timer1 Input Capture / Clock out
15D9 (PWM)PB1 (OC1A)GPIO / PWM Timer1 OC1A (16-bit)
16D10 (PWM/SS)PB2 (OC1B/SS)GPIO / PWM Timer1 OC1B / SPI SS
17D11 (PWM/MOSI)PB3 (OC2A/MOSI)GPIO / PWM Timer2 OC2A / SPI MOSI
18D12 (MISO)PB4 (MISO)GPIO / SPI MISO
19D13 (SCK)PB5 (SCK)GPIO / SPI SCK / LED built-in
20GNDGNDTierra
21AREFAREFReferencia ADC externa (opcional)
22AVCCAVCCAlimentación ADC (conectar a VCC + ferrita + 100 nF)
23A5 (SCL)PC5 (ADC5/SCL)ADC5 / I2C SCL / GPIO
24A4 (SDA)PC4 (ADC4/SDA)ADC4 / I2C SDA / GPIO
25A3PC3 (ADC3)ADC3 / GPIO
26A2PC2 (ADC2)ADC2 / GPIO
27A1PC1 (ADC1)ADC1 / GPIO
28A0PC0 (ADC0)ADC0 / GPIO

TQFP-32/QFN-32: Añade 2 pines ADC extra (ADC6, ADC7 en pines 19, 20) y 2 GND/VCC extra. No disponibles en DIP-28.

Características Destacadas

Cómo Usar el ATMega328P

  1. Hardware mínimo (Standalone): ATMega328P-PU (DIP) + Cristal 16 MHz + 2×22 pF + 10 kΩ Pull-up RESET + 100 nF VCC-GND + 100 nF AVCC-GND + LED + 220 Ω en PB5 (Pin 19) = "Arduino en protoboard". Coste < $2.
  2. Programación:
    • Vía Arduino ISP (otro Arduino como programador) → "Burn Bootloader" → luego subida sketch por UART (USB-Serial CH340/CP2102/FT232).
    • Directo ISP (USBasp, AVRISP mkII, Atmel-ICE) → avrdude / PlatformIO / Microchip Studio. Sin bootloader = 512 B extra Flash, arranque instantáneo.
  3. Software: Arduino IDE (fácil, librerías), PlatformIO + VS Code (profesional, multi-plataforma, IntelliSense), Microchip Studio (ASF, debugging HW debugWIRE), avr-gcc + Makefile/CMake (bare metal).

Aplicaciones Principales

Preguntas Frecuentes (FAQ)

¿Diferencia entre ATMega328 y ATMega328P?

Arquitectura idéntica. P = PicoPower: tecnología de proceso mejorada → consumo activo y sleep significativamente menor (ej. Power-down: 328P ~0.1 µA vs 328 ~1-5 µA @ 1.8 V). 328P soporta 1.8 V mínimo; 328 requiere 2.7 V. Siempre elija 328P para diseños nuevos.

¿Puede usarse sin placa Arduino?

Absolutamente. Es un MCU estándar. Use configuración mínima (cristal, reset, desacoplo) y programe vía ISP. Elimine bootloader para arranque instantáneo y Flash completa. El "Arduino" es solo: PCB + regulador + USB-Serial + bootloader + conector ICSP + shield headers. El MCU es idéntico.

¿ATMega328P vs ATMega328PB?

328PB (nuevo, 2016): 2 UART, 2 SPI, 2 I2C, 4 PWM 16-bit extra, 8 KB SRAM, 4 KB EEPROM, QFN-32/TQFP-32 only. No pin-compatible con 328P (DIP-28). Mejor periférico, mismo core.

Conclusión

El ATMega328P define la era "Arduino". Su equilibrio entre simplicidad (8-bit, DIP friendly), rendimiento (16 MIPS), periféricos completos, bajo consumo, voltaje amplio y ecosistema software inigualable lo hace inmortal. Para diseños nuevos de alto volumen/coste ultra-sensible, considere ATtiny (ATtiny817/1617: 16-bit timer, DAC, op-amp, UPDI, < $0.50) o ARM Cortex-M0+ (RP2040, STM32G0, SAMD21: 32-bit, 48-133 MHz, >256 KB Flash, < $1). Pero para mantenimiento, educación, bajo volumen, compatibilidad Arduino, y diseños 5 V robustos: el 328P sigue siendo el rey. Domine sus fuses, modos sleep, ADC ruido-reduction, y PWM 16-bit (Timer1) para exprimirlo al máximo.

Tecnología Industrial

  1. Construye un Spybot controlado por Bluetooth con Arduino
  2. FlickMote: Mando IR por gestos para Smart Home
  3. TV‑B‑Gone DIY con Arduino: Mando universal para apagar cualquier TV
  4. Construye un Reloj Maestro LED Personalizado con Alarma – Visible desde 12 Metros
  5. Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
  6. Soluciones de Alimentación Optimizadas para Proyectos Arduino
  7. Tres en raya con Arduino, matriz LED MAX7219 y carcasa de cartón
  8. Construye un Robot Cuadrúpedo Inteligente con Arduino: Guía Paso a Paso
  9. Construye un volante joystick personalizado con Arduino para gaming
  10. Construye una Máquina CNC Totalmente Funcional con Arduino Nano R3
  11. La evolución de Arduino: CEO Fabio Violante sobre tendencias de la industria e innovaciones futuras