Hola nuevamente:
OSC1/CLK IN y OSC2/CLKOUT Estos pines son donde conectaremos el reloj externo, para que el microcontrolador disponga de algún tipo de temporización.
Bueno, debido a que Sr.Blanco mencionó algo sobre las terminales OSC1 y OSC2 daré un breve resumen sobre los osciladores más usados en los microcontroladores.
Tema:
Osciladores típicos de los microcontroladores.Estos son:
-
Oscilador RC. Este oscilador está compuesto por una red RC simple. Su ventaja es que es económico. Su desventaja es que no tiene mucha precisión en su temporizado.
Figura 2. Ejemplo de oscilador RC.
-
Oscilador basado en cristal de cuarzo o en resonador cerámico. Son muy estables y pueden ser de baja potencia (32 KHz) o de alta velocidad (4 MHz, 8 MHz, 12 MHz, etc.).
Figura 3. Conexión de un cristal de cuarzo a un microcontrolador.
-
Reloj externo. De este modo, la señal de sincronía del microcontrolador es brindada por un dispositivo externo (por ejemplo, un ne555).
Figura 4. Ejemplo de reloj externo.
Cabe aclarar que algunos microcontroladores tienen su oscilador interno integrado, además de la posibilidad de conectarles un oscilador externo.
Para el caso de los PIC, los osciladores a cristal de cuarzo y los resonadores cerámicos adquieren un determinado nombre según la frecuencia a la que se trabaje, de la siguiente manera:
Oscilador LP --> 32 KHz – 200 kHz
Oscilador XT --> 100 KHz – 4 MHz
Oscilador HS --> 4 MHz – 20 MHz
Y algo que también es muy importante aclarar es que la frecuencia de oscilación no es la misma que la frecuencia de las instrucciones. Para los PIC de la gama base y la gama media, y algunos de la gama alta, cada instrucción se ejecuta en 4 ciclos de reloj. Es decir, la frecuencia de las instrucciones es igual a ¼ de la frecuencia del oscilador. Así, si utilizamos un cristal de 4 MHz, la frecuencia de las instrucciones será igual a 1 MHz, por lo cual el ciclo de máquina es igual a 1 / 1 MHz = 1 microsegundo. Cada instrucción se ejecuta en 1 microsegundo.
Para lograr que el dispositivo a grabar trabaje con un determinado oscilador, hay que especificar dicho oscilador en la palabra de configuración. En lenguaje ensamblador esto se hace así:
__CONFIG _XTNoten que __CONFIG lleva dos guiones bajos consecutivos. Esta directiva le indica al software ensamblador que debe grabarse una palabra en la zona de configuración del dispositivo. El argumento _XT indica que el microcontrolador va a trabajar con un oscilador de tipo XT (4 MHz). De manera similar para los otros tipos de osciladores.
En el compilador PCWH, de la compañía CCS, esto se especifica así:
#fuses XT
La directiva #fuses es equivalente a __config del ensamblador. En este caso también se indica un oscilador XT (noten que XT ya no lleva guión bajo).
Por el momento es todo. Saludos.