Perifericos
Perifericos
Perifericos
MICROPROCESADORES - MICROCONTROLADORES
1
PERIFÉRICOS INTELIGENTES
MICROPROCESADORES - MICROCONTROLADORES
Solo se saca de StandBy a lo imprescindible, y además
se simplifica la tarea de la CPU
eLLAMADA
STANDBY OPERATIVO
eFIN_OPERACIO 2
N
PERIFÉRICOS INTELIGENTES
CONVERSOR A/D
MICROPROCESADORES - MICROCONTROLADORES
❑ Es usual contar con modelos
que incluyen ADCs de 10-bit y
12-bit, con tasas de muestreo
de algunos cientos de
kilomuestras/seg.
❑ Para optimizar el consumo y
aumentar performance es
posible que un periférico (ej:
timer) inicie la conversión
❑ Y que otro periférico (ej:
DMA) guarde el resultado Data
Transfer
donde convenga Controller
3
❑ El procesador sólo usa los
resultados
PERIFÉRICOS INTELIGENTES
MICROPROCESADORES - MICROCONTROLADORES
INTERFACE GRÁFICA (GUI)
❑ El uso de interfaz gráficas hace
más amigable y comercialmente
más interesante a un producto
❑ El uso de displays LCD surge
como la opción lógica debido al
bajo consumo.
❑ Combinado con un sensor “touch
screen” permite interactividad.
❑ Requiere de un ciclo de
actualización permanente, y por
eso suele ser un periférico
inteligente, con memoria de
4
imagen propia, o compartida con
el procesador
PERIFÉRICOS INTELIGENTES
CANALES DE COMUNICACIÓN
MICROPROCESADORES - MICROCONTROLADORES
❑ Para compartir datos entre el μP con otros dispositivos
existen alternativas cableadas o inalámbricas
❑ Las interfaces cableadas más simples son UART, SPI o I2C.
Y pueden ser potenciadas con recursos para soporte de
enlaces infrarrojos (IrDA), procesos de autosincronización de
relojes (auto-baud rate detect en LIN)
❑ A nivel intermedio algunos μC poseen interfaces CAN o USB
❑ Para alta tasas de transferencias ciertos procesadores tienen
interfaces Ethernet que incluyen el MAC y el PHY, que al
igual que en los periféricos previos suelen operar combinados
con timers y controladores DMA
❑ A medida que aumenta la tasa de datos, las secciones de 5
hardware necesitan complementarse con servicios de
software (stacks)
PERIFÉRICOS INTELIGENTES
CANALES DE COMUNICACIÓN
MICROPROCESADORES - MICROCONTROLADORES
❑ Para el caso de interfaces de RF hoy se disponen de transceivers
integrados que operan en la zona de 400MHz, 900MHz o 2,4GHz,
con muy bajo consumo de potencia.
❑ Esto es posible gracias a la posibilidad de integración de:
▪ Etapas lineales de amplificación de bajo ruido (LNA) para las
etapas de entrada (RX)
▪ Etapas lineales de potencia dentro de un chip (TX).
❑ Con etapas digitales para conformación de señales y modulación,
conversión a digital y demodulación en el dominio digital,
periféricos para armado de paquetes, agregado y validación de
códigos de detección de errores, los métodos de sincronización,
etc. 6
❑ Estas soluciones definen un amplio abanico de protocolos, desde
aquellos propios hasta los estándar (como ZigBee).
PERIFÉRICOS INTELIGENTES
STACK DE COMUNICACIÓN
MICROPROCESADORES - MICROCONTROLADORES
❑ A partir de la aparición de normas como LIN, CAN, USB,
Ethernet o de RF, no basta con disponer de un periférico que
atienda la interface física (PHY):
❑ El intercambio de datos O TRANSACCIÓN requiere fases
de sincronización, arbitraje (si hay varios másters),
identificación (del iniciador y destinatario), numeración (para
rearmado de grandes bloques de datos fuera de secuencia),
transmisión de datos (payload), incorporación de códigos de
detección de errores, y cierre de transacción.
❑ Requiera servicios auxiliares, de control de tráfico,
descubrimiento y numeración de nuevos agentes, o
administración de canales virtuales.
7
❑ El periférico cubre una parte de esas acciones, y el resto
suele ser resuelto por software, a través de un “stack”.
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
Transmisión de señales a media distancia
Velocidad de transmisión moderada
Envío en serie de la información
Estructuras complejas de transmisor y receptor
(conversor serie-paralelo y viceversa)
Sólo dos conductores imprescindibles (datos y masa)
8
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
9
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
Conexión de un microcontrolador al puerto serie del PC
❑ Para conectar el PC a un microcontrolador por el puerto serie
se utilizan las señales Tx, Rx y GND. El PC utiliza la norma
RS232, por lo que los niveles de tensión de los pines están
comprendidos entre +15 y -15 voltios. Los microcontroladores
normalmente trabajan con niveles TTL (0-5v). Es necesario por
tanto intercalar un circuito que adapte los niveles:
❑ Uno de estos circuitos, que se utiliza mucho, es el MAX232.
10
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
El chip MAX 232
• Este chip permite adaptar los niveles RS232 y TTL, permitiendo
conectar un PC con un microcontrolador. Sólo es necesario este
chip y 4 condensadores electrolíticos de 22 micro-faradios. El
esquema es el siguiente:
11
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
En lo referente al hardware, se ha popularizado
el uso del conector DB9, de 9 pines o de 25
pines
12
Protocolos RS232
MICROPROCESADORES - MICROCONTROLADORES
GND: Línea de tierra.
DTR (Data Terminal Ready): Prepara al modem para conectarse a una línea de
comunicación y mantener la conexión establecida. Este pin debe estar encendido
para mantener la conexión, si DTR es apagado, provoca una desconexión de la línea
DSR (Data Set Ready): Indica que el modem está preparado. Usualmente el DSR
esta todo el tiempo encendido porque este valor es un indicador de que el MODEM
esta encendido y listo.
RTS (Request To Send): Dice al modem que el PC quiere enviar datos.
CTS (Clear To Send): Indica que el modem está preparado para recibir datos desde el
PC.
DCD (Data Carrier Detect): Indica que el modem tiene de verdad conexión remota.
Este pin es encendido cuando el modem recibe una señal remota y se mantiene
encendido durante el enlace.
TXD (Transmit Data): Línea de transmisión de datos serie al modem. El TXD no
puede transmitir datos a menos que los siguientes circuitos hayan sido encendidos:
DTR DSR RTS (listo para enviar). CTS (listo para recibir).
RXD (Receive Data): Línea de recepción de datos serie desde el modem.
RI (Ring Indicator): Es la línea que indica que el modem ha detectado la señal de 13
“llamada” (se pone en uno).
Universal Asynchronous
Receive/Transmit UART
MICROPROCESADORES - MICROCONTROLADORES
• Un microcontrolador posee una o varias UART. (UART0,
UART1, UARTn). Algunas de las características llamativas
de estos periféricos son:
• Pueden manejar tamaños de datos de 5 a 8 bits.
• Soportan N bytes que reciben y transmiten FIFOs. Lo que
significa que pueden almacenar N bytes de datos por
primera vez, sin sobrescribir los datos existentes en el
búfer FIFO antes de que se llenen.
• Tiene un generador incorporado de velocidad de
transmisión.
14
Universal Asynchronous
MICROPROCESADORES - MICROCONTROLADORES
Receive/Transmit UART
15
Protocolo SPI
( Serial Peripherical Interface)
MICROPROCESADORES - MICROCONTROLADORES
La línea de reloj (SCLK) es
generada por el maestro y
sincroniza la transferencia de
datos.
MICROPROCESADORES - MICROCONTROLADORES
MASTER GENERA EL 1ER PULSO DE RELOJ
17
Protocolo SPI
( Serial Peripherical Interface)
MICROPROCESADORES - MICROCONTROLADORES
❑ Ventajas del SPI
▪ Comunicación Full Dúplex.
▪ Mayor velocidad de transmisión que con I²C o SMBus.
▪ Protocolo flexible en que se puede tener un control absoluto sobre los bits
transmitidos.
▪ No está limitado a la transferencia de bloques de 8 bits.
▪ Elección del tamaño de la trama de bits, de su significado y propósito.
▪ Su implementación en hardware es extremadamente simple.
MICROPROCESADORES - MICROCONTROLADORES
Las interfaces SPI tienen 2 bits de configuración:
CPOL (Clock Polarity = Polaridad de Reloj) determina si el estado
Idle de la línea de reloj está en bajo (CPOL=0) o si se encuentra en
un estado alto (CPOL=1).
CPHA (Clock Phase = Reloj de Fase). determina en que flanco de
reloj los datos son desplazados hacia dentro o hacia fuera.
Si CPHA=0 los datos sobre la línea MOSI son detectados cada
flanco de bajada y los datos sobre la línea MISO son
detectados cada flanco de subida).
Cada BIT tiene 2 estados, lo cual permite 4 diferentes combinaciones,
las cuales son incompatibles una de la otra. Por lo que si dos
dispositivos SPI desean comunicarse entre si, estos deben
tener el mismo la misma Polaridad de Reloj (CPOL) y la misma
19
Fase de Reloj (CPHA).
Protocolo SPI
MICROPROCESADORES - MICROCONTROLADORES
( Serial Peripherical Interface)
MODO “A”
CPHA = 1
CPOL = 1
MODO “B”
CPHA = 1 20
CPOL = 0
Protocolo I2C
MICROPROCESADORES - MICROCONTROLADORES
(Inter Integrated Circuits Bus)
❑ bus dedicado a la comunicación entre circuitos integrados.
Desarrollado por Philips a principios de los 80 para conectar
una CPU con periféricos.
• Simplificar las conexiones entre los periféricos
• Aumentar de la inmunidad al ruido
• Control de sistemas de audio y vídeo (baja velocidad)
21
Protocolo I2C - Características
MICROPROCESADORES - MICROCONTROLADORES
– Bus de comunicación síncrono
• La comunicación es controlada por una señal de reloj.
– Bus formado por 3 hilos
• SDA (Serial DAta Line): datos
• SCL (Serial CLock line): reloj
• GND referencia común de masa
– Velocidad de transmisión
• Standard: hasta 100 Kbits/s
• Fast: hasta 400 Kbits/s
• High-speed: hasta 3,4 Mbits/s
– Cada dispositivo del bus tiene una dirección única
– Distancia y número de dispositivos
• Limitado por la capacidad del bus (2 a 3 mts).
– Protocolo de acceso al bus: 22
• Maestro – esclavo
• I2C soporta protocolo multimaestro
MICROPROCESADORES - MICROCONTROLADORES
Protocolo I2C - Conexión
– Todos los dispositivos
conectados a las mismas
líneas
– Las salidas deben ser en
colector o drenador abierto
Las resistencias pueden
variar entre 2,2 K y 10 K
23
Protocolo I2C - Transmisión
– Los bits de datos van por SDA
– Por cada bit de información es necesario un pulso de SCL
– Los datos sólo pueden cambiar cuando SCL está a nivel
bajo.
MICROCONTROLADORES
MICROPROCESADORES -
24
Protocolo I2C - Transmisión
– La unidad básica de transmisión en el byte
– Las transferencias de datos son de 8 bits
– Cada byte enviado requiere una respuesta de confirmación
• ACK: el destinatario (maestro o esclavo) mantiene SDA a
MICROCONTROLADORES
MICROPROCESADORES -
nivel bajo durante un tiempo de bit (si no lo hace 🡪NACK)
25
Protocolo I2C - Termómetro
MICROPROCESADORES -
26
MICROCONTROLADORES