Autor Tema: Configuracion cristal interno/externo pic18f4550  (Leído 18279 veces)

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

Desconectado Lu29

  • PIC10
  • *
  • Mensajes: 4
Configuracion cristal interno/externo pic18f4550
« en: 24 de Diciembre de 2013, 10:08:14 »
Muy buenas, soy nuevo en el foro y también en esto de los pics y necesitaba vuestra ayuda para entender varias cosas sobre los cristales internos/externos con un pic18f4550 y con el compilador CCSC.
Estado usando el buscador del foro ya que tenia un programa bien simple de apagar y encender un led con el pic18f4550 usando el reloj interno y el delay de 1s que le puse lo hacia en 4s.
He visto en otro tema que usando los fuses:

INTRC_IO y el setup_oscillator(OSC_8MHZ|OSC_INTRC);

el problema se soluciona y el led parpadea en un segundo.
Mi pregunta es que en el pdf del pic18f4550 viene esto:


Yo entiendo aquí que el INTRC no puede darme mas 31khz por eso creía que debería usar INTHS para poder usar los 8Mhz.
Por eso no entiendo porque se usa INTRC.

También querría saber entonces que significan INTHS y INTXT no exactamente que quiere decir en el pdf porque esta en ingles.

Y ya por ultimo tengo la placa con un cristal externo de 4mhz y usando el fuse XT y #use delay(clock=4000000) no me hace caso y usa el interno, además acaba pasando lo de mas arriba que le digo que led parpadee cada segundo y lo hace cada 4 segundos.

Un saludo y muchas gracias por su ayuda.
Felices fiestas.

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #1 en: 24 de Diciembre de 2013, 10:44:03 »
para cristal externo usa setup_oscillator(OSC_NORMAL); e incluye en los fuses XT, solo te falta poner el use delay(clock=4000000);
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado Lu29

  • PIC10
  • *
  • Mensajes: 4
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #2 en: 07 de Enero de 2014, 10:11:00 »
para cristal externo usa setup_oscillator(OSC_NORMAL); e incluye en los fuses XT, solo te falta poner el use delay(clock=4000000);

Muchas gracias por aclararme la primera duda, haber si alguien me puede ayudar con las otras dos dudas.
un saludo

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #3 en: 07 de Enero de 2014, 11:44:32 »
Yo entiendo aquí que el INTRC no puede darme mas 31khz por eso creía que debería usar INTHS para poder usar los 8Mhz.
Por eso no entiendo porque se usa INTRC.

También querría saber entonces que significan INTHS y INTXT no exactamente que quiere decir en el pdf porque esta en ingles.

Y ya por ultimo tengo la placa con un cristal externo de 4mhz y usando el fuse XT y #use delay(clock=4000000) no me hace caso y usa el interno, además acaba pasando lo de mas arriba que le digo que led parpadee cada segundo y lo hace cada 4 segundos.


El oscilador interno te permite usar hasta 8MHz, para velocidades mayores neceistas un cristal externo, en CCS solo necesitas el INTRC para configurar el cristal interno y en #use delay especificas la velocidad que deseas, para usar un cristal externo cambias tu fuse por XT o HS dependiendo el caso.

Saludos
"Nada es imposible, no si puedes imaginarlo"

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #4 en: 07 de Enero de 2014, 15:53:46 »
Con 4Mhz desde un cristal externo podrías, mediante el USB Clock Source, lograr hasta 48Mhz de velocidad de clock para el CPU. También podrías lograr 32,24 y 16Mhz cambiando el PLL Postscaler.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado Lu29

  • PIC10
  • *
  • Mensajes: 4
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #5 en: 14 de Enero de 2014, 17:25:31 »
Muchas gracias por las respuestas pero todabia no tengo resuelto mis dudas.
No se cuando deberia usar INTHS ni INTXT.
Y lo mas importante en la imagen que he puesto la red RC no pueda darme mas de 31khz entonces no entiendo porque se debe poner INTRC
Un saludo

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #6 en: 14 de Enero de 2014, 17:41:12 »
Muchas gracias por las respuestas pero todabia no tengo resuelto mis dudas.
No se cuando deberia usar INTHS ni INTXT.
Y lo mas importante en la imagen que he puesto la red RC no pueda darme mas de 31khz entonces no entiendo porque se debe poner INTRC
Un saludo

El osc interno si te puede dar mas de 31Khz, pero el micro tiene 2 osciladores, uno es un circuito RC, el cual esta fijo a 31KHz y el otr es un cristal, el cual es de 8MHz, si escojes el RC tu frecuencia será de 31KHz, en cambio si escoges el cristal tienes 8MHz que puedes pasar por un divisior, el cual te entrega fracciones de 8, como se muestra en tu imagen.

En cuanto a la configuracion, depende del lenguaje en el que programes es la sintaxis para elegir tu reloj.

Espero aclararte un poco mas la idea del oscilador, si no es así puedes decirlo e intentare explicarlo de otra manera

Saludos
"Nada es imposible, no si puedes imaginarlo"

Desconectado Lu29

  • PIC10
  • *
  • Mensajes: 4
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #7 en: 16 de Enero de 2014, 17:15:51 »
Muchas gracias por las respuestas pero todabia no tengo resuelto mis dudas.
No se cuando deberia usar INTHS ni INTXT.
Y lo mas importante en la imagen que he puesto la red RC no pueda darme mas de 31khz entonces no entiendo porque se debe poner INTRC
Un saludo

El osc interno si te puede dar mas de 31Khz, pero el micro tiene 2 osciladores, uno es un circuito RC, el cual esta fijo a 31KHz y el otr es un cristal, el cual es de 8MHz, si escojes el RC tu frecuencia será de 31KHz, en cambio si escoges el cristal tienes 8MHz que puedes pasar por un divisior, el cual te entrega fracciones de 8, como se muestra en tu imagen.

En cuanto a la configuracion, depende del lenguaje en el que programes es la sintaxis para elegir tu reloj.

Espero aclararte un poco mas la idea del oscilador, si no es así puedes decirlo e intentare explicarlo de otra manera

Saludos

Muy buenas, no termino de entenderlo del todo. El lenguaje uso el CCSC.
Lo que no entiendo es porque en CCSC se debe poner INTRC, porque por su nombre se da a entender que vas a usar el interno RC. Supongo que sera cosa de los de CCSC.
Y lo otro es en CCSC cuando se debe usar INTHS y INTXT.

Otra pregunta que tiene que ver con el tema pero por no abrir otro hilo parecido, ahora esto con un pic18f4620 y quiero usar el reloj interno y lo configuro exactamente igual que el pic18f4550 pero no me funciona.
Un saludo y gracias rivale por intentar aclararme las dudas.

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Configuracion cristal interno/externo pic18f4550
« Respuesta #8 en: 16 de Enero de 2014, 17:22:59 »
ya me imaginaba, la confusión la crea ccs, en efecto ccs usa el fuse intrc para configurar el reloj interno, el problema es que no utiliza el RC, simplemente le pusieron ese nombre al fuse(no se porque). pero en ccs puedes configurar el RC o el oscilador interno con este fuse
y la frecuencia se la indicas usando el fuse

#use delay(clock=xxxxx)


en cuanto a tu otra pregunta, en ccs no existe el fuse inths o intxt, para configurar un cristal externo los comandos son simplemente
XT o HS.


podrias poner tu código del 4620 para revisar que podría ser el error

Saludos
"Nada es imposible, no si puedes imaginarlo"