Está en la página 1de 13

ADMINISTRACIN

Y NEGOCIOS

MICROCONTROLADORES

Informe de Gestin de Puertos

NOMBRE: Pablo Contreras


Gonzalo Cayuqueo
SECCCIN: 199
CARRERA: Electrnica Industrial
ASIGNATURA: Microcontroladores
PROFESOR: Ricardo Lpez
FECHA: 27 /11/16
1 Introduccin

En el presente informe revisaremos la actividad en clases respecto a la gestin de puertos en Chip 16F877A,
Utilizando para esto el lenguaje de programacin de alto nivel, C.

Utilizaremos el software de compilacin PIC- C Compiler.

2 Ejercicios gua 11
2.1 Ejercicio 1
Aplicacin que detecta el estado de la entrada de un bit RB0

Cdigo fuente

Se observa que se utiliza la instruccin de ciclo while para mantener la lectura de entradas y escrituras
de las salidas del microcontrolador. Luego se utiliza la condicional if para leer el puerto a y respecto a
esto escribir en el puerto b.
Esquema en Proteus

Se observa que slo cambia el estado del bit RB0, al variar el primer bit del puerto A (RB0).

2.2 Ejercicio 2

Aplicacin que copia el estado del puerto A hacia el puerto B cuando detecta los valores 1 y 9, en todos los
otros casos

Cdigo fuente

Se mantuvo la parte de arriba, de configuracin del microcontrolador, oscilador, etc.


Simulacin en Proteus

Muestra un 255 en el puerto B para todas las entradas distintas de 1 y 9

Caso de un 1 en el puerto A. Muestra lo mismo en puerto B


Ac vemos el 9 en el puerto de entrada y reflejado en la salida.

3 Ejercicios gua 13
3.1 Ejercicio 1
Programar los ejemplos y realizar los diagramas de flujo genrico de cada uno de ellos.

1- Se configuran los terminales RB1 como salida y el RB0 como entrada (con resistencia de pull -up).
La salida debe tener el mismo valor que la entrada. Se utiliza un interruptor en la entrada y un led
en la salida.

Cdigo Fuente
Se utilizan while como bucle infinito (1) y tambin se sigue utilizando el If para leer el bit 0 del puerto b y
escribir en el bit 1 segn la condicin lo indica.

Esquema Proteus

La simulacin sigue la lgica del programa, Para bit 0 = 1, bit1 = 0 y para bit 0 = 0 , bit1= 1
Diagrama de flujo
2. Realizar un contador de 0 a 99 con un doble display de 7 segmentos de ctodo comn. La cuenta
debe ser continua y de cero a nueve el digito de las decenas debe estar apagado

Para esto se program el chip de acuerdo a la siguiente instruccin:


Diagrama de flujo
3.2 Ejercicio 2

Modificar ejemplos.

a.- El ejemplo 1 se lea el estado del nibble bajo del portB y se muestre en el portB a travs del led.

Definimos una variable para guardar el valor de portB, la llamamos valor, generamos el bucle infinito con
la instruccin while (TRUE). Luego aplicamos una compuerta and a PORTB respecto del binario 00001111
y la mostramos finalmente por el puerto D.

Esquema en Proteus

Se observa que muestra que el primer nibble se refleja mientras que el segundo no.
b- Modificar ejemplo 2 para que muestre la secuencia de 0 a 95 realizando incrementos de 5 unidades
Para esto se utiliz la siguiente programacin:

Como se puede observar en la imagen de la programacin, lo nico que cambio en relacin al ejemplo
2 es que las unidades en vez de avanzar de 1 en 1, ahora debern cambiar de 5 en 5, para ello se utiliz
+=5 para que as vaya sumando. Las decenas deben funcionar de la misma manera anterior.
4 Conclusin

4.1 Inconvenientes
En el ejercicio 1 no funcionaba la programacin realizada debido a que no se haban declarado el puerto
d como salida para que mostrara el nibble alto y bajo, por esto se tuvo que declarar el puerto d como
salida y as funcion.

El inconveniente que tuvimos en proteus, fue que se haba utilizado el display de nodo comn, lo que
mostraba cualquier cosa, se solucion cambiando este display por uno de ctodo comn.

Para la creacin del algoritmo no existieron dificultades ms que las mencionadas anteriormente. En
general el trabajo en grupo, nos permite discutir e ir probando en el momento las ideas en el simulador.

4.2 Conclusiones personales


En conclusin, esta experiencia ha aportado a comprender y aprender el lenguaje c y relacionarlo con la
teora revisada en clases.

En esta actividad, se utilizaron directivas, funciones principales, instrucciones y comentarios, los que nos
ayudaron a comprender de mejor manera las programaciones realizadas.

Lo que llamo bastante la atencin en la utilizacin del pic16f877A, es el tema de los pullups, los cuales se
podan activar o mantener inactivos dependiendo de la configuracin que aplicramos en la programacin,
por ejemplo, si ingresbamos port_b_pullups (true) nos habilitaba las resistencias internas que contiene el
microcontrolador en el portB.

Se logr aplicar lo visto en clases en la parte de programacin y tambin se pudo observar el


comportamiento del microcontrolador, lo que nos dej satisfechos en esta etapa.

4.3 Aplicaciones
A diferencia del lenguaje de ensamblador, este tipo de programacin tiene mayores aplicaciones, a pesar
de ser ms compleja se pueden realizar programas ms completos en relacin al ensamblador.

Se puede utilizar por ejemplo para realizar contadores, dndole un tiempo y de acuerdo al pulso que nos
entregue aparezca un numero en el display indicndonos cuantas veces ha ocurrido, cabe destacar que en
esta experiencia el display solo nos muestra hasta el numero 99 como mximo.

También podría gustarte