Ir al contenido

Conceptos basicos del microcontrolador

Contenido alineado al Tema 1 — Conceptos basicos del curso de Microcontroladores (UNEXPO · Ing. Mecatronica), segun el material del Prof. Ing. Yoel Pire.

Un microcontrolador (μC) es un circuito integrado programable que integra en un solo chip los bloques basicos de una computadora en miniatura:

  • CPU — ejecuta las instrucciones del programa paso a paso.
  • Memorias — guardan el programa y los datos de trabajo.
  • Lineas de entrada y salida — conectan el chip con LEDs, botones, sensores, etc.
  • Perifericos — modulos internos o externos que amplian lo que puede hacer el dispositivo.

Para usarlo escribes un programa (firmware): la CPU lee las instrucciones almacenadas en memoria y las ejecuta. No hay sistema operativo como en una PC; el control es directo.

Antes del PIC, el Tema 1 estudia el esquema general de un microcontrolador. La CPU tiene registros de proposito general (variables) y seis registros especiales. Esos seis son los que nombra el profesor. El PIC18, mas adelante, les pone otro nombre.

Registro especialQue es
RI — registro de instruccionGuarda la instruccion que la CPU esta ejecutando. El programador no lo ve. En el PIC18 sigue siendo interno: no se escribe en el .ASM.
ACC — acumuladorEl resultado de la ALU cae aqui, debajo de ella. Ese mismo valor puede volver a entrar como operando. En el PIC18 no hay acumulador clasico. El parecido es W (WREG), y esta antes de la ALU.
Registro de estadoBanderas del resultado: cero, acarreo, signo. En el PIC18 es STATUS.
PC — contador de programaDireccion de la siguiente instruccion. Avanza solo, salvo un salto. En el PIC18 se llama igual: PC.
RDD — registro de direccion de datosDireccion de un dato en memoria. Sirve para el direccionamiento indirecto. No es la memoria. En el PIC18 es FSR (el dato se lee con INDF).
SP — puntero de pilaMarca el tope de la pila. La pila guarda direcciones, no variables. En el PIC18 es STKPTR. El libro clasico dice que un PIC antiguo no muestra un SP; el 18 si tiene este.
Esquema general: el PC direcciona la memoria de programa y la instruccion entra al RI; la ALU deja el resultado en el ACC y las banderas en el registro de estado; el RDD direcciona la memoria de datos y el SP marca la pila
Recorrido de un micro tradicional. El PC manda la direccion y la instruccion entra al RI; de ahi sale la operacion F hacia la ALU. El resultado cae en el ACC y las banderas salen por D. El RDD solo lleva una direccion de dato. CALL guarda el PC en la pila y RETURN lo devuelve. — Esquema general del Tema 1

La caja naranja es un registro. La caja gris es el lugar al que ese registro apunta.

El SP es la caja naranja: guarda un solo numero, la direccion del tope. La Pila es la caja gris: el almacen donde estan las direcciones del PC. La flecha «tope» va de ese registro a la casilla de arriba. CALL mete ahi la direccion del PC. RETURN saca la del tope y la devuelve al PC.

Con el RDD pasa lo mismo. El registro naranja lleva la direccion del dato. La memoria de datos, en gris, es donde esta el dato.

La ALU hace la cuenta: suma, resta, AND, OR y las comparaciones. El simbolo del Tema 1 es esta V.

Simbolo de la ALU: entran A y B por arriba, F por la izquierda, R sale por abajo y D sale por la derecha
A y B son los datos que entran. F dice que operacion hacer. R es el resultado. D son las banderas, y van al registro de estado. — Simbolo del Tema 1
LetraQue es
A y BLos dos operandos que entran
FEl tipo de operacion. La indica el RI
REl resultado. En el esquema general cae en el ACC
DEl estado de ese resultado: cero, acarreo, signo. Va al registro de estado

El detalle de cada uno, con codigo, esta en Arquitectura.

La pila es LIFO (Last In, First Out): lo ultimo que entra es lo primero que sale. El SP no guarda esas direcciones: indica cual quedo en el tope. Quien las guarda es la pila.

  • PUSH mete una direccion (normalmente la del PC, para saber donde volver).
  • POP saca esa direccion y la devuelve al PC.

Si llamas una subrutina, la CPU hace PUSH de “donde estaba”. Al terminar, POP restaura el PC y el programa sigue. Sin ese par, no hay forma de volver.

Microcontrolador (μC)Microprocesador (μP)
Que integraCPU, memoria, buses y perifericos en un chipSolo la CPU (procesador)
Tipo de sistemaCerrado — computador completo de prestaciones fijasAbierto — conectas memoria, E/S y perifericos externos
Pines al exteriorSalen las lineas que gobiernan perifericos y puertosSalen buses de direccion, datos y control para armar un PC
ProgramacionTe concentras en la aplicacionDebes controlar tambien dispositivos externos
Ejemplo academicoPIC18F4550 (un solo chip)CPU de una PC clasica en socket (RAM, chipset y almacenamiento van en la placa madre, no dentro del chip del procesador)
Comparacion de arquitecturas y sistemas de computo embebido
El μC integra CPU, memoria y perifericos en un chip; el μP es solo el procesador y el resto del sistema se monta aparte. — Basado en Tema 1 — Conceptos basicos · UNEXPO

La Raspberry Pi no es un microcontrolador ni un microprocesador suelto. Es una computadora de placa unica (SBC) — una mini PC que ya trae montada en la placa:

  • Un SoC (System-on-Chip): nucleos ARM de aplicacion, GPU y otros bloques en un mismo circuito integrado.
  • RAM incluida en la placa (soldada o en el paquete del SoC, segun el modelo).
  • Conectores USB, HDMI, red, alimentacion, GPIO.
  • microSD (o almacenamiento interno) para el sistema operativo y tus programas.

No partes de un chip vacio al que debas soldarle RAM como en un diseño academico con μP puro: la placa ya es un equipo completo. Ejecuta Linux (sistema operativo), no el firmware directo que grabas en Flash como en el PIC.

PIC18F4550Raspberry Pi
Que esMicrocontrolador (μC)Computadora de placa unica (SBC)
ProgramaFirmware en Flash del chipSO + apps en tarjeta SD / Linux
MemoriaFlash, RAM y EEPROM dentro del chipRAM en la placa + almacenamiento en SD
Nivel de estudioRegistros, bits, ensambladorPython, Linux, drivers de alto nivel

Los perifericos permiten al μC interactuar con el mundo. Pueden estar dentro del chip o conectarse por fuera.

Perifericos internos (integrados en el chip)

Sección titulada «Perifericos internos (integrados en el chip)»

Modulos que el fabricante incluye dentro del microcontrolador. En el PIC18F4550 encontraras, entre otros:

  • Temporizadores / contadores (Timer0, Timer1, Timer2)
  • Conversor A/D (ADC)
  • UART / USART (comunicacion serial)
  • PWM / modulo CCP
  • Interfaces SPI e I2C
  • USB (en el 4550)
  • Memoria EEPROM interna

Dispositivos que no vienen dentro del chip y se cablean a los pines:

  • Sensores (temperatura, presion, distancia…)
  • Modulos de comunicacion (Bluetooth, Wi-Fi, GPS…)
  • Memorias externas
  • Pantallas LCD u OLED
  • Displays de 7 segmentos
  • Teclados matriciales
  • Motores, reles, drivers

En laboratorio usaras ambos: el ADC interno del PIC y, por ejemplo, un LCD externo cableado a los puertos GPIO.

Memoria de programa (tecnologia de fabricacion)

Sección titulada «Memoria de programa (tecnologia de fabricacion)»

Segun como se graba el firmware, el curso distingue:

TipoQue esRegrabable
ROMPrograma grabado en fabricaNo
OTPOne-Time Programmable — se graba una vezNo
EPROMSe graba electricamente; se borra con luz UVSi (con borrado UV)
EEPROMGrabado y borrado electricoSi
FlashGrabado electrico; la usa el PIC18F4550 para el .hexSi

En el PIC18F4550 el programa vive en Flash (no volatil: se conserva al apagar). Los datos que quieras guardar entre encendidos pueden ir en EEPROM interna.

TipoFuncion en el μC
RAMVariables temporales, contadores, banderas mientras el programa corre. Se pierde al apagar si no la guardas antes.
Registros especiales (SFR)Controlan puertos, timers, ADC, etc. (lo veras en Fundamentos).

Un microcontrolador puede usarse en:

  • Control de sensores y actuadores
  • Control de procesos industriales
  • Equipos medicos y robótica
  • Electrodomesticos e interfaces hombre-maquina (teclado, pantalla)
  • Control de motores (PWM)
  • Comunicacion (SPI, I2C, UART, USB)
  • Relojes, alarmas, calculadoras y muchas mas

Ya conoces los conceptos generales del Tema 1. Sigue con Que es el PIC18F4550 para ver como se aplican estos bloques al chip que usaras en el laboratorio.

Examen interactivo

Conceptos basicos del microcontrolador

Basado en: Tema 1. Conceptos Básicos (1).pdf

0 de 0 respondidas

Los bloques fundamentales de un microcontrolador son...
Un microcontrolador es un sistema...
En el PIC18F4550, el programa (.hex) se guarda en...
Cual es un periferico INTERNO del microcontrolador?
La memoria Flash del PIC se caracteriza por...
El registro de instruccion (RI / IR) guarda...
El RDD (registro de direccion de datos) es...
Una pila LIFO y un periferico significan...