Você está na página 1de 7

ESCUELA POLITCNICA NACIONAL

ESCUELA DE FORMACIN DE TECNLOGOS


TECNOLOGA EN ELECTRNICA Y TELECOMUNICACIONES

Laboratorio de Microprocesadores

TRABAJO PREPARATORIO

Prctica No: 4
Tema: Presentacin de datos a travs de los puertos del PIC

Realizado por:

Estudiante: Largo Christian Grupo: CPR-5

(Espacio Reservado)
Fecha de entrega: ____ / ____ / ____f. _________________________
Ao mes da Recibido por:

Sancin: ____________________________________________________

PERODO
2017 A
ESCUELA POLITCNICA NACIONAL ESFOT

TEM425L - LABORATORIO DE MICROPROCESADORES

PREPARATORIO - PRCTICA 4

1. Objetivos:

Familiarizar al estudiante con la programacin del microcontrolador PIC 16F870 utilizando el


programa MikroC.
Utilizar el Proteus en el diseo y simulacin de circuitos electrnicos, implementados con el
microcontrolador PIC 16F870, y presentando respuestas en un display de 7 segmentos.
2. Desarrollo
2.1 Cuestionario
2.1.1 consultar cual es la funcin y la sintaxis (forma de
utilizacin) de los comandos TRIS, PORT, IF.

Port: Port o puerto es el nombre que se le da a los puertos de entrada y salida que hacen que el PIC
interacte con el medio exterior. Para acceder a estos, los programas los tratan como variables del
tipo BYTE con el nombre del registro utilizado en las hojas de caractersticas.

Sintaxis: Se escribe el comando seguido del nombre del puerto: PORTA, PORTB, PORTC, para
variables del tipo byte, con stas tambin se puede acceder a bits individuales por ejemplo RA, RB o
tambin las variables del tipo bit RA0, RA1, RA2.

TRIS: Se utiliza para definir o configurar como se emplearn los bits de cada puerto (A, B o C) ya sea
como entradas o como salidas. Se utiliza el comando TRIS seguido del nombre del puerto
asignndolo a un valor que en binario transcribe cada bit segn est a cero o uno, o sea si funciona
como salida o como entrada.

Sintaxis: TRISA=0 : define todos los bits del PORTA como salidas

TRISB= 0$F4 : define algunos bits del PORTB como SALIDAS (B0, B1 y B3 son
salidas y resto son entradas). Ya que en hexadecimal F4 es
11110100.

If: Permite tomar una decisin (elegir) entre dos acciones, basndose en el estado de una entrada o
en el valor de una variable, si la condicin es verdadera permite la ejecucin de las instrucciones1, de
lo contrario se ejecutan las isntrucciones2.

Sintaxis: If (condicin) {
instrucciones1;
}
else {
instrucciones2;
}
Las llaves { } solo son necesarias cuando hay ms de una instruccin. [1]

Laboratorio de Microprocesadores Prctica 4


ESCUELA POLITCNICA NACIONAL ESFOT

2.2 Diseo
Permita presentar en un display ctodo comn, por un segundo, cada uno de los nmeros de manera
ascendente del 1 al 13 en dgitos hexadecimales de manera indefinida en el puerto B.

FIG1: Diagrama de flujo del programa


del primer problema

Para configurar y designar el puerto B como salida usamos el comando TRIS el comando que
nos permite realizar dicho configuracin.
Para asignar el valor de un puerto utilizaremos el comando POR y el valor que quiero
asignar, comienzo con el valor de 1 en hexadecimal y le doy un retardo de 1s para que pase a
la siguiente instruccin, as hasta llega a la instruccin donde el valor es 13 en hexadecimal y
hago que retorne el programa a donde el valor es 1 en hexadecimal, para esto ocupo el
comando do----while.

SINTAXIS DE PROGRAMACION DEL PIC


void main() {
TRISB=0b00000000; // Se designa al puerto B pin 0 como SALIDA
do{ // Inicio de la sentencia repetidora do while
PORTB=0b00000110; // El display nos muestra el numero 1
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01011011; // El display nos muestra el numero 2
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01001111; // El display nos muestra el numero 3
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01100110; // El display nos muestra el numero 4
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01101101; // El display nos muestra el numero 5

Laboratorio de Microprocesadores Prctica 4


ESCUELA POLITCNICA NACIONAL ESFOT

delay_ms(1000); // tiempo de retardo 1s


PORTB=0b01111101; // El display nos muestra el numero 6
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01000111; // El display nos muestra el numero 7
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01111111; // El display nos muestra el numero 8
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01101111; // El display nos muestra el numero 9
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01110111; // El display nos muestra el numero 10 en exadecimal A
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b01111100; // El display nos muestra el numero 11 en exadecimal b
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b0111001; // El display nos muestra el numero 12 en exadecimal C
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b0111001; // El display nos muestra el numero 13 en exadecimal d
delay_ms(1000); // tiempo de retardo 1s
}
while(1); // para ejecutar el ciclo de manera repetitiva
}

Permita presentar en un display nodo comn, por un segundo, cada uno de los caracteres de la
palabra PIC 16F870 en el puerto B.

FIG1: Diagrama de flujo del programa del primer problema

Laboratorio de Microprocesadores Prctica 4


ESCUELA POLITCNICA NACIONAL ESFOT

Para configurar y designar el puerto B como salida usamos el comando TRIS el comando que
nos permite realizar dicho configuracin.
Para asignar el valor de un puerto utilizo el comando POR y el valor que quiero asignar,
comienzo con el valor de la letra P y le doy un retardo de 1s para que pase a la siguiente
instruccin, as hasta llega a la ltima instruccin y hago que retorne el programa a donde
asignamos el valor de la letra P, para esto ocupo el comando do----while.

SINTAXIS DE PROGRAMACION DEL PIC

void main() {
TRISB=0b00000000; // Se designa al puerto B pin 0 como SALIDA
do{ // Inicio de la sentencia repetidora do while
PORTB=0b110001100; // El display nos muestra la letra "P"
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b11111001; // El display nos muestra la letra "I"
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b1000110; // El display nos muestra la letra C
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b11111001; // El display nos muestra el numero 1
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b100000010; // El display nos muestra el numero 6
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b00001110; // El display nos muestra la letra "F"
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b00000000; // El display nos muestra el numero 8
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b11111000; // El display nos muestra el numero 7
delay_ms(1000); // tiempo de retardo 1s
PORTB=0b001000000; // El display nos muestra el numero 0
delay_ms(1000); // tiempo de retardo 1s
}
while(1); // para ejecutar el ciclo de manera repetitiva
}

Laboratorio de Microprocesadores Prctica 4


ESCUELA POLITCNICA NACIONAL ESFOT

2.2.1 Diagrama esquemtico

FIG3: Diagrama esquemtico realizado en proteus

2.2.2 Diagrama de conexiones

FIG4: Diagrama de conexiones realizado en ares

2.2.3 Anlisis de resultados esperados

Laboratorio de Microprocesadores Prctica 4


ESCUELA POLITCNICA NACIONAL ESFOT

Con la simulacin se denoto y se comprob que al igual que se encenda unos leds se
enciende un display de ctodo comn ya que el mismo se conforma de 7 segmentos los que
contiene en cada uno un led, en este display se pudo observar la secuencia ascendente del 1
al 13 y va subiendo uno en uno por cada segundo. Este ciclo completo se repite cada vez que
la secuencia se termina indefinidamente
Se pudo observar mediante este display de nodo comn algunos caracteres en letras que
conforman la palabra PIC16F870 al igual que el anterior problema los caracteres cambian
cada segundo, como es un siclo repetitivo los caracteres de la palabra se repiten
indefinidamente

3. Bibliografa / Referencias
[1] Introduccin al lenguaje PIC-Basic-PRO. [Online]. Available:
https://soloelectronicos.com/2009/09/08/introduccion-al-pic-basic/

Laboratorio de Microprocesadores Prctica 4

Você também pode gostar