Autor Tema: Problema de interrupciones  (Leído 2639 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado MACESP

  • PIC10
  • *
  • Mensajes: 2
Problema de interrupciones
« en: 31 de Agosto de 2004, 15:43:00 »
Saludos desde España. Comienzo diciendo que mis conocimientos de microcontroladores son casi nulos, así que recurro a este foro casi como último recurso. El enunciado que pongo
abajo es de un examen de la universidad y no sé por dónde cogerlo, así que recurro a vosotros para que intentéis ayudarme a resolverlo, porque ya digo mis conocimientos del pic son casi nulos.

Sólo trato de aprender. Si alguien es tan gentil y amable de ayudar al ignorante, pues gracias infinitas.

Por cierto, una pregunta más: cuando dice, oscilador RC, ¿qué información suministra para la resolución del problema?


Muchísimas gracias y eterno agradecimiento a quien sea tan amable de responder al problema y la pregunta.

Saludos a todos.

----------------------------

Para una determinada aplicación se necesita que los 7 segmentos de un display parpadeen simultáneamente con
una frecuencia de 1 Hz, es decir, 0.5 seg. encendido y 0.5 apagado. Se inicia el display apagado y el parpadeo
debe comenzar al apretar un pulsador conectado al terminal RA4. Se detiene cuando se pulsa otro pulsador conectado a RA1. Se inicializa con otro pulsador conectado a la patilla MCLR (no se analiza).

Escribir un programa en ensamblador que cumpla las especificaciones sabiendo que el  oscilador es de tipo RC, de frecuencia 32,768 kHz y que los dos pulsadores no pueden
apretarse a la vez. No se refresca el perro guardián y si se usan interrupciones, no es preciso salvar registros mientras se atienden.







Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: Problema de interrupciones
« Respuesta #1 en: 01 de Septiembre de 2004, 02:19:00 »
Oscilador RC: es porque se va a emplear un cristal inferior a 4MHz (32768KHz). A la hora de programar, o bien en la palabra de configuración debes poner RC.

Cuando vayas a calcular las temporizaciones con el TMR0, en 0 y en 1 (son iguales a 0,5s) debes de tener en cuenta la frecuencia del cristal (32768KHz).

Si el cálculo lo haces con contadores anidados no es necesario (puedes usar para este método el programa PIC Delayer que te realiza automáticamente el programa)

Un saludo

Desconectado MACESP

  • PIC10
  • *
  • Mensajes: 2
RE: Problema de interrupciones
« Respuesta #2 en: 01 de Septiembre de 2004, 06:13:00 »
Muchas gracias, Pocher. Hasta ahí he entendido lo que me dices, pero lo que más necesito es el programa en ensamblador que resuelve el problema planteado, de donde podría aprender realmente algo para otros problemas parecidos. Estoy demasiado perdido. Casi todo lo que me dices me suena a chino.

¿Podrías ponerme el programa en ensamblador, si no es mucha molestia y no es muy trabajoso? Tú o alguien que quiera y sepa.

Muchísimas gracias.

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: Problema de interrupciones
« Respuesta #3 en: 01 de Septiembre de 2004, 10:35:00 »
Yo lo que suelo recomendar es que se empiece por algo y sobre una base los demás componentes del FORO van corrigiendo y aportando ideas.

Puede que alguién le sobre tiempo y le apetezca hacerte el programa completo (no es nada dificil) pero lo más normal es lo primero que te he comentado.

Un saludo. Animo y empieza.

Desconectado T0ni0

  • PIC16
  • ***
  • Mensajes: 196
RE: Problema de interrupciones
« Respuesta #4 en: 01 de Septiembre de 2004, 12:35:00 »
bueno, hasta saber como tienes conectado el display y los pulsadores... te he enviado un archivo en el privado para que empiezes, pulsando RA4 enciende un LED en RB3 y pulsado RA1 lo apaga, luego tendrás que realizar el parpadeo del display ok?
aki tienes para empezar

Codigo:

INICIO:   BCF PORTB,3         ;APAGAR DISPLAY
      BTFSS PORTA,4
      GOTO INICIO         ;MIENTRAS NO PULSADO RA4

CICLOS:   NOP
                     ;CICLO DE 1/2 SEGUNDO  
      BSF PORTB,3         ;ENCENDER DISPLAY
                     ;CICLO DE 1/2 SEGUNDO
                     ;APAGAR DISPLAY
 
      BTFSS PORTA,0
      GOTO CICLOS
      GOTO INICIO

      END  



- T0ni0 -
30RCF112

Desconectado Micom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 783
RE: Problema de interrupciones
« Respuesta #5 en: 02 de Septiembre de 2004, 00:49:00 »
Mira mi chavo para entender lo que se te dice primero tienes que tener por lo menos conocimientos prebios de como trabaja un microcontrolador, de lo contrario no podras entender lo que se te quiere explicar. En lo personal te recomiendo que empieces por leer un poco de como trabaja un pic y para esto tienes un monton de alternativas en al red aun en este mismo foro puedes empezar aqui           http://miarroba.com/foros/ver.php?foroid=382961
 
y luego hablamos  
El programador GTP USB PLUS es un super programador
GRACIAS dobles amigo SISPIC

Tan solo queda seguir sobreviviendo

Desconectado Carlete71

  • PIC18
  • ****
  • Mensajes: 433
RE: Problema de interrupciones
« Respuesta #6 en: 02 de Septiembre de 2004, 15:44:00 »

De acuerdo con Micom.

MACESP, no entiendo cómo vas a entender las intrucciones del programa ya sea en C o asembler o lo que sea si tus conocimientos en PIC, como tu dices son casi nulos, aunque te hagamos el hardware y el software del problema que planteas no vas a entenderlo. Si quieres aprender te sugiero que te compres un buen libro (puede ser cualquiera de los que ves abajo de esta página

Saludos,