Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

11/08/2010 #1

Avatar de Basalto

Ayuda temporizador con el MikroC
Estoy programando un Pic para utilizarlo de temporizador en una insoladora. Y como compilador utilizo el MikroC. No se si es el compilador o el proteus que no me hace lo que le programo, ya que al escribir Lcd_Out(2,4,"Hola"); En vez de escribir hola me aparece el contenido de otra variable que habia mostrado. Le dejo un enlace con el codigo fuente en C y el esquema del Proteus. El enlace es http://www.megaupload.com/?d=MULDZ1S0. Un saludo
12/08/2010 #2

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
He siguido avanzando en el proyecto. Pero me encuentro con otro fallo que supongo de es del MikroC. La linea de codigo que esta marcada como comentario, no me la ejecuta bien. En vez de poner insolando como esta en el codigo fuente me pone un numero. El proyecto es http://www.megaupload.com/?d=JCY3DRDM. Esta en C de MikroC y el esquema del proteus para simular. Haber si alguien me puede echar una mano. Un saludo
12/08/2010 #3

Avatar de ByAxel

Respuesta: Ayuda temporizador con el MikroC
Hola, le di un rápido vistazo y veo que si funciona... Al iniciar aparece "INSOLAGUN" "2010", 2 segundos después aparece "TIEMPO(SEG)" y un valor 24. Al presionar el botón empieza el conteo, ahora te digo lo que modifique; Solo le agregue una resistencia PullDown (conectado a GND) entre el pin RC0 y el pulsador, pues lo que sucede es que el PIC está obteniendo falsos disparos (no sabe si es 1 o 0 cuando lee esa pata).

Mira otros esquemas ya que el motivo es obvio, cuando un pin es de entrada por lo menos debe haber una señal 0 o 1 que por lo general es una resistencia a PullDown o PullUp según sea el caso conectado a ese pin.

Otra cosa, ahí veo que usas dos veces el Lcd_Init();, no digo que está mal pero creo que ya no es necesario, tan solo usando los comandos de limpiar, mover el cursor, etc, podrías hacer todo.

Si pasa algo más me avisas.

Saludos.
12/08/2010 #4

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
Ese probrema ya lo resolvi, muchas gracias por responder. Pero lo que mas me inquieta es el probrema que tengo expecificado en el segundo post. Un saludo
12/08/2010 #5

Avatar de ByAxel

Respuesta: Ayuda temporizador con el MikroC
OK, hay algo curioso... pon como comentario todas las rutinas que traten de sonido Sound_Init() y Sound_play(), que es el problema... al simular sin esas funciones ahora si aparece el texto "Insolando".

Puede ser que las funciones que generan sonido hacen alguna llamada que no sabes o hace uso de posiciones en memoria que tu estás usando (vale la pena ver el código ASM que genera),en fin prueba hacer de tus variables como estáticas o asigna una posición de memoria exacta a tus variables.

PD: Que versión estas usando del MiKroC ya que en el mio esto ADC_Init() me da error, no existe en la lib (Ver3.2).

Saludos.
12/08/2010 #6

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
ByAxel dijo: Ver Mensaje
OK, hay algo curioso... pon como comentario todas las rutinas que traten de sonido Sound_Init() y Sound_play(), que es el problema... al simular sin esas funciones ahora si aparece el texto "Insolando".

Puede ser que las funciones que generan sonido hacen alguna llamada que no sabes o hace uso de posiciones en memoria que tu estás usando (vale la pena ver el código ASM que genera),en fin prueba hacer de tus variables como estáticas o asigna una posición de memoria exacta a tus variables.

PD: Que versión estas usando del MiKroC ya que en el mio esto ADC_Init() me da error, no existe en la lib (Ver3.2).

Saludos.
Muchas gracias por responder. Mi versión es la 3.8 creo que es la ultima. Vete a view y a library manager y activa la libreria del CAD. Un saludo

Como puedo hacer una variable estatica? Porque ahora lo que me pasa es que a la segunda vez, no me aparece los de Tiempo(Seg). Un saludo

Si quieres ver el nuevo codigo http://www.megaupload.com/?d=G82W5VFM. Un saludo
21/08/2010 #7

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
Como asigno una posicion fija a las variables?
21/08/2010 #8

Avatar de ByAxel

Respuesta: Ayuda temporizador con el MikroC
Basalto dijo: Ver Mensaje
Como asigno una posicion fija a las variables?
Esta es la forma... por ejemplos:
unsigned char Var1 absolute 0x500; // La dirección 0x500 a un byte
unsigned char Buffer[8] absolute 0x501; // Desde la dirección 0x501 + 7 byte

veré si hay otras formas...

Saludos.
23/08/2010 #9

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
Pues la verdad es que sigue igual, creo que me voy a pasar a atro compilador. Gracias de todas formas.
23/08/2010 #10

Avatar de ByAxel

Respuesta: Ayuda temporizador con el MikroC
Basalto dijo: Ver Mensaje
Pues la verdad es que sigue igual, creo que me voy a pasar a atro compilador. Gracias de todas formas.
Hola.
Estuve viendo y me animé a comprobar el código, sonido + simulación. Te paso el código que modifique y si resultó.

Saludos
Archivos Adjuntos
Tipo de Archivo: rar TempInsoB.rar (20,8 KB (Kilobytes), 148 visitas)
23/08/2010 #11

Avatar de Basalto

Respuesta: Ayuda temporizador con el MikroC
Muchisimas gracias amigo. Si necesitas algo aqui me tienes. Un saludo
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.