Beruflich Dokumente
Kultur Dokumente
Prctica 1:
Entradas y salidas en AVRs.
PROFESOR
Mndez Martnez Maurcio
ELABOR
Rosas Antonio Abraham
Sarabia Santoyo Lizbeth
GRUPO
4MM5
ASIGNATURA
Microcontroladores Avanzados
Introduccin
La serie Atmega que se utiliz tiene una arquitectura de 8 bits. Puede
calcular valores del tamao de 1 byte en un ciclo. Los puertos estn
enumerados por letras (A,B,C y D), y pines de 0 a 7.
Aparte de asignar valores por su representacin hexadecimal, tambien
se puede hacer por la expresin |=(1<<5) donde al bit 5 se le asigna
High, y para asignar Bajo se usara &= (1<<5)
En el bit DDR (Data Direction Register) se configuran las entradas y
salidas donde 0 indica que es una entrada y 1 salida.
Desarrollo.
Cdigo
#include <avr/io.h>
#include <util/delay.h>
int main(void)
{
//Port A,D -> salidas
//Port B,C -> entradas
//Se configuran entradas/salidas, por default vienen como default
vienen como entradas
DDRA=(1<<DDA7)|(1<<DDA6)|(1<<DDA5)|(1<<DDB4)|(1<<DDA3)|
(1<<DDA2)|(1<<DDA1)|(1<<DDA0);
DDRD=(1<<DDD7)|(1<<DDD6)|(1<<DDD5)|(1<<DDD4)|(1<<DDD3)|
(1<<DDD2)|(1<<DDD1)|(1<<DDD0);
while(1)
{
//Se van alternando valores
PORTA=0X55;
_delay_ms(500);
PORTA=0XAA;
_delay_ms(500);
//La salida del puerto D es la suma del B y C.
PORTD=PINB+PINC;
_delay_ms(500);
}
}
Conclusin
Atmel Studio tiene libreras que son de ayuda para simplificar el programa, en
esta prctica se utilizaron las bsicas de retardo, entradas y salidas del AVR.
El objetivo principal del ejercicio fue saber manejar las entradas y salidas del
Atmega, para lo que utilz el registro DDRx (para asignar si es entrada o
salida), PORTx (para escribir dato) o PINx (leer dato).
Referencias
Benjamin Reh , Introduction to programming an Atmega microcontroller,
Noviembre 14, 2013