FACULTAD DE INGENIERIA ELECTRÓNICA
SISTEMAS MICROPROCESADOS I
TEMPORIZADORES ELABORADO POR:
BELÉN AUQUILLA ÁNGEL FIERRO FERNANDO LAPO
1
INDICE
Práctica Nº 3 PIC 1. Ejercicio Nº 1: Utilizar el temporizador para elaborar un contador de 1 segundo, cuyo valor se observa en un Display de 7 segmentos…………………………………………………3 2. Ejercicio Nº 2: Elabore un programa que realice las operaciones del numeral 1, pero con, TRMO=155, utilice el esquema del numeral anterior…………………………………6 2.1. Ejercicio Nº 2.1: Elabore un programa que realice las operaciones del numeral 1, pero con, TRMO=155, utilice el esquema del numeral anterior………………………….…..…9 3. Ejercicio Nº 3: Elabore un programa que utilice el timer en modo contador extero, y se visualice el incremento en un Display de 7 segmentos…………………….…………………… .12
2
OBJETIVO:
Práctica Nº 3
Utilizar temporizadores con el Microcontrolador PIC TEMA: Temporizadores. 1. Ejercicio Nº 1: Utilizar el temporizador para elaborar un contador de 1 segundo, cuyo valor se observa en un Display de 7 segmentos. Esquemático:
CÓDIGO: program Practk_3_1 dim a as byte a=0 trisa=$FF trisb=$0 option_reg=%10000111 3
Intcon=$0 TMR0=0 portb=$0 lazo: if tmr0=255 then inc(a) if a=38 then inc(portb) end if end if goto lazo end.
Entradas: 1. Datos que ingresan al Microcontrolador Salidas: 1. Datos que observamos en el Display
4
Proceso: 1. Habilitar el Puerto A como Entrada contador interno 2. Habilitar el Puerto B como Salida 3. Escribo las opciones 4. Comparaciones If tmr0=255 se incrementa a 5. Comparaciones If a = 38 se incrementa el portb Diagrama de Flujo: INICIO
Entradas de datos al uc
TRISA=$FF
TRISB=$0
Option_reg=%10000111
Intcon=$0 TMR0 = 0
SI
No Tmr0= 255
SI Incremento a
No a = 38
Incremento portb
FIN 5
2. Ejercicio Nº 2: Elabore un programa que realice las operaciones del numeral 1, pero con, TRMO=155, utilice el esquema del numeral anterior. Esquemático:
CÓDIGO: program Practk_3_1 dim a as byte a=0 trisa=$FF trisb=$0 option_reg=%10000111 Intcon=$0 TMR0=155 portb=$0 lazo: if tmr0=255 then inc(a) if a=38 then inc(portb) end if end if goto lazo end. 6
Entradas: 1. Datos que ingresan al Microcontrolador Salidas: 1. Datos que observamos en el Display Proceso: 1. Habilitar el Puerto A como Entrada contador interno 2. Habilitar el Puerto B como Salida 3. Escribo las opciones 4. Comparaciones If tmr0=255 se incrementa a 5. Comparaciones If a = 38 se incrementa el portb
7
Diagrama de Flujo: INICIO
Entradas de datos al uc
TRISA=$FF
TRISB=$0
Option_reg=%10000111
Intcon=$0 TMR0 = 155
SI
No Tmr0= 255
SI Incremento a
No a = 38
Incremento portb
FIN
8
2.1.
Ejercicio Nº 2.1:
Elabore un programa que realice las operaciones del numeral 1, pero con TMR0=96, utilice el esquema del numeral anterior. Esquemático:
CÓDIGO: program Practk_3_1 dim a as byte a=0 trisa=$FF trisb=$0 option_reg=%10000111 Intcon=$0 TMR0=155 portb=$0 lazo: if tmr0=255 then inc(a) if a=38 then inc(portb) end if end if goto lazo end.
9
Entradas: 1. Datos que ingresan al Microcontrolador Salidas: 1. Datos que observamos en el Display Proceso: 1. Habilitar el Puerto A como Entrada contador interno 2. Habilitar el Puerto B como Salida 3. Escribo las opciones 4. Comparaciones If tmr0=255 se incrementa a 5. Comparaciones If a = 38 se incrementa el portb Diagrama de Flujo: INICIO
Entradas de datos al uc
TRISA=$FF
TRISB=$96
Option_reg=%10000111
Intcon=$0 TMR0 = 155
SI
No Tmr0= 255
Incremento a
FIN
10
SI
No a = 38
Incremento portb
FIN
11
3. Ejercicio Nº 3: Elabore un programa que utilice el timer en modo contador extero, y se visualice el incremento en un Display de 7 segmentos. Esquemático
CÓDIGO: program Practik_3_3 trisa=$ff trisb=$0 option_reg=%10100010 intcon=$0 tmr0=0 lazo: portb=tmr0 goto lazo end.
12
Entradas: 1. Datos que ingresan al Micro controlador Salidas: 1. Datos que observamos en el Display Proceso: 1. Habilitar el Puerto A como Entrada contador externo 2. Habilitar el Puerto B como Salida 3. Configurar las Opciones 4. Realizo el Lazo para que se vaya incrementando 5. Visualización en el Display de los datos que ingresan al Micro controlador
13
Diagrama de Flujo: INICIO
Entradas de datos al uc
TRISA=$FF
TRISB=$0
Option_reg=%10100001
Intcon=$0
TMR0=0
TMR0=0
Portb=Tmr0
14