Tecnico Universitario En Electronica Y Electricidad

Páginas: 5 (1058 palabras) Publicado: 7 de diciembre de 2012
iem

INSTITUTO DE ELECTRONICA MODERNA
Julián Barraquero n° 14, CP: 5500, Mendoza (Argentina). Tel: (0261)4-242420. ( Casi esquina con San Martín n° 200, de ciudad).
1.-

APENDICE N°1.
PROGRAMA APRENDIZAJE :
EJEMPLO N°1 : Utilizando el PIC 16X 84 que trabaja a 1 Mhz se conecta un led a la línea RB7 de la PUERTA B. Se desea hacer parpadear al led cada 8,2 ms . En primer lugar vamos aexplicar dos nuevas instrucciones que nos van a ser de gran utilidad, ya que nos van a permitir realizar subrutinas dentro de nuestro código. Las subrutinas desvían el flujo de ejecución de nuestro programa a otro punto, pudiendo luego retornar al punto original, para lo cual ha de salvarse el Contador de Programa en la pila. La pila del PIC 16X84 tiene 8 niveles, lo que permite anidar hasta 8subrutinas mediante las siguientes instrucciones : call k : Guarda la dirección de la instrucción actual en la pila y salta a la dirección llamada. ( k = literal ). return : Retorna a la dirección que esté en la cabeza de la pila, esto es, la última que haya sido almacenada. Para medir los 8,2 ms se emplea el TMR0 al cual se le hace contar 16 impulsos del reloj interno divididos por 128 mediante el Divisorde Frecuencia. La fórmula de tiempo es :

Temporización = 4 . 1µs . Tose . Valor cargado en TMR0, rango de divisor = ? ms. Temporización = 4 . 1µs . 16 . 128 = 8192 µs = 8192µs/1000= 8,192ms aprox. 8,2 ms El reloj/4 es un microsegundo. Recordemos que a Tosc le colocaremos un 0 para que el incremento del TMR0 se realice con el reloj interno.

A continuación se presenta el diagrama de flujo delprograma.

Subrutina de retardo.
INICIO
Configurar la PUERTA B, como salida

Borrar temporizador

Temp =1 Borrar PUERTA B

Encender led Subrutina de retardo Apagar led subrutina de retardo

RETORNO

iem

INSTITUTO DE ELECTRONICA MODERNA
Julián Barraquero n° 14, CP: 5500, Mendoza (Argentina). Tel: (0261)4-242420. ( Casi esquina con San Martín n° 200, de ciudad).
2.-

Paracomprobar que el TMR0 ha llegado a 1610 = 0001 00002 se explora el momento en que su bit 4 ósea Tose que pasa a valer 1. Para asignar el divisor de frecuencia al TMR0 con el rango de 1 :128 tendremos que cargar al registro OPTION con el valor indicado en el siguiente desarrollo del programa.

A continuación se desarrolla esquemáticamente el correspondiente programa.

Micro a utilizar

ListTMR0_OPT PUERTA B ESTADO

P=16c84
EQU EQU EQU 01 06 03

Configuración de constantes
ORG bsf movlw movwf movlw movwf bcf bcf 0 ;inicio el programa en 0. ;elijo el banco 1. ;valor que cargo en OPTION. ;muevo w para cargar TMR0. ; coloco en w ceros para la puerta b. ;la puerta B es salida por los ceros cargados. ;vuelvo al banco 0. ; clareo la puerta B. ; enciendo el led en el pin 7. ; llamo asubrutina RETARDO. ; apago el led que encendí. ; llamo de nuevo a subrutina. ; hago el bucle. ;clareo el temporizador y comienza el incremento. ;explora el bit 4 =1 ósea llego a 16 10 ; no llegó TMR0 a 16 10 ; retorna al programa principal. ESTADO,5 b’11010110’ TMR0_0PT b’00000000’ PUERTAB ESTADO,5 PUERTAB PUERTAB,7 retardo PUERTAB,7 retardo parpadeo TMR0_OPT TMR0_OPT,4 explora

Configuración depuertos

parpadeo bsf call bcf Programa call principal goto retardo explora clrf btfss goto return END

Configuración de subrutinas

Configuración del Hard para el programa anterior.
Vdd +5V

RESET
10 K Diodo de señal + 5V

PIC16C/F84 1 2 3 4 5 6 7 8 9 RA2 RA3 RA4/TOCKI MCLR/Vpp Vss RB0/INT RB1 RB2 RB3 RA1 RA0 OSC1 OSC2 Vdd RB7 RB6 RB5 RB4 18 17 16 15 14 13 12 11 10

15k

NC

27pF680

LED

iem
NOTA :

INSTITUTO DE ELECTRONICA MODERNA
Julián Barraquero n° 14, CP: 5500, Mendoza (Argentina). Tel: (0261)4-242420. ( Casi esquina con San Martín n° 200, de ciudad).
3.-

Así quedaría el registro OPTION con el valor asignado al Divisor de TMR0 y hacer que divida por 128 los impulsos del reloj interno.

1

1

0

1

0

1

1

0

TOSC TOSE PSA...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Técnico Universitario en Electronica
  • técnico en electricidad y electronica
  • Tecnico electricidad y electronica
  • Tecnico En Electronica Y Electricidad
  • Tecnico en Electricidad y electronica industial
  • Tecnico de nuivel superior en electricidad y electronica industrial
  • tecnico superior universitario en electricidad
  • tecnico en electronica y electricidad

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS