Autor Tema: Oscilador externo para PIC 16f818???  (Leído 7114 veces)

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

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Oscilador externo para PIC 16f818???
« en: 29 de Agosto de 2011, 03:48:22 »
Buenas, estoy en un proyecto de controlar leds RGB con un PIC. El algoritmo del programa ya esta funcionando perfecto en un PIC 18f4550 con oscilador exteno a 20Mhz, en el cual se controla por PWM la intensidad de cada color por tres entradas analogicas en las que conecto tres potes, lo que me permite hacer la mezcla.

El tema es que para hacer solo eso no vale la pena semejante PIC, por lo que he elegido el PIC 18f818 que segun su datasheet soporta osciladores externos hasta 20Mhz. El problema es que solo he logrado hacerlo funcionar a 8Mhz con OSC interno, ya que al programarlo para OSC externo a 20Mhz no funciona.

Mi gran duda es si este PIC soporta osciladores a 20Mhz ya que al trabajar con menos frecuencia se nota el parpadeo de ambos colores.

Espero sus comentarios!!!

Un saludo!

Desconectado micro_pepe

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3216
Re: Oscilador externo para PIC 16f818???
« Respuesta #1 en: 29 de Agosto de 2011, 09:39:07 »
El PIC16F818 tiene oscilador interno hasta 8MHz, y con un cristal externo hasta 20MHz.

Para el oscilador externo de 20MHz tienes que poner el fuse del oscilador en HS, revisa que pusiste ese fuse.

Por otro lado, tendrás que reconfigurar los timer que uses, si los estás usando y quieres usarlo para 8MHz. No temporizan lo mismo si cambias la frecuencia del oscilador.

Saludos.
« Última modificación: 29 de Agosto de 2011, 09:41:55 por micro_pepe »
Se obtiene más en dos meses interesandose por los demás, que en dos años tratando de que los demás se interesen por ti.

新年快乐     的好奇心的猫死亡

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #2 en: 29 de Agosto de 2011, 09:41:39 »
  ¿No será que hay algún error en la configuración? Yo he utilizado PICs chicos (F84 y F628) incluso a mayor frecuencia que la indicada en el datasheet y funcionaban bien.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #3 en: 29 de Agosto de 2011, 13:02:22 »
Hola gente, pego el codigo de enzabezado del programa donde se definen todos esos parametros a ver si tengo algo mal, pero no creo ya que el mismo programa en el 18f4550 anda muy bien a 20Mhz.

Código: [Seleccionar]
#fuses HS,NOWDT,NOPROTECT,NOLVP,NOMCLR,NOPUT,NOBROWNOUT
#use delay(oscillator=20M)

Alguna idea???
Saludos!

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #4 en: 29 de Agosto de 2011, 14:08:14 »
  No uso CCS, pero a juzgar por los nombres parecería que la configuración está bien. ¿Tenés bien filtrada la alimentación del PIC? En ocasiones con el 628 me pasó que con oscilador interno funcionaba bien pero cuando lo usaba con cristal me fallaba y era producto de mal filtrado en la alimentación.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #5 en: 29 de Agosto de 2011, 14:10:16 »
Si todo bien filtrado con un 7805 ademas de los capacitores ceramicos de .1uF en las patas de VDD y de entrada.

Alguna otra sugerecia?

Saludos!

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #6 en: 29 de Agosto de 2011, 14:13:09 »
Si todo bien filtrado con un 7805 ademas de los capacitores ceramicos de .1uF en las patas de VDD y de entrada.

Alguna otra sugerecia?

Saludos!

  ¿A la salida del regulador colocaste algún electrolítico?
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #7 en: 29 de Agosto de 2011, 14:17:58 »
La fuente seria algo como esto:

Red 220Ac -> Trafo 220/9v 1Amp -> Puente 3Amp -> Electrolitico 2200uF -> Ceramico .33uF -> 7805 -> Ceramico .1uF -> Electrolitico 470uF -> Vdd PIC

Saludos!

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #8 en: 29 de Agosto de 2011, 14:23:28 »
  Probá con un capacitor más chico a la salida del regulador. En ocasiones tener un capacitor muy grande a la salida del regulador provoca mucho ripple. Con uno de 47uF debería ser suficiente, ya que un PIC no tiene un gran consumo. Incluso podrías probar hasta con 10uF.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #9 en: 29 de Agosto de 2011, 14:28:54 »
Si, eso mismo es lo que hice apenas termine de responderte y sigue igual.


Cambiando la linea:

#use delay(oscillator=20M)

Por:

#use delay(oscillator=20000000)

Ahora toma el oscilador externo y el PIC funciona  :-/ , pero hace el mismo error que con el Oscilador interno a 8Mhz  :? , ya que parpadea el led desde 0.1v hasta 5v donde queda fijo.

Nose cual sera el problema del parpadeo del led, con el 18f4550 funciona de maravillas, sera que el 16f818 tiene poca RAM o es mas lento???

Saludos!

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #10 en: 29 de Agosto de 2011, 14:39:39 »
Si, eso mismo es lo que hice apenas termine de responderte y sigue igual.


Cambiando la linea:

#use delay(oscillator=20M)

Por:

#use delay(oscillator=20000000)

Ahora toma el oscilador externo y el PIC funciona  :-/ , pero hace el mismo error que con el Oscilador interno a 8Mhz  :? , ya que parpadea el led desde 0.1v hasta 5v donde queda fijo.

Nose cual sera el problema del parpadeo del led, con el 18f4550 funciona de maravillas, sera que el 16f818 tiene poca RAM o es mas lento???

Saludos!

  Este CCS  :? Que loco que cambiando la línea del delay te deje usar el modo HS... pero bueh, viniendo de CCS no es tan extraño.

  Fijate en el datasheet de ambos micros, si hay diferencias en cuanto a los tiempos del ADC. Porque sí sé que hay diferencia entre los 18F4550 y los 16F877A. Tal vez esas diferencias de velocidades te provoquen la falla. O tal vez sea algún tema referido a la frecuencia máxima que se puede obtener del módulo PWM (si es que lo estás usando).
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #11 en: 29 de Agosto de 2011, 15:09:59 »
Bueno, tal como tu dices te dejo el datasheet de ambos PIC para comparar el tiempo de lectura del ADC, por lo que puedo ver yo son bastantes parecidos por lo que no veo mucha diferencia.

Un Saludo!!




Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Oscilador externo para PIC 16f818???
« Respuesta #12 en: 29 de Agosto de 2011, 15:19:16 »
Pero fijate en el Acquisition time (página 84 del 16F818) (página 264 del 18F4550), para el 16F es de 19.72uS mientras que para el 18F es de 2.45us.
Mas allá de este valor, sería cuestión de revisar la configuración del ADC y asegurarse que se esté dentro de los parámetros dados en el datasheet.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado chugus

  • PIC10
  • *
  • Mensajes: 30
Re: Oscilador externo para PIC 16f818???
« Respuesta #13 en: 29 de Agosto de 2011, 16:08:08 »
Ok, me pondre a revisar pero ya me esta dando muchos dolores de cabeza, me parece que pondre un 18f2550 y no voy a renegar mas....

El 16f818 lo voy a dejar para otros proyectos...

Un saludo y gracias por la ayuda amigo!!!



 

anything