16F876 si activo WDT , no puedo poner en sleep al pic!!!

Buenas a todos, decir lo primero que estoy aprendiendo y me he embarcado en un proyecto personal, el primero, que fue muy bien, lo hice con la mitica 16f84. Os cuento mi problema, estoy programando C con CCS, pues vereis, ya tenia todo probado emulado..., me he puesto a dejar el programa bonito y de repente ya no funcionaba perfecto..., no se quedaba en sleep, entraba y salir instantaneamente, bueno tran muchas pruebas sin saber "el porque", veo que antes no habia activado WDT y ahora tenia ya el perrito suelto...:unsure:, os cuento lo que tengo.
La idea es sacar de sleep mediante #int RB, que funciona perfectamente sin el WDT, no tengo configurado que WDT saque al pic de Sleep, os pego un trozo del programa de main:

void Main()
{
set_tris_a (0b000011);
set_tris_b (0b11110000);
set_tris_c (0b00000001);
puerto_a=0;
puerto_b=0;
puerto_c=0;
setup_timer_0(RTCC_INTERNAL);setup_wdt(WDT_18MS);//da igual el tiempo, el problema estar ..., esta.
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_DIV_8);
enable_interrupts(INT_RB);
ext_int_edge(L_TO_H);
enable_interrupts(GLOBAL);


he querido introducir este comando , pero CCS siempre me dice error de parentesis , lo pongo del modo que se me ocurra: WDT_FROM_SLEEP, mas que nada porque parece tener relacion, para llevarlo a sleep asi lo he hecho


void ApagadoManual()
{
while(true)
{
if(!input(Apagado))
delay_ms(300);
if(!input(Apagado))
{
output_low(LedEncendidoMonitor);
CloseMonitor=0;
puerto_a=0; // reinicio puertos para que se apaguen todos los led, ya que quedan algunos
puerto_b=0; // encendidos, pero si esta en sleep.
puerto_c=0;
CloseMonitor=2;
sleep();
}
else
break;
}
}


como no se apagaban los led, configure el ADC para que diera errores y CCS me los registrara, cuando se iba a sleep se paraban los errores pese a estar los led encendidos, ESTO SIN WDT activado , claro.

Que podeis indicarme de este pequeño dilema, no he podido leer un caso igual en toda la red de redes.

Saludos.

Nadie sabe decirme nada....?
 
Última edición por un moderador:
Atrás
Arriba