Programación Específica > Microcontroladores

 Pic16f877 Se Resetea Tras 5 Seg De Un Pulso En Rc0

(1/2) > >>

DSK:
Hola, soy nuevo x aqui y si me pudierais ayudar os lo agraderece eternamente.

Tengo que hacer un controlador de luces por tiempo con una precision de 0.01 segundo para lo que he usado el timer1 comparandolo con el ccp1 al valor equivalente a dicha precision. Para incrementar unos 3 contadores (para alcanzar las 46 horas que es el maximo valor que necesito) cuando se produzca la interrupcion.

Pongo la configuracion y lo dejo esperando una señal por la patilla rc0 (que en la prueba cambie por rc2). Y hasta la espera funciona tras dar el pulso en la patilla se pasan 4 segundos en los que no se enciende ninguna luz (sustituidas por led para probar) aun poniendo tiempos de 1 o 2 segundos.

Lo que necesito es contralar 25 luces por tiempo, es decir en una eeprom 24lc256 tengo metidos los valores 3 bytes para el tiempoy uno para la bombilla (patilla y puerto) el control de esta memoria lo tengo bien y con subrutinas asique lo he quitado por ser mas practico a la hora de probar.

Lo que hago es nombras 4 variables y luego asignarlas a los contadores y linea.

Como veis necesito todos los puertos como salida solo me queda libre el C que lo necesito para la comunicacion i2c con la memoria y para la conexion serie con el PC para leer datos (para testear las lineas y ver que los cables no estan cortados sin que se enciendan y algo asi)

Podrias ayudarme ya que llevo varios dias con el codigo estancado xq no consigo que lo haga bien.

Uso un PIC16F877 con oscilador de cristal a 20Mhz, condensadores de 15pf

Aqui os dejo el asm a ver si me podeis echar una mano xq tengo que entregarlo en breve.

http://rapidshare.de/files/15231473/PruebaB.asm.html
Edito: Creo que me falta poner en la variable buf3 en el valor un 1 al final xD.
Gracias de antemano.

Aqui el esquematico de pruebas solo con el puertoB que es como lo estoy probando:


Edito: Ya se que me he equivocao en el dibujo y el cristal es una pata al osc1 y otra al osc2 eso esta bien solo que lo he hecho con prisa y ya lo habia subido :(

PD: Perdona faltas de ortografia y demas pero esque llevo unos dias...  :comp: que ya estoy casi loco

karen81:
Pues no se si esto te sirva :unsure: , pero a mi me ocurrio algo similar que el programa se me reseteaba y aveces no hacia lo que tenia que hacer, aunque en el simulador me funcionaba bien, el problema era a la hora de quemar el programa al pic, yo uso winpic800 con el JMD programmer. no se si es tu caso, espero tu respuesta.


saludos  :hola:

DSK:
Pues lo estoy programando con el icrprog, pero me he bajado el winpic800, selecciono en hardware el jdm (aunque la placa me la han dejado pero seleccionando jdm en el icrprog me funciona, no es comprada es hecha por hay pone SAIT no se si sera algo o simplemente un nombre que han puesto), borro el pic y cuando voy a programar entonces me dice error en la direccion 0x000000 entonces pues no he podido probar lo que me dices.

karen81:
No te he dado mi solucion ;) , lo que te preguntaba era si usabas winpic800 y JMD, porque si era asi lo que tenias que hacer es :donde dice config seleccionar XT, y quitar los demas cheques de la parte que dice -OSC- (si usas un circuito para reset dejar el cheque en MCLR), lo demas se deja como esta.
Pero si no estas usando eso, entonces no te sirve mi solucion porque es necesario que tengas el circuito de JMD para que funcione, pero tu  tienes otro circuito, asi que mi sugerencia es que revises la configuracion del ICPROG puede ser que este ahi el problema. Suerte  :hola:

Huguen_aus_Tirol:
Hola! Es probable que en los bits de configuracion estes habilitando el watchdog, por lo que te genera el reset despues de algun tiempo. En el programador que uses, verifica que el WDT esté desactivado.
Hice click en el link, pero no pude ver el programa; sería bueno verlo, para saber si no está alli el problema.
Ah!, y no te preocupes!, si quedas loco, pues bienvenido a la familia :lol: !!!!!
Y si hay faltas de ortografía, aquí no necesitamos compilar nada :P  [HERORR x]

Pon el programa, así lo revisamos

Saludos :hola:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa