Sei sulla pagina 1di 4

Universidad Autnoma de Ciudad Jurez Chihuahua Instituto de Ingeniera y Tecnologa

Sistemas embebidos Practica 1

Aaron Alan Orozco Grajeda 94479

Teora Registro PORT (puerto) Los registros PORT sirven para manipular los pines del microcontrolador del Arduino, de una manera mas fcil y en bajo nivel. El Arduino utiliza un ATmega8 y ATmega168, los cuales poseen tres puertos.

B (pines digitales del 8 al 13) C (entradas analgicas) D (pines digitales del 0 al 7) Cada puerto es controlado por tres registros, los cuales tambin estn definidos como variables en el lenguaje del Arduino. El registro DDR, determina si el pin es una entrada o una salida. El registro PORT controla si el pin est en nivel alto o en nivel bajo, y el registro PIN permite leer el estado de un pin que se ha configurado con entrada usando la funcin pinMode(). Los esquemas de los chips ATmega8 y ATmega168 muestran los puertos. El nuevo ATmega328p usa la misma configuracin de pines que el ATmega168. Los registros DDR y PORT pueden ser ambos, escritos y ledos. El registro PIN corresponde al estado de las entradas as que solo puede ser ledo. El PORTD mapea los pines digitales del 0 al 7 Los puertos son controlados por tres registros, estos estn definidos como variables del lenguaje del Arduino. El registro DDR determina si el pin es una entrada o una salida. El registro POR controla si el pin esta en bajo o alto nivel, el registro PIN permite leer el estado de un pin. Los registros DDR y PORT pueden ser ambos, escritos y ledos. El registro PIN corresponde al estado de las entradas as que solo puede ser ledo. DDRD - El registro de configuracin del modo de los pines del puerto D lectura/escritura PORTD - Registro de datos del puerto D - lectura/escritura PIND - Registro de pines de entrada - solo lectura PORTB mapea los pines digitales del 8 al 13. Los bits altos(6 & 7) estn mapeados a los pines del cristal de cuarzo y no pueden ser usados. DDRB - El registro de configuracin del modo de los pines del puerto B lectura/escritura PORTB - Registro de datos del puerto D - lectura/escritura PINB - Registro de pines de entrada - solo lectura PORTC mapea los pines de entrada analgica del 0 al 5. Los pines 6 y 7 solo son accesibles en el Arduino Mini DDRC - El registro de configuracin del modo de los pines del puerto B lectura/escritura PORTC - Registro de datos del puerto D - lectura/escritura PINC - Registro de pines de entrada - solo lectura Cada bit de estos registros corresponden con un solo pin; por ejemplo el bit menos significativo de los registros DDRB, PORTB, y PINB hace referencia al pin PB0 (pin digital 8).

Desarrollo Se conectaron 8 resistencias a los puertos del Arduino, del 0 al 7, cada una de estas en paralelo a una resistencia de 1K. Se realizo un cdigo para controlar las salidas del Arduino, el cdigo realizar un corrimiento utilizando los leds. Hardware

Software
void setup() { DDRD=0XFF; /* add setup code here */ } void loop() { while(1) { PORTD=1; delay(1000); PORTD=2; delay(1000); PORTD=4; delay(1000); PORTD=8; delay(1000); PORTD=16; delay(1000); PORTD=32; delay(1000); PORTD=64; delay(1000); PORTD=128; delay(1000); } }

Conclusin Se aprendi a utilizar la funcin PORT y DDR, las utilizamos con el puerto D. Se declararon como salidas los puertos D, con la funcin DDRD=0XFF, el 0X nos indica que es un numero hexadecimal, el hexadecimal FF, son los puertos con los que se va a trabajar, una forma de apreciar bien esto, es convirtiendo el hexadecimal a binario. ejemplo: 1=puerto 0 en el Arduino. 10=puerto 1 en el Arduino. 100=puerto 2 en el Arduino. 1000=puerto 3 en el Arduino. 1010=puerto 1 y 3 en el Arduino.

Estos puertos tambin se pueden controlar con nmeros hexadecimales.

Potrebbero piacerti anche