Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de Entrada/Salida (I/O)
μCU
I/O Aplicación
Dispositivos de Entrada/Salida
Tipos
• Puerto Paralelo.
• Puerto Serie.
Asíncrono Síncrono
• Modulo de Contadores (TIMER).
Medición de Periodo
Generación de Frecuencia
Contador de Pulsos
• Convertidor Analógico-Digital (CAD).
• PWM
• Comparador de Voltaje
Dispositivos de Entrada/Salida
Puerto Paralelo
Puerto
M
Puerto Paralelo
Puerto de Entrada:
1 2 3
Puerto
4 5 6
7 8 9
# 0 *
El Microcontrolador ATMEGA328 cuenta con 3
puertos tipo paralelo.
• Puerto C de 7 bits.
Puerto C
Puerto B
Puerto D
Puerto de Entrada / salida
Su funcionamiento se basa en un Flip Flip D, con habilitador
sensible a nivel.
E D Qn+1
1 D Q
1 0 0 0
0 1 1
E 1 0 Qn
1 1 Qn
0
Puerto de Salida
Su funcionamiento se basa en un Flip Flip D con habilitador
sensible a nivel.
E
Del bus
de Dirección del 2Circuito de Compuerta salida
Microcontrolador Codificación three state
Puerto Paralelo
• Ejemplo:
• El Puerto B (PORTB) del Microcontrolador se localiza
en el Registro 0x25.
D Q Al pin del
Del bus de datos del circuito
Microcontrolador
Del bus integrado
de Dirección del 1
Microcontrolador 1
1 E
1
1
2DDecodificacador 1
0x025 De línea 0
1
1
1
1
Puerto de Entrada
Su funcionamiento se basa en un Flip Flip D con habilitador
sensible a nivel.
0
Q D 0 Del pin
Al bus de datos del
del
Microcontrolador
circuito
integrado
E 0
Del bus
de Dirección del 2Circuito de
06
Microcontrolador Codificación
Puerto de Entrada/Salida
Se interconectan tanto el circuito de entrada como el de
salida al mismo pin y al mismo bit del bus de datos.
Del bus Del bus de datos del D Q Al pin del
de Dirección del Microcontrolador circuito
Microcontrolador 0x25 integrado
2Circuito de
Codificación
0 E
Registro DDRB 0
D Q 1
0
Q D
2Circuito de E
Codificación
0 E
Del bus 1
1
de Dirección del
Microcontrolador
Puerto de Entrada/Salida
Se interconectan tanto el circuito de entrada como el de
salida al mismo pin y al mismo bit del bus de datos.
Del bus Del bus de datos del D Q
de Dirección del Microcontrolador
Microcontrolador 0x25 Al pin del
2Circuito de circuito
Codificación
0 E integrado
Registro DDRB 1
D Q 0
1
Q D
2Circuito de E
Codificación
0 E
Del bus 0
0
de Dirección del
Microcontrolador
Registros del Puerto B
Registros del Puerto C
Registros del Puerto D
Registro de Datos Periféricos.
Registro en el cual se escribe el dato
que se enviara por el puerto, Ldi r16, 0x13
cuando este opera como salida. out PORTB,r16
PB0
1
PB1
1
PB2
PORTB
PB3
0
0 Terminales del
0 0 0 1 0 0 1 1 PB4 Circuito Integrado
1
PB5
0
PB6
μPU 0
PB7
0
Registro de Datos Periféricos.
Registro en el cual se Lee el dato
conformado por los niveles lógicos in r0,PINB
aplicados al puerto, cuando este
opera como entrada. Antes de la instrucción
PB0 r0= xx
1
PB1
0 Después de la instrucción
PB2
0 r0= 00110001
PINB
PB3
0 En Hexadecimal
PB4
0 0 1 1 0 0 0 1 1
r0= 0x31
PB5
1
Terminales del
PB6
0 Circuito Integrado
μPU
PB7
0
Registro de Direccionamiento de Datos
(DDRX – Data Direction Register).
Registro en el cual se indica el modo de operación
de cada Línea (Bit) de un Puerto.
Ldi r16, 0xFF
DDRBx= 1 Línea de Salida
out DDRB,r16
PB0
1
PB1
1
PORTB PB2
0
0 0 0 1 0 0 1 1 PB3
0 Terminales del
DDRB PB4
1
Circuito Integrado
PB5
1 1 1 1 1 1 1 1 0
PB6
0
PB7
0
Registro de Direccionamiento de Datos
(DDRX – Data Direction Register).
Registro en el cual se indica el modo de operación
de cada Línea (Bit) de un Puerto.
Ldi r16, 0x00
DDRBx= 0 Línea de Entrada
out DDRB,r16
PB0
1
PB1
PINB
PB2
0
0
1 0 0 1 1 0 0 1 PB3
1 Terminales del
PB4 Circuito Integrado
DDRB
PB5
1
0
0 0 0 0 0 0 0 0 PB6
1
PB7
0
Se pueden combinar entradas y salidas en un
mismo puerto.
Ejemplo: PB0 al PB3 com salidas y Ldi r16, 0x0F
PB4 al PB7 como entradas out DDRB,r16
PB0
1
PORTB PB1
0
x x x x 1 0 0 1 PB2
0
PB3
PINB
1
1 0 0 1 x x x x
PB4 1
PB5 0
PB6 0
DDRB
PB7
0
0 0 0 0 1 1 1 1
Ejemplo 1:
Programa que escribe en el Puerto B, el dato
aplicado en el Puerto D.
Inicio
Lee Puerto D
Escribe en Puerto B
Ejemplo 1:
Listado del programa
Diagrama de Conexiones
PB0
330
5V
4.7 k PD0
PB1
5V 330
4.7 k PD1
PB2
330
5V En este diagrama no se indican
4.7 k PD2
PB3
las conexiones de Vcc y GND
5V
330
del Microcontrolador
4.7 k PD3
PB4
ATMEGA328
5V 330
4.7 k PD4
PB5
5V 330
4.7 k PD5
5V PB6
330
4.7 k
PD6
5V PB7
330
4.7 k
PD7
RESISTENCIA DE PULL UP
• Las resistencias de 4.7 k conectadas a las entradas del puerto D se les
conoce como RESISTENCIA DE PULL UP.
0 1
4.7 k 4.7 k
0 1 0
1
Interruptor
electrónico
Resistencia
de Pull Up
interna
Pin del
circuito
integrado
RESISTENCIA DE PULL UP
Un bit del Registro de
Direccionamiento de Datos
Interruptor DDRX
electrónico
Resistencia
de Pull Up
interna
Pin del
circuito
integrado
RESISTENCIA DE PULL UP
Interruptor
electrónico
Pin del
circuito
integrado
RESISTENCIA DE PULL UP
Interruptor
electrónico
Resistencia
de Pull Up
interna
Un bit del Registro de Datos
Periféricos de entrada (PINx)
Pin del
circuito
integrado
RESISTENCIA DE PULL UP
Para habilitar la resistencia se La compuerta NOT
requiere encender el transitor, requiere entonces
esto se logra con un 0 en la un 1 en su entrada.
terminal de compuerta del
transistor. Entonces se
requiere que el AND
entregue un 1.
Compuerta AND con entradas complementadas
0 PUD
1
0
1
0 1 DDRx 1
0
1
PORTx 1
Para que el AND entregue un 1
Escribir un 0 en el bit PUD, este se
encuentra en el MCUCR – MCU Control
Register, por default vale 0
Escribir un 0 en el correspondiente
bit del Registro de
Direccionamiento de Datos DDRx.
PD0
PB1
330
PD1
PB2
330
PD2
PB3
330
PD3
PB4
ATMEGA328
330
PD4
PB5
330
PD5
PB6
330
PD6
PB7
330
PD7