Microcontroladores Práctica 3 Puertos digitales de entrada - salida del microcontrolador PIC 18F4550.
INSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA
DEPARTAMENTO DE INGENIERÍA EN COMUNICACIONES Y
ELECTRÓNICA
INSTRUCTIVOS PARA EL LABORATORIO DE
MICROCONTROLADORES
Marzo 2017
PRÁCTICA No. 3
Puertos digitales de entrada - salida del
microcontrolador PIC 18F4550
GRUPO:_________ EQUIPO:_________ PERIODO ESCOLAR:________
INTEGRANTES: APELLIDOS PATERNO, MATERNO Y NOMBRE(S) No. DE BOLETA
1) ______________ _______________ _________________ ___________
2) ______________ _______________ _________________ ___________
PROFESOR TITULAR:____________________________________________
PROFESOR ADJUNTO:____________________________________________
FECHA DE ENTREGA DEL REPORTE:_________________
TIEMPO UTILIZADO PARA REALIZAR LA PRÁCTICA:____________Hrs.
CALIFICACIÓN DEL NOMBRE Y FIRMA
REPORTE DELPROFESOR
Ing. Juan Manuel Cobilt Catana Creación: Marzo 2017 1 de 4
Microcontroladores Práctica 3 Puertos digitales de entrada - salida del microcontrolador PIC 18F4550.
3 Los puertos digitales de entrada – salida del
microcontrolador PIC 18F4550.
3.1 Antecedentes:
Para obtener el máximo provecho de la práctica usted deberá haber finalizado las tres prácticas
anteriores.Objetivos:
En el desarrollo de esta práctica, el alumno:
• Configurará los registros relacionados con los puertos digitales: TRISx, LATx, PORTx
• Ejecutará un programa que tome datos de un puerto configurado como entrada y los envíe a
un puerto configurado como salida.
• Usará las siguientes herramientas de MPLAB X IDE:
1. Ventana Stimulus para introducir datos del exterior en modo asíncrono.
o Simulará un interruptor en modo de basculeo.
o Simulará un pulso en alto, de duración finita.
2. Grabará su programa dentro del microcontrolador 18F4550 a través del programador
PICKit2.
3. Comprobará el correcto funcionamiento de programa y circuito.
3.3 Material.
Software MPLAB X IDE instalado en la computadora.
Software MPLAB XC8 instalado en la computadora.
Microcontrolador 18F4550
3.4 Equipo.
Computadora personal.
Programador PICKit2.
3.5 Desarrollo de la práctica.
3.5.1 Creación del proyecto Practica3.
1. Active el entorno de desarrollo MPLAB X IDE
2. Abra el editor de textos y escriba el código de programa de la tabla 3.1
Ing. Juan Manuel Cobilt Catana Creación: Marzo 2017 2 de 4
Microcontroladores Práctica 3 Puertos digitales de entrada - salida del microcontrolador PIC 18F4550.
/* Bibliotecas de funciones*/
#include <xc.h>
/* Bits de configuración */
#pragma config…
#pragma config FOSC = HS // Oscilador tipo cristal superior a 4 MHz
#pragma config LVP = OFF // Programación en bajo voltaje inhabilitado
#pragma config WDT = OFF // Temporizador de perro guardián inactivo
#pragma config PTBADEN = OFF // Configura todas las terminales del puerto B como
// terminales digitales
#pragma config…
/* Programa principal */
void main(void) // La función main en el uso con microcontroladores
{ // no acepta ni entrega argumentos.
TRISB = 0x0F; // El nibble bajo del puerto B está configurado
// como entrada y el nibble alto del puerto B está
// configurado como salida.
LATB = 0; // Valor inicial del latch de salida del puerto B.
while (1) // Siempre debemos saber qué está haciendo el
{ // microcontrolador.
PORTB = PORTB << 4; // El dato binario presente en el nibble bajo del
// puerto B se desplaza cuatro lugares hacia la
// izquierda y se muestra en el nibble alto del puerto B.
}
return;
}
Tabla 3-1 Programa para captura en el editor de textos.
3. Guarde el programa como 3oPractica.C
4. Genere adecuadamente los comandos #pragma para los bits de configuración.
5. Compile el programa y asegúrese que haya CERO Warnings y CERO Errors.
6. Habilite y configure el simulador de MPLAB; recuerde establecer Instruction Frequency en
5MHz, si está usando un cristal de 20MHz.
7. Habilite las ventanas:
• Window → Debugging → Watches. Añada los registros TRISB y PORTB.
• Window → Debugging → Stopwatch.
• Window → Simulator → Analyzer. En la ventana Logic Analyzer añada las ocho
terminales de PORTB: RB0, RB1, RB2, RB3, RB4, RB5, RB6, RB7.
3.5.2 Simulador. Stimulus, interruptores en modo de basculeo.
Para conocer la manera en que funciona nuestro programa de la tabla 3-1 ante datos provenientes
del exterior, usaremos la ventana Stimulus que nos permite crear un estímulo de tipo asíncrono.
Simularemos interruptores en modo de basculeo y usaremos el tipo asíncrono, porque los
interruptores no necesariamente entran en sincronía con el reloj interno del microcontrolador.
Ejecute el siguiente procedimiento para trabajar con la ventana Stimulus.
Ing. Juan Manuel Cobilt Catana Creación: Marzo 2017 3 de 4
Microcontroladores Práctica 3 Puertos digitales de entrada - salida del microcontrolador PIC 18F4550.
• En el Menú principal seleccione: Window → Simulator → Stimulus.
• En la ventana emergente Stimulus, abra la pestaña Asynchronous.
Coloque el cursor en el cuadro vacío, inmediatamente debajo de la etiqueta Pin y dé un
clic para tener acceso al menú deslizable. En el menú deslizable, seleccione RB0.
Coloque el cursor en el cuadro vacío de la derecha debajo de la columna Action, y dé un
clic para tener acceso al menú deslizable. En el menú deslizable, seleccione Toggle.
Observe que en la columna Fire aparece el símbolo .
Añada una fila y repita el procedimiento descrito para cada fila contigua hacia abajo y
coloque: RB1, RB2 y RB3. Si usted siguió las instrucciones adecuadamente, obtendrá un
resultado similar al que se muestra en la siguiente figura.
Figura 3-1 Ventana Stimulus.
• Compile su programa y verifique CERO Warnings y CERO Errors.
• Dentro del menú principal dé un clic en el icono Clean and Build Project y posteriormente
presione el icono Debug Project.
Coloque un breakpoint en la línea que corresponde a la instrucción:
88 PORTB = PORTB << 4;
Dentro del menú del debugger, dé un clic en el icono Step Into.
Diríjase a la ventana Stimulus y dé un clic en el símbolo Fire que corresponde a
RB0 y presione el icono Step Into, realice varias veces el procedimiento.
Repita el procedimiento con RB1, RB2 y RB3.
• Observe el contenido de la ventana Output – Logic Analyzer. Redacte sus observaciones.
3.5.3 Simulador. Stimulus, interruptores en modo de pulso.
Para configurar el funcionamiento de los interruptores en modo de pulso, realice el siguiente
procedimiento:
• Modifique el contenido de cada fila, bajo la columna Action:
Coloque el cursor en el cuadro que contiene toggle para RB0 y cámbielo por Pulse
High; posteriormente en la columna Value coloque el valor 10 y presione ENTER.
Repita el procedimiento descrito para cada fila.
• Compile el programa y verifique CERO Warnings y CERO Errors.
• Dé un clic en el icono Debug Project en la barra de herramientas del Debugger y
posteriormente presione el icono Step Into
• Diríjase a la ventana Stimulus y dé un clic en el símbolo Fire de RB0.
Repita el procedimiento con RB1, RB2 y RB3.
Cuando haya finalizado dé un clic en el icono Step Over en la barra de herramientas del
Debugger.
• Observe el contenido de la ventana Output.
Ing. Juan Manuel Cobilt Catana Creación: Marzo 2017 4 de 4