Autor Tema: CCS, CPUDIV y sus incongruencias...  (Leído 9986 veces)

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

Desconectado giff

  • PIC10
  • *
  • Mensajes: 31
    • Ignogantes
Re: CCS, CPUDIV y sus incongruencias...
« Respuesta #15 en: 17 de Febrero de 2010, 03:03:23 »
Según la ultima imagen y lo explicado previamente en el post de Duende_azul , si yo deseo trabajar con diferente tiempo de reloj, esto es: 20 Mhz que me entrega el oscilado HS para el ciclo de instrucción y aplicar PLL5 para los 4Mhz para los 96 Mhz--->48Mhz del usb 2.0 ¿debería al menos poner los siguientes fuses?:

Código: [Seleccionar]
#fuses HS, PLL5, CPUDIV1, USBDIV
asi como también :

Código: [Seleccionar]
#use delay(clock=20000000)

De ante mano, gracias  :o
Mi blog sobre apuntes de electrónica: www.ignogantes.net

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: CCS, CPUDIV y sus incongruencias...
« Respuesta #16 en: 17 de Febrero de 2010, 08:16:45 »
No, sería:
Código: [Seleccionar]
#fuses HSPLL, PLL5, CPUDIV1, USBDIV
#use delay(clock=48000000)

#use delay no es más que una definición que usa el compilador para crear demora, configurar UART entre otras cosas, y se debe colocar el valor a la cual trabajará el microcontrolador. Luego en los fuses se debe indicar que será un HS pero además se usará PLL.


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

Desconectado giff

  • PIC10
  • *
  • Mensajes: 31
    • Ignogantes
Re: CCS, CPUDIV y sus incongruencias...
« Respuesta #17 en: 17 de Febrero de 2010, 12:15:53 »
No, sería:
Código: [Seleccionar]
#fuses HSPLL, PLL5, CPUDIV1, USBDIV
#use delay(clock=48000000)

#use delay no es más que una definición que usa el compilador para crear demora, configurar UART entre otras cosas, y se debe colocar el valor a la cual trabajará el microcontrolador. Luego en los fuses se debe indicar que será un HS pero además se usará PLL.


Saludos!

Ahora me salió una consulta mucho mas noob. Es decir si configuro #use delay(clock=4000000) el compilador configurará de tal forma el microcontrolador para que opere a esa velocidad? (ya teniendo los 48 Mhz generados con el PLL)

CORRECCION:

Si activo HSPLL junto con CPUDIV1 la frecuencia de reloj para el funcionamiento del pic será de 48 Mhz (tanto USB como frecuencia reloj del propio uC). Yo deseo que el uC me opere a 20 Mhz (por cosas de la vida del RTOS CSS que no me calcula bien los tiempos en 48 Mhz pero si a 20 Mhz) pero igual deseo usar el USB 2.0. A cambio, leyendo el datasheet de la familia 18fxx5x se que se puede operar a distintas frecuencias (pagina 30 del datasheet, sección 2.3.2 Running different USB and microcontroller clocks).

La cosa es que activando el fuse HSPLL el programa me anda mas rápido (teniendo la directiva use en 20Mhz) y con HS funciona perfectamente (y el usb también, funcionando a 48 Mhz, creo  :o)
« Última modificación: 17 de Febrero de 2010, 12:40:12 por giff »
Mi blog sobre apuntes de electrónica: www.ignogantes.net

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: CCS, CPUDIV y sus incongruencias...
« Respuesta #18 en: 17 de Febrero de 2010, 15:29:47 »
Si activo HSPLL junto con CPUDIV1 la frecuencia de reloj para el funcionamiento del pic será de 48 Mhz (tanto USB como frecuencia reloj del propio uC). Yo deseo que el uC me opere a 20 Mhz (por cosas de la vida del RTOS CSS que no me calcula bien los tiempos en 48 Mhz pero si a 20 Mhz) pero igual deseo usar el USB 2.0. A cambio, leyendo el datasheet de la familia 18fxx5x se que se puede operar a distintas frecuencias (pagina 30 del datasheet, sección 2.3.2 Running different USB and microcontroller clocks).

La cosa es que activando el fuse HSPLL el programa me anda mas rápido (teniendo la directiva use en 20Mhz) y con HS funciona perfectamente (y el usb también, funcionando a 48 Mhz, creo  :o)


jejeje! Si sabre que falla a 48MHz.  :5] No se puede obtener 20 MHz. Creería que hay que activar el PLL mediante el fuse HSPLL y luego de pasar por el PLL al obtener 96 MHz se puede dividir entre 2, 3, 4 y 6, pero no se lograría la frecuencia deseada.  :?


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

Desconectado giff

  • PIC10
  • *
  • Mensajes: 31
    • Ignogantes
Re: CCS, CPUDIV y sus incongruencias...
« Respuesta #19 en: 17 de Febrero de 2010, 18:12:06 »


jejeje! Si sabre que falla a 48MHz.  :5] No se puede obtener 20 MHz. Creería que hay que activar el PLL mediante el fuse HSPLL y luego de pasar por el PLL al obtener 96 MHz se puede dividir entre 2, 3, 4 y 6, pero no se lograría la frecuencia deseada.  :?


Saludos!

Ya, estuve releyendo y releyendo el datasheet y al final me di cuenta que estaba mal. Al dejar HS solamente el pic usa USB pero a baja velocidad. Rayos!!
Mi blog sobre apuntes de electrónica: www.ignogantes.net


 

anything