TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: jukinch en 28 de Abril de 2012, 10:25:30

Título: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 28 de Abril de 2012, 10:25:30
Hola amigos del foro. Comparto una guía de estudio sobre la configuración de los osciladores en c18. Es básicamente la traducción del datasheet del pic 18f4550 y algunos comentarios que fui agregando. Espero les sea de utilidad.
         Saludos.
             Jukinch

link de descarga de la guia (https://www.dropbox.com/s/f7f5ko80hq2bbcd/guia%20de%20osciladores.pdf)
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: gera en 28 de Abril de 2012, 12:32:18
Muchas gracias jukinch!!
Esta muy claro explicado, muy bueno!
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 08 de Octubre de 2012, 18:24:51
Hola amigos del foro:
           He efectuado algunas correcciones a la guia y por ello la posteo.
                Saludos.
                        Jukinch
nueva guia v1.1 (https://www.dropbox.com/s/f7f5ko80hq2bbcd/guia%20de%20osciladores.pdf)
Título: Re: guia de estudio osciladores pic18f4550 - c18 - XC8
Publicado por: Suky en 08 de Octubre de 2012, 18:33:15
Como XC8 es compatible con C18, también es útil  ;-) Muchas gracias Jukinch.


Saludos!
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: elgarbe en 08 de Octubre de 2012, 18:52:28
Como anillo al dedo! Estoy renegando con el oscilador y el timer1 del 2550 y el documento me aclaró varias cosas. Pero hay una que no puedo encontrar, existe la posibilidad de poner cristal externo en osc1 y osc2, poner el pll para que la cpu trabaje a 48MHz y ontener Fosc/4 en algún pin del micro?
Ya vi como se hace usando el oscilador interno, pero no encuentro configuracion alguna para hacerlo partiendo del oscilador externo en OSC1 OSC2...
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 08 de Octubre de 2012, 19:18:32
Hola Elgarbe:

Los modos con Cristal o Resonador externo son estos 4:
         XT Crystal/Resonator
         XTPLL Crystal/Resonator con PLL activado
         HS High-Speed Crystal/Resonator
         HSPLL High-Speed Crystal/Resonator con PLL activado
        y ninguno de ellos te da la frecuencia/4 en RA6.
         Así que no creo que se pueda hacer lo que quieres mediante configuración de los fuses.
          Sólo los siguientes modos con señal externa o con el oscilador interno te dan la posibilidad de utilizar la frecuencia/4.
         EC External Clock como fuente de clock para la CPU con salida de Frecuencia/4 en RA6.
         ECPLL External Clock con PLL activado con salida de Frecuencia/4 en RA6
         INTCKO Internal Oscillator como fuente de clock para la CPU, señal externa EC como fuente de oscilador para el módulo USB, con salida de frecuencia dividida por 4 (FOSC/4) en RA6.-
                   Saludos.
                           Jukinch
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: spaceluis en 16 de Enero de 2013, 02:44:38
GRAN APORTE
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: pajaro en 16 de Enero de 2013, 05:28:29
Hola compañero

muy buena la guia, Felicitaciones.

Me apunto al hilo.

Un saludo.
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 16 de Enero de 2013, 20:29:35
Gracias por los comentarios. Es muy importante entender correctamente la configuración del microcontrolador. Sobre todo para no equivocarnos al hacer cálculos con los delays, configurar los periféricos, transmisión serie, usb, etc. etc.
        Saludos a todos.
              Jukinch
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: bahamut en 08 de Marzo de 2013, 16:48:38
Hola que tal, tengo un problema tratando de sacar por el pin RA6 la señal del oscilador interno, trate ya con varias configuraciones pero no me funciona, espero me puedan ayudar. A continuacion les dejo el codigo de configuracion que estoy usando

#pragma config CPUDIV = OSC1_PLL2,PLLDIV = 1,USBDIV =1,IESO =OFF
#pragma config FOSC =INTOSC_EC

void main(void)
{

    OSCCON=0xF6; //oscilador interno
    while(1);
}
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 10 de Marzo de 2013, 18:51:40
Hola Bahamut.
          Deberías mostrar el proyecto completo para ver que te puede estar pasando.
          Adjunto proyecto de ejemplo. Lo he probado en hard y pude ver a la salida de RA6 la frecuencia/4. (250khz).  :-/
Saludos.
            Jukinch

Código: C
  1. /*
  2. programa: prueba oscilador interno
  3. pic: 18f4550
  4. crystal: NO     CPU: 1Mhz (valor por defecto)
  5. en RA6 sale la frecuencia de Fosc/4 = 250khz
  6.  
  7. CONEXIONES:
  8. 1 led en port b0 con una resistencia en serie de 470ohms
  9. 1 led en port b1 con una resistencia en serie de 470ohms
  10.  
  11. Los leds cambian de estado cada 1 segundo. Uno enciende y el otro se apaga cada vez.
  12. */
  13.  
  14. /*Includes globales*/
  15.  
  16. #include <p18f4550.h>
  17. #include <delays.h>
  18.  
  19. /*Includes locales*/
  20.  
  21.  
  22. /* Bits de configuración*/
  23. #pragma config FOSC = INTOSC_EC // Seleccionamos Oscilador interno, en pin RA6 sale Fosc/4.  El USB usa Clock Externo.
  24. #pragma config WDT = OFF //desactivamos watchdog timer
  25. #pragma config PWRT = ON // activamos power up timer
  26. #pragma config LVP = OFF
  27.  
  28.  
  29.  
  30.  
  31. #define PINLED0 TRISBbits.TRISB0
  32. #define PINLED1 TRISBbits.TRISB1
  33.  
  34. #define LED0 LATBbits.LATB0
  35. #define LED1 LATBbits.LATB1
  36.  
  37. /*declaración de funciones*/
  38.  
  39.  
  40.  
  41.  
  42. //////////////////////////////////////////////////////////////////////////////////////////////////
  43. //                                        Programa Principal                                                  //
  44. //////////////////////////////////////////////////////////////////////////////////////////////////
  45.  
  46.  
  47. void main()
  48. {
  49.         ADCON0 = 0X00,ADCON1 = 0X0F,CMCON = 0X07; //puerto A con todos los pines digitales
  50.         TRISA = 0X00; // puertos A B y C como salida. Recordar Tip: el 0 es una o de ouput y el 1 una I de input!!!
  51.         TRISB = 0X00;
  52.         TRISC = 0X00;
  53.         LATA = 0X00; // ponemos los puertos en cero
  54.         LATB = 0X00;
  55.         LATC = 0X00;
  56.     PINLED0 = 0; // Seteamos el pin como salida para el LED
  57.     PINLED1 = 0; // Seteamos el pin como salida para el LED
  58.    
  59.     while(1)
  60.     {
  61.    
  62.             LED0 = ~LED0; // Intercambiamos el estado del pin del led (Toggle LED)
  63.             Delay10KTCYx(25); //Delay de 250K ciclos (1 segundo a 1MHz. Ya que cada instrucción toma 4 ciclos)
  64.             LED1 = ~LED1; // Intercambiamos el estado del pin del led (Toggle LED)
  65.  
  66.     }
  67.  
  68. }
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 11 de Marzo de 2013, 00:12:11
Hola amigos del foro. Comparto la guia v1.2.

Agregué ejemplos de uso de oscilador interno a diferentes frecuencias de trabajo y con salida de fosc/4 en RA6.
También hay un detalle de como realizar el cálculo de los retardos con la librería delays.h

aquí el enlace: guia v1.2 (https://www.dropbox.com/s/zoyd7am6mn75mwc/guia%20de%20osciladores%20v1.2.pdf)

           Saludos a todos.
                        Jukinch
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 04 de Abril de 2013, 18:55:41
Agrego este interesante hilo a la guia de estudio: ¿Se puede utilizar el oscilador interno para la comunicación USB? (http://www.todopic.com.ar/foros/index.php?topic=40471).
      Saludos.
             jukinch
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: lester en 08 de Septiembre de 2014, 16:05:08
jukinch podrias volver a habilitar el enlace de la guia por favor.
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: elgarbe en 08 de Septiembre de 2014, 16:15:43
Hace rato que no lo veo a Leo, no creo que le moleste que ponga el enlace...

https://www.dropbox.com/s/or9bdbidpk3wm2s/guia%20de%20osciladores%20v1.2.pdf?dl=0

Saludos!
Título: Re: guia de estudio osciladores pic18f4550 - c18
Publicado por: jukinch en 24 de Octubre de 2014, 20:29:09
Gracias Garbe por subirlo.
Estoy un poco perdido por el foro a causa de falta de tiempo.  :(
Pero aunque sea orejeando como se dice en la jerga de la radio siempre me doy una vuelta .  ;-)
abrazo.
      jukinch