Autor Tema: Problemas de oscilador con 18F24J10  (Leído 2087 veces)

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

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Problemas de oscilador con 18F24J10
« en: 12 de Mayo de 2011, 15:23:59 »
Hola amigos. Estoy sufriendo un problema con un 18F24J10.
El caso es que por más combinaciones de fuses que he probado, el micro no oscila.
Este es el software que estoy probando:
Código: [Seleccionar]
#include <18F24J10.h>
#device adc=16

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES WDT128                   //Watch Dog Timer uses 1:128 Postscale
#FUSES NOXINST                  //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES HS                       //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)
#FUSES INTRC                    //Internal RC Osc

#use delay(internal=8MHz)
#byte PORTA=0xF80
#bit  LED_ROJO=PORTA.0
#bit  LED_VERDE=PORTA.1

void main()
{
   setup_adc(ADC_OFF);
   setup_adc_ports (NO_ANALOGS);
   set_tris_a(0x11111000);


   while(1) {
      output_c(255);
      LED_ROJO=1;
      LED_VERDE=0;
      //delay_ms(500);
      output_c(0);
      LED_ROJO=0;
      LED_VERDE=1;
      //delay_ms(500);
   }
}

Únicamente he conseguido ver que el micro está vivo si utilizo el ICD3 en modo Debugger y ejecuto el programa paso a paso. En ese caso sí veo cómo los pines van cambiando de estado, aunque ciertamente lo hacen a una velocidad superlenta. Si sirve de pista, la oscilación que mido en los pines del puerto C es de 714Hz.

¿Algún consejo?

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problemas de oscilador con 18F24J10
« Respuesta #1 en: 12 de Mayo de 2011, 15:35:09 »
La idea es usar el oscilador interno, no es cierto? Porque veo un HS por ahí  :?

Aparte de seleccionar el fuse correctamente seguramente hace falta configurar el oscilador para fijar a que velocidad se va utilizar.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Problemas de oscilador con 18F24J10
« Respuesta #2 en: 12 de Mayo de 2011, 15:37:44 »
Sí, Suky, este micro lleva el fuse HS o el EC, además del INTRC. Es algo diferente a los micros que había usado hasta ahora.

El oscilador interno lo tengo configurado con
#use delay(internal=8MHz)

aunque para mi desesperación, también estuve probando con toda clase de parámetros en SETUP_OSCILLATOR();

Desconectado pablomanieri

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 639
Re: Problemas de oscilador con 18F24J10
« Respuesta #3 en: 12 de Mayo de 2011, 16:36:24 »
Verificaste si este pic no acepta el fuse INTHS?. Es esta PC no tengo el CCS instalado,para fijarme, saludos.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Problemas de oscilador con 18F24J10
« Respuesta #4 en: 12 de Mayo de 2011, 17:12:11 »
No, estos son los fuses que admite.
//////// Fuses: NOWDT,WDT,NOSTVREN,STVREN,NOXINST,XINST,DEBUG,NODEBUG
//////// Fuses: PROTECT,NOPROTECT,HS,H4_SW,EC_IO,E4_SW_IO,INTRC,PRIMARY
//////// Fuses: NOFCMEN,FCMEN,NOIESO,IESO,WDT1,WDT2,WDT4,WDT8,WDT16,WDT32
//////// Fuses: WDT64,WDT128,WDT256,WDT512,WDT1024,WDT2048,WDT4096,WDT8192
//////// Fuses: WDT16384,WDT32768,CCP2B3,CCP2C1

Pero de todas formas, he estado cambiando los "Configuration bits" manualmente en MPLAB para probar todas las combinaciones que se me ocurrían y nada  :(

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Problemas de oscilador con 18F24J10
« Respuesta #5 en: 12 de Mayo de 2011, 17:28:02 »
Queda descartado un problema con el micro, porque lo he cambiado por otro nuevo y pasa lo mismo.

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Problemas de oscilador con 18F24J10
« Respuesta #6 en: 12 de Mayo de 2011, 17:57:24 »
Sera lo mismo que el PIC18F47J53, al cual toca habilitarle el PLL por software para que pueda empezar a trabajar?. Tal vez para poder generar los 8MHZ necesita habilitar algo internamente.


Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Problemas de oscilador con 18F24J10
« Respuesta #7 en: 12 de Mayo de 2011, 17:58:58 »
¿Habilitar el PLL por software?, ¿no queda habilitado con los fuses?

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Problemas de oscilador con 18F24J10
« Respuesta #8 en: 12 de Mayo de 2011, 18:05:52 »
No amigo manolo, en los microcontroladores XLP, debe habilitarse por software el PLL. Esta característica te da la ventaja de poder apagar el PLL  cuando quieres correr a bajo consumo sin perder funciones de interrupciones y demás. Luego cuando necesitas máximo rendimiento pasas  PLL Enable y subes a correr a toda maquina.

Es una característica que por fin es incluida en los PICs y que otras marcas ya venían implementando con mucho éxito.


Búscate en el datasheet algo sobre ello, yo haré lo mismo a ver que conseguimos.


En el datasheet dice algo sobre: with Software PLL Control

Mas abajo encuentro esto:

Registro: OSCTUNE
Bit:
PLLEN: Frequency Multiplier PLL Enable bit(1)
1 = PLL enabled
0 = PLL disabled

Con eso si empieza a trabajar e PIC a toda maquina. debes hacerlo por software.

SALUDOS!






« Última modificación: 12 de Mayo de 2011, 18:13:47 por LABmouse »

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Problemas de oscilador con 18F24J10
« Respuesta #9 en: 12 de Mayo de 2011, 18:18:53 »
Por fin encontré el problema. Como siempre me pasa, tropiezo con errores de novato  :5]

No puse la resistencia en MCLR porque estoy acostumbrado a usar el fuse NOMCLR y este PIC no lo tiene, así que la resistencia es obligatoria.

En cuanto la he colocado ha salido volando.

Gracias por vuestra ayuda