Mplab Practicas Reporte Lcd,Pic

22
UNIVERSIDAD TECNOLÓGICA DE NEZAHUALCÓYOTL TSU MECATRÓNICA ÁREA SISTEMAS DE MANUFACTURA FLEXIBLE ASIGNATURA SISTEMAS DIGITALES REPORTE DE PRÁCTICA DE MICROCONTROLADORES GRUPO MEM 32 ELABORADO POR Estefanía Lara Gómez Juan Carlos Martínez Hernández Hugo Daniel Carreto Pérez Cristian Adán García Mora Ricardo Martin Olvera Castro Verónica Muñoz Ramírez Juan Francisco Rocha Paredes PROFESORA BENITEZ BARRERA JUAN JOSE 1 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Transcript of Mplab Practicas Reporte Lcd,Pic

Page 1: Mplab Practicas Reporte Lcd,Pic

UNIVERSIDAD TECNOLÓGICA DE NEZAHUALCÓYOTL

TSU MECATRÓNICA ÁREA SISTEMAS DE MANUFACTURA FLEXIBLE

ASIGNATURA

SISTEMAS DIGITALES

REPORTE DE PRÁCTICA DE

MICROCONTROLADORES

GRUPO

MEM 32

ELABORADO POR

Estefanía Lara Gómez

Juan Carlos Martínez Hernández

Hugo Daniel Carreto Pérez

Cristian Adán García Mora

Ricardo Martin Olvera Castro

Verónica Muñoz Ramírez

Juan Francisco Rocha Paredes

PROFESORA

BENITEZ BARRERA JUAN JOSE

1 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 2: Mplab Practicas Reporte Lcd,Pic

ÌNDICE

pág.

INTRODUCCIÒN………………………………….. 3

REPORTE DE………………………………………. 4PRACTICA

DESARROLLO…………………………………… 6

CONCLUSIÒN…………………………………. 19

UTN MECATRÓNICA

2 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 3: Mplab Practicas Reporte Lcd,Pic

INTRODUCCIÒN

Los PIC son una familia de microcontroladores tipo RISC fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división de microelectrónica de General Instrument.

El nombre actual no es un acrónimo. En realidad, el nombre completo es PICmicro, aunque generalmente se utiliza como Peripheral Interface Controller (controlador de interfaz periférico).

El PIC original se diseñó para ser usado con la nueva CPU de 16 bits CP16000. Siendo en general una buena CPU, ésta tenía malas prestaciones de E/S, y el PIC de 8 bits se desarrolló en 1975 para mejorar el rendimiento del sistema quitando peso de E/S a la CPU. El PIC utilizaba microcódigo simple almacenado en ROM para realizar estas tareas; y aunque el término no se usaba por aquel entonces, se trata de un diseño RISC que ejecuta una instrucción cada 4 ciclos del oscilador.

En 1985 la división de microelectrónica de General Instrument se separa como compañía independiente que es incorporada como filial (el 14 de diciembre de 1987 cambia el nombre a Microchip Technology y en 1989 es adquirida por un grupo de inversores) y el nuevo propietario canceló casi todos los desarrollos, que para esas fechas la mayoría estaban obsoletos. El PIC, sin embargo, se mejoró con EPROM para conseguir un controlador de canal programable. Hoy en día multitud de PICs vienen con varios periféricos incluidos (módulos de comunicación serie, UARTs, núcleos de control de motores, etc.) y con memoria de programa desde 512 a 32.000 palabras (una palabra corresponde a una instrucción en lenguaje ensamblador, y puede ser de 12, 14, 16 ó 32 bits, dependiendo de la familia específica de PICmicro).

3 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 4: Mplab Practicas Reporte Lcd,Pic

REPORTE DE PRACTICA DE

MICROCONTROLADORES

OBJETIVO

Construir circuitos en Proteus , Microcode, MPLAB simulando diferentes tipos de programación utilizando microcontroladores y losdos pic mas usados como son el pic 16f628a y el 16f84a

DESARROLLO

Conocer la estructura de pic 16f628a

Aunque no son los microcontroladores que más prestaciones ofrecen, en los últimos años han ganado mucho mercado, debido al bajo precio de éstos, lo sencillo de su manejo y programación y la ingente cantidad de documentación y usuarios que hay detrás de ellos.

¿Para qué sirve un PIC?

Un PIC, al ser un microcontrolador programable, puede llevar a cabo cualquier tarea para la cual haya sido programado.

No obstante, debemos ser conscientes de las limitaciones de cada PIC. Así, el 16F84, PIC que se tratará en este tutorial, no podrá generar un PWM ni convertir señales analógicas en digitales, entre otras.

El 16F84

Se trata de un microcontrolador de 8 bits. Es un PIC de gama baja, cuyas características podemos resumir en:

- Memoria de 1K x 14 de tipo Flash- Memoria de datos EEPROM de 64 bytes- 13 líneas de E/S con control individual- Frecuencia de funcionamiento máxima de 10 Mhz.- Cuatro fuentes de interrupción* Activación de la patita RB0/INT* Desbordamiento del TMR0* Cambio de estado en alguna patia RB4-RB7* Fin de la escritura de la EEPROM de datos

4 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 5: Mplab Practicas Reporte Lcd,Pic

- Temporizador/contador TMR0 programable de 8 bits- Perro Guardián o WatchDog

Generalmente se encuentra encapsulado en formato DIP18. A continuación puede apreciarse dicho encapsulado y una breve descripción de cada una de las patitas: imagen:

- VDD: alimentación- VSS: masa- OSC1/CLKIN-OSC2/CLKOUT: conexión del oscilador- VPP/MCLR: tensión de programación y reset- RA0-RA3: líneas de E/S de la puerta A- RA4: línea de E/S de la puerta A o entrada de impulsos de reloj para TMR0- RB0/INT: línea de E/S de la puerta B o petición de interrupción- RB1-RB7: líneas de E/S de la puerta B

5 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 6: Mplab Practicas Reporte Lcd,Pic

Realizar el siguiente circuito en proteus y programar en mplab

nota * en esta práctica se necesitara las librerías que se pondrán en la carpeta de microchip en archivos de programa

;BARRIDO DE LEDS

__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_XT_OSC

LIST P=16F84A

#INCLUDE <P16F84A.INC>

ORG 0

INICIO

BSF STATUS,RP0

CLRF TRISB

CLRF TRISA

BCF STATUS,5

PARPADEO

MOVLW 0X01

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X02

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X04

MOVWF TRISB

6 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 7: Mplab Practicas Reporte Lcd,Pic

CALL Retardo_200ms

MOVLW 0X08

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X10

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X20

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X40

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X80

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X40

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X20

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X10

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X08

MOVWF TRISB

CALL Retardo_200ms

7 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 8: Mplab Practicas Reporte Lcd,Pic

MOVLW 0X04

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X02

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X01

MOVWF TRISB

CALL Retardo_200ms

INCLUDE <RETARDOS.INC>

END

simulación en proteus

8 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 9: Mplab Practicas Reporte Lcd,Pic

Realización de practica con un barrido diferente

;BARRIDO DE LEDS DIFERENTE POSICION

__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_XT_OSC

LIST P=16F84A

#INCLUDE <P16F84A.INC>

ORG 0

INICIO

BSF STATUS,RP0

CLRF TRISB

CLRF TRISA

BCF STATUS,5

9 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 10: Mplab Practicas Reporte Lcd,Pic

PARPADEO

MOVLW 0X81

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X42

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X24

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X18

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X24

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X42

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X81

MOVWF TRISB

CALL Retardo_200ms

GOTO PARPADEO

INCLUDE <RETARDOS.INC>

END

10 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 11: Mplab Practicas Reporte Lcd,Pic

simulación en proteus

Realicion de programa configurando letras, números en un diplay

11 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 12: Mplab Practicas Reporte Lcd,Pic

__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_XT_OSC

LIST P=16F84A

#INCLUDE <P16F84A.INC>

ORG 0

INICIO

BSF STATUS,RP0

CLRF TRISB

CLRF TRISA

BCF STATUS,5

PARPADEO

MOVLW 0X40

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0Xf9

MOVWF TRISB

CALL Retardo_200ms

12 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 13: Mplab Practicas Reporte Lcd,Pic

MOVLW 0X24

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0Xb0

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X08

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X83

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X46

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X21

MOVWF TRISB

CALL Retardo_200ms

MOVLW 0X06

MOVWF TRISB

CALL Retardo_200ms

INCLUDE <RETARDOS.INC>

GOTO PARPADEO

END

13 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 14: Mplab Practicas Reporte Lcd,Pic

simulación en proteus

14 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 15: Mplab Practicas Reporte Lcd,Pic

Realizar secuencia en Microcode

'****************************************************************

'* Name : UNTITLED.BAS *

'* Author : [select VIEW...EDITOR OPTIONS] *

'* Notice : Copyright (c) 2011 [select VIEW...EDITOR OPTIONS] *

'* : All Rights Reserved *

'* Date : 30/11/2011 *

'* Version : 1.0 *

'* Notes : BIG DOC TALENTO DEL BLOQUE UTN *

'* MECATRONICA : *

'****************************************************************

' DEFINICIÓN DE REGISTROS PARA EL LCD

DEFINE LCD_DREG PORTB 'UTILIZAR 4 BITS DEL PUERTO B PARA TX DE DATOS

DEFINE LCD_DBIT 4 'DESDE EL BIT B.4 AL BIT B.7

DEFINE LCD_RSREG PORTB'SELECCIÓN DEL PUERTO DEL REGISTRO

DEFINE LCD_RSBIT 1 'EN EL BIT B.1

DEFINE LCD_EREG PORTB 'UTILIZAR EL ENABLE EN EL PUERTO B

DEFINE LCD_EBIT 2 'EN EL BIT B.2

' ESTABLECER EL PUERTO B COMO SALIDA

TRISB=0

' TAMAÑO DE VARIABLES DEL CONTADOR

B0 VAR BYTE

15 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 16: Mplab Practicas Reporte Lcd,Pic

B1 VAR BYTE

' PAUSA DE INICIO DEL LCD

PAUSE 200

'--------------------------------------------------------

LAPIZ:

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE, 1, " * BARRIO DE *" 'ESCRIBIR EN LA PRIMERA LÍNEA

LCDOUT $FE, $C0, " *** NEZA YORK *** " 'ESCRIBIR EN LA SEGUNDA LÍNEA

PAUSE 1000

'--------------------------------------------------------

'MOSTRAR LETRA POR LETRA

PAUSE 500

LCDOUT $FE, 1 ' LIMPIAR LCD

FOR B0 = 0 TO 13

LOOKUP B0,["** BIG DOG ** "],B1

LCDOUT $FE,$0C,B1

PAUSE 500

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** CHACHACHA ** "

PAUSE 200

NEXT

16 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 17: Mplab Practicas Reporte Lcd,Pic

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** PUDUL **"

PAUSE 200

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** VERO XXX ** "

PAUSE 200

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** CALAMARDO ** "

PAUSE 200

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** MORZUE **"

PAUSE 200

17 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 18: Mplab Practicas Reporte Lcd,Pic

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0," ** PERICO ** "

PAUSE 200

NEXT

'--------------------------------------------------------

'DESPLAZAMIENTO DE TEXTO EN LCD

FOR B0 = 144 TO 128 STEP -1

LCDOUT $FE, 1 ' LIMPIAR LCD

LCDOUT $FE,B0,"TALENTO DL BLOQE"

PAUSE 200

NEXT

GOTO LAPIZ

END

simulacion en proteus con programacion en microcode

18 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES

Page 19: Mplab Practicas Reporte Lcd,Pic

CONCLUSIÒN

Un microcontrolador es un circuito programable capaz de ejecutar las órdenes grabadas

en su memoria tiene varios bloques de funciones como memoria ROM RAM ,líneas de

entrada y salida , lógica de control depende también en que software utilizas para hacer la

programación ya que en cada programador existen varios lenguajes de programación

19 UTN_MECATRÒNICA_TALENTO DEL BLOQUE _SISTEMAS IGUITALES