INSTITUTO POLITÉCNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERÍA Y TECNOLOGÍAS AVANZADAS AUTOMATIZACIÓN INDUSTRIAL
PRÁCTICA 1 ALUMNOS: Islas quintana Luis Felipe López García Erwin Humberto Romero Martínez Issá Balam
GRUPO: 4MM6 PROFESOR: Mauricio Méndez Martínez México, D.F. a 21 de septiembre del 2016
.
INTRODUCCIÓN Esta práctica trato sobre el uso de los pines del microcontrolador ATMEGA16 como puertos de entrada o salida. Para utilizar los pines como entrada o salida se debe de modificar el registro DDR (Data Direction Registrer), por ejemplo, para el puerto A, el DDRA. Los pines que se quieran tener como entradas se les deberán asignar un valor de cero, y uno para que funcionen como salidas.
OBJETIVO Realizar la lectura de los pines del puerto A, dividir el puerto en dos, los 4 bits más significativos y los 4 menos significativos. Comparar estos dos valores y mostrar en el puerto B si son iguales o si uno u otro es mayor.
DESARROLLO Para realizar la práctica se tuvo que realizar enmascaramientos en la lectura del puerto A, para que los valores tanto de los bits más significativos como de los menos significativos, estuvieran en la misma escala. #define F_CPU 8000000UL #include
#include int datoA, datoB;
int main(void) { DDRA=0x00;//Se declara el puerto A como entrada DDRB=0xFF;//Se declara el puerto B como salida while(1){ datoA=PINA&0b00001111; //Se usa una máscara para obtener el valor de sólo los 4 bits menos significativos datoB=(PINA&0b11110000)>>4;//Se usa una máscara para obtener el valor de sólo los 4 bits más significativos //Se realiza la comparación if(datoA>datoB) { PORTB=0x01; } else if(datoA