Practica 1 Pic Tese

4

Click here to load reader

Transcript of Practica 1 Pic Tese

Page 1: Practica 1 Pic Tese

TECNOLÓGICO DE ESTUDIOSSUPERIORES DE ECATEPEC

INGENIERIA EN SISTEMAS COMPUTACIONALES

ARQUITECTURA DE COMPUTADORAS ING. JORGE ALBERTO LÓPEZ OSEGUERAPRÁCTICAS CON PIC’S

PRACTICA No. 1

CONEXIÓN DE LED Y DIPSWITCH

I. OBJETIVOS

El alumno se iniciara en el desarrollo de proyectos con microcontroladores, deberá entender el código

II. EQUIPO Y MATERIAL

III. INTRODUCCIÓN

Como ejercicio practico que nos introduzca de marea rápida y sencilla en el manejo de los microcontroladores PIC, vamos a realizar un montaje simple, el cual consiste en conectar cuatro interruptores (dipswitch) como entradas del microcontrolador y cuatro LED como salidas. El programa que se escriba se debe encargar de verificar el estado de los dipswitch y de acuerdo a este, encender los LED. Este ejemplo aunque es muy simple, pero es fundamental para ejercitar el manejo de los puertos.

Practica 1 1 de 4

Material

1 PIC16F84A 4 resistencias de 300 4 resistencias de 1k 1 dipswitch de 4 1 resistencia de 100 1 resistencia de 10k 1 pulsador 1 cristal de cuarzo de

4MHz 2 capacitores de 20 pf 4 LED´s 1 Buffer ULN2803 1 protoboard

Equipo:

PC 1 fuente de 5 volts Software MPLAB Software icprog

Page 2: Practica 1 Pic Tese

INICIO

Programar

Puertos

Invertir el valor leído

Leer puerto B(Interruptores)

Pasar dato al puerto A

IV. DESARROLLOConstruir el circuito con el siguiente diagrama

Figura 1.1. Conexión de los LED y dipswitch.

Debe notarse que los interruptores tienen resistencias conectadas a la fuente de alimentación, estas sirven para fijar un nivel alto cuando el dipswitch no esta haciendo contacto. En este caso, cuando no se encuentra cerrado ningún interruptor el microcontrolador lee “unos” y cuando algo se encuentra cerrado se leerá un “cero”.Por otra parte, para encender los LED se utiliza un circuito integrado ULN2803, el cual tiene un conjunto de transistores que invierten el pulso y amplifican la corriente. Por lo tanto, el pulso para encender un LED debe ser positivo.

Dado lo anterior, cuando se lee el estado de los dipswitch se debe invertir el valor leído, para asegurarse que el interruptor que este cerrado se convierta en una señal positiva para encender el LED correspondiente. En la figura 1.2 se muestra el diagrama de flujo correspondiente al ejercicio y en la figura 1.3 el programa respectivo.

Practica 1 2 de 4

Figura 1.2. Diagrama de flujo para la conexión de los LED y dipswitch

Page 3: Practica 1 Pic Tese

Practica 1 3 de 4

; Este programa lee el estado de 4 interruptores y de acuerdo a ello enciende o no 4 ; LED; En caso de que un número se escriba D’15’: significa número decimal; En caso de que el número se escriba B’00010101’: significa número binario; En caso de que el número se escriba 15H: significa número hexadecimal; Si no se especifica nada, se pone numeración hexadecimal; Definición de registros

pc equ 02hstatus equ 03hptoa equ 05h ; el puerto A esta en la dirección 05 de la RAMptob equ 06h ; el puerto B esta en la dirección 06 de la RAMtrisa equ 85h ; registro de configuración del puerto Atrisb equ 86h ; registro de configuración del puerto Bw equ 00h ; indica que el resultado se guarda en w

reset org 0 ; el vector de reset es la dirección 00 goto inicio ; se salta al inicio del programa org 5 ; el programa empieza en la dirección de memoria 5

inicio bsf status,5 ; se ubica en el segundo banco de RAM movlw 0f0h ; se carga el registro W con 0f movwf trisa ; se programan los pines del puerto A como salidas movlw 0ffh ; se carga el registro W con ff movwf trisb ; se programan los pines del puerto B como entradas bcf status,5 ; se ubica el primer banco de memoria RAM

ciclo movf ptob,w ; el valor de puerto B lo paso al registro W xorlw 0ffh ; con una operación XOR se invierte el valor ; del dato leído del puerto B movwf proa ; pasa el valor de W al puerto A. goto ciclo end

; ----------------------------------------------------------------------------------------------------------------------------------------------------------------; Fusibles de programación; Osc XT; Watchdog OFF; Code Protect OFF; Power-Up-Timer ON; Micro. PIC16F84;---------------------------------------------------------------------------------------------------------------------------------

Page 4: Practica 1 Pic Tese

Figura 1.3. Programa de la conexión de LED y dipswitch.

Practica 1 4 de 4