Vous êtes sur la page 1sur 66

Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

FAMILIA 18FXX5X
• PIC18F2455 • PIC18LF2455
• PIC18F2550 • PIC18LF2550
• PIC18F4455 • PIC18LF4455
• PIC18F4550 • PIC18LF4550

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Esta familia de dispositivos ofrece las ventajas de todos los


microcontroladores PIC18, a saber, alto desempeño computacional
y precio económico, con el agregado de alta resistencia, memoria
flash de programa mejorada.

Además de estas características, la familia 18fxx5x introduce


mejoras en el diseño que hacen que estos microcontroladores una
elección lógica para muchos usos sensibles y de alto rendimiento
de la energía.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
NUEVAS CARACTERÍSTICAS DEL NÚCLEO

1.-TECNOLOGÍA nanoWatt

Todos los dispositivos de la familia 18fxx5x incorporan un rango de


características que pueden reducir significativamente el consumo de energía
durante su operación.
Las características clave son:
¾Modos alternos de operación: usando como reloj del controlador la fuente
del Timer1 o el bloque oscilador interno, el consumo de energía durante la
ejecución del código por tanto como 90%.
¾Múltiples modos Idle: el controlador puede operar también con su núcleo
del CPU deshabilitado pero los periféricos aún activos. En estos estados el
consumo de energía puede reducirse incluso hasta, tan poco como 4% de
los requerimientos normales de operación.
¾Cambio de modo en la “corrida”: los modos de manejo de energía son
invocados por el código durante su operación, permitiendo que el usuario
incorpore ideas de ahorro de energía en su diseño de software de
aplicaciones.
¾Bajo consumo en módulos clave: los requerimientos de energía para el
timer 1 y el perro guardián están minimizados

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

2.-BUS SERIAL UNIVERSAL (USB)

Los dispositivos en la familia PIC18FXX5X incorporan un módulo


completamente caracterizado de comunicación por bus seria universal
que acata la Revisión de Especificación 2.0. El módulo acepta tanto
baja velocidad como alta velocidad de comunicación para todos los
tipos de transferencia de datos. También incorpora su propio
transceptor on-chip y regulador de 3.3V y soporta el uso de
transceptores externos y reguladores de voltaje.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
3.- MÚLTIPLES OPCIONES Y CARACTERÍSTICAS DEL OSCILADOR

Todos los dispositivos en la familia 18fxx5x ofrecen doce opciones diferentes


de oscilador, permitiendo a los usuarios un amplio rango de elección en el
desarrollo de hardware de aplicación. Éstas incluyen:
9Cuatro modos de Cristal, usando cristales o resonadores cerámicos.
9Cuatro modos de Reloj Externo, ofreciendo la opción de usar dos pines
(entrada del oscilador y una salida de reloj dividida por 4) o un pin (entrada
del oscilador con el segundo pin reasignado como E/S general).
9Un bloque de oscilador interno, el cual provee un reloj de 8 MHz y una
fuente de reloj interna (aproximadamente 31 KHz, estable por encima de la
temperatura y el VDD) también con un rango de 6 frecuencias de reloj
seleccionadas por el usuario entre 125KHz a 4MHz, para un total de 8
frecuencias de reloj. Esta opción libera un pin del oscilador para uso como
una E/S de propósito general.
9Un multiplicador de frecuencia (PLL), disponible para el cristal de alta
velocidad y para los modos de oscilador externo, lo cual permite un amplio
rango de velocidades de reloj, desde 4MHz hasta 48MHz.
9Operación de reloj dual asíncrona, permitiendo al módulo USB correr a una
alta frecuencia de oscilador mientras el resto del microcontrolador esta
temporizado por un oscilador interno de baja potencia.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
Además de su disponibilidad como una fuente de reloj, el bloque
oscilador interno posee una fuente de referencia estable que da a
la familia características adicionales para operación robusta:

Control a prueba de averías del reloj: esta opción monitorea


constantemente la fuente de reloj principal vs una señal de
referencia provista por el oscilador interno. Si ocurre una falla
del reloj, el controlador es cambiado al bloque de oscilador
interno, permitiendo una operación continuada de baja
velocidad o una aplicación segura de clausura.
Inicio de dos velocidades: esta opción permite al oscilador
interno servir como la fuente de reloj del Power-on Reset, o
despertar del modo Sleep, hasta que la fuente de reloj
primaria esté disponible.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
OTRAS CARACTERÍSTICAS ESPECIALES

™Resistencia de memoria: Las células flash mejoradas para ambas, memoria de


programa y EEPROM de datos están estimadas para durar por mas que miles de
ciclos de borrado/escritura – hacia 100.000 para la memoria de programa y
1.000.000 para la EEPROM. La retención de datos sin refrescar está
conservadoramente estimada para ser mayor que 40 años.
™Autoprogramabilidad: Estos dispositivos pueden escribir a sus propios espacios
de memoria de programa bajo software de control interno. Usando una rutina
cargadora de arranque, localizada en el bloque de arranque protegido, en el tope de
la memoria de programa, esto hace posible crear una aplicación que pueda
actualizarse a sí misma en el campo.
™Conjunto de instrucciones extendidas: la familia 18fxx5x introduce una extensión
opcional a su conjunto de instrucciones la cual agrega 8 nuevas instrucciones y un
modo de direccionamiento indexado con operación de literales. Esta extensión,
habilitada como una opción de configuración del dispositivo, ha sido
específicamente diseñada para optimizar código de aplicación re-entrante
originalmente desarrollado en lenguajes de alto nivel como C.
™Módulo CCP mejorado: en modo PWM, este módulo provee 1, 2 o 4 salidas
moduladas para controlar manejadores de puente completo e incompleto. Otras
características incluyen auto-cierre para deshabilitar las salidas del PWM en
interrupcion o en otras condiciones seleccionadas y auto-reinicio para reactivar las
salidas una vez que la condición ha finalizado.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
™USART direccionable mejorado: este módulo de comunicación
serial es capaz de operaciones RS-232 estándar y provee un soporte
para el protocolo de bus LIN. Otras mejoras incluyen detección
automática de Rata de baudios y generador de rata de baudios de 16
bits para resolución aumentada. Cuando el microcontrolador está
usando el bloque de oscilador interno, el EUSART provee operación
estable para aplicaciones que hablan con el mundo exterior sin usar
un cristal externo (o su requisito de energía acompañante).
™Convertidor A/D de 10 bit: este módulo incorpora tiempo de
adquisición programable, permitiendo a un canal ser seleccionado y
a una conversión ser iniciada, sin esperar por el periodo de muestreo
y por lo tanto, reduciendo el código.
™Puerto dedicado a ICD/ICSP: estos dispositivos introducen el uso
de pines depuradores y programadores que no están multiplexados
con otras características del microcontrolador. Ofrecida como una
opción al seleccionar el paquete del pic, esta elección permite al
usuario desarrollar aplicaciones intensivas de E/S mientras se
retiene la habilidad para depurar y programar en el circuito.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
DETALLES EN MIEMBROS INDIVIDUALES DE LA
FAMILIA

Los dispositivos en la familia PIC18F2455/2550/4455/4550 están


disponibles en paquetes de 28 pines y 40/44 pines.

Los dispositivos están diferenciados unos de otros de 6 maneras:

1. Memoria Flash de programa (24 Kbytes para PIC18FX455


devices, 32Kbytes para PIC18FX550).
2. Canales A/D (10 para dispositivos de 28 pines , 13 para
dispositivos de 40/44 pines.
3. Puertos de E/S (3 puertos bidireccionales y 1 solo puerto de
entrada para dispositivos de 28 pines, 5 puertos
bidireccionales en dispositivos de 40/44 pines.
4. Implementación de CCP y CCP mejorado (dispositivos de 28
pines tienen 2 módulos CCP estándar, dispositivos de 40/44
pines tienen un módulo CCP estándar y un módulo ECCP.
5. Puerto paralelo-Streaming disponible sólo en los dispositivos
de 40/44 pines.
UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II
Arquitectura de la Familia 18Fxx5x

Como todos los dispositivos Microchip PIC18,los miembros de la


familia PIC18F2455/2550/4455/4550 están disponibles como
dispositivos estándar y también de bajo voltaje. Los dispositivos
estándar con memoria flash mejorada, designados con una “F” en el
numero de parte (tal como PIC18F2550), alojan un rango de operación
VDD de 4.2V a 5.5V. Las partes de bajo voltaje, designadas por “LF”
funcionan sobre un rango extendido de VDD de 2.0V a 5.5V.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Características de los
dispositivos

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Diagrama de bloques de
dispositivos de 40/44 pines.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
Descripción de los pines del 18F4550-4455

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

CONFIGURACIONES DEL OSCILADOR

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Los dispositivos en la familia PIC18FXX5X incorporan un oscilador y


sistema de reloj del microcontrolador diferente a los anteriores
dispositivos. La adición de el módulo USB, con sus requerimientos
únicos para una fuente de reloj estable hace necesario proveer una
fuente de reloj separada que se corresponda con las especificaciones
de baja y alta velocidad del USB.

Para acomodarse a esos requerimientos la familia 18fxx5x incluye una


nueva rama de reloj para proveer la velocidad máxima de reloj, de 48
MHz para la operación del USB. Ya que la misma está conducida por
la fuente de reloj primaria, un sistema adicional de preescaladores y
postescaladores ha sido agregado para acomodarse a un amplio
rango de frecuencias de oscilador.

Otras características del oscilador usadas en los microcontroladores


mejorados PIC18, tales como el bloque de oscilador interno y
conmutación de reloj, se mantienen igual.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

CONTROL DEL OSCILADOR

La operación de el oscilador en la familia 18FXX5X es controlada a


través de dos registros de configuración y dos registros de control.
Los registros de configuración, CONFIG1L y CONFIG1H,
seleccionan el modo del oscilador y las opciones de pre-
escalador/post-escalador del USB. Como bits de configuración,
estos son fijados cuando el dispositivo es programado y se quedan
en esa configuración hasta que el dispositivo es reprogramado.

El registro OSCCON selecciona el modo de reloj activo; este es


principalmente usado para controlar la conmutación del reloj en los
modos de control de potencia.

El registro OSCTUNE es usado para orientar la fuente de frecuencia


INTRC tanto como para seleccionar la fuente del reloj de baja
frecuencia que maneja varias características especiales.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

TIPOS DE OSCILADOR

Los dispositivos PIC18F2455/2550/4455/4550 pueden ser operados


en doce distintos modos de oscilador. En contraste con los
anteriores microprocesadores mejorados PIC18 , cuatro de estos
modos involucran el uso de dos tipos de osciladores a la vez. Los
usuarios pueden programar los bits de configuración
FOSC3:FOSC0 para seleccionar uno de los siguientes modos.

1. XT Cristal/Resonador
2. XTPLL Cristal/Resonador con PLL habilitado
3. HS Cristal de alta velocidad/resonador
4. HSPLL Cristal de alta velocidad/resonador con PLL habilitado
5. EC Reloj externo con salida FOSC/4
6. ECIO Reloj externo con E/S en RA6

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

7. ECPLL Reloj externo con PLL habilitado y salida FOSC/4 en RA6


8. ECPIO Reloj externo con PLL habilitado E/S en RA6
9. INTHS Oscilador interno usado como fuente de reloj del
microcontrolador, oscilador HS usado como fuente de reloj USB
10. INTXT Oscilador interno usado como fuente de reloj del
microcontrolador, oscilador XT usado como fuente de reloj USB
11. INTIO Oscilador interno usado como fuente de reloj del
microcontrolador, oscilador EC como fuente de reloj USB, digital E/S en
RA6
12. INTCKO Oscilador interno usado como fuente de reloj del
microcontrolador, oscilador EC usado como fuente de reloj USB, salida
FOSC/4 en RA6

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

MODOS DEL OSCILADOR Y OPERACIÓN USB

9Debido a los requerimientos únicos del módulo USB, un enfoque


diferente para el reloj de operación es necesario. En los dispositivos
previos, todos los relojes centrales y periféricos eran controlados por una
sola fuente de oscilador; las fuentes usuales eran primarias, secundarias o
el oscilador interno. Con los dispositivos de la familia 18fxx5x el oscilador
primario se vuelve parte de el módulo USB y no puede ser asociado a
ninguna otra fuente de reloj. Por lo tanto, el módulo USB debe ser
temporizado de la fuente de reloj primaria; sin embargo, el núcleo del
microcontrolador y otros periféricos pueden ser temporizados de manera
separada desde el oscilador secundario o osciladores internos como
antes.
9Gracias a los requerimientos de sincronización impuestos por el USB, un
reloj interno de 6 MHz o de 48 MHz es empleado mientras el módulo está
habilitado. Afortunadamente, el microcontrolador y otros periféricos no
requieren de esta velocidad de reloj cuando están usando el oscilador
primario. Hay numerosas opciones para conseguir los requerimientos del
reloj del módulo USB y aun proveer flexibilidad para temporizar el resto
del dispositivo desde la fuente de oscilador primaria.
UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II
Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
OSCILADOR DE CRISTAL/RESONADORES
CERÁMICOS

En los modos de oscilador HS, HSPLL, XT y XTPLL un cristal o resonador


cerámico es conectado al los pines OSC1 y OSC2 para establecer la oscilación.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

ƒUna capacitancia más alta incrementa la estabilidad del


oscilador pero también incrementa el tiempo de inicio.
ƒCuando se opera debajo de 3V VDD, o cuando se usan ciertos
resonadores cerámicos a cualquier voltaje, puede ser necesario
usar el modo HS o cambiar a oscilador de cristal.
ƒYa que cada resonador/cristal tiene sus propias características,
el usuario debería consultarlas para ver los valores apropiados
de componentes externos
ƒ Rs puede ser requerida para evitar sobrecargar capacitores con
especificaciones de nivel bajas.
ƒSiempre hay que verificar el desempeño del oscilador sobre el
VDD y el rango de temperatura que es esperado para la
aplicación.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Un postescalador interno permite al usuario seleccionar una


frecuencia de reloj diferente del cristal o el resonador. La frecuencia
de división es determinada con los bits de configuracion CPUDI. Los
usuarios pueden seleccionar la frecuencia de reloj de el oscilador en
1/2, 1/3 o 1/4 de la frecuencia. Un reloj externo puede ser usado
también cuando el microcontrolador esta en el modo HS. En este
caso, el pin OSC2/CLKO es dejado abierto.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
ENTRADA DE RELOJ EXTERNA

Los modos EC, ECIO, ECPLL y ECPIO requieren una fuente de reloj
externa conectada al pin OSC1. No hay tiempo de despertar del
oscilador requerido después de un Power-on Reset o después de salir
del modo Sleep. En los modos de oscilador EC y ECPLL la frecuencia
del oscilador dividida por 4 está disponible en el pin OSC2. Esta señal
puede ser usada para propósitos de prueba o para sincronizar otra
lógica.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Los modos ECIO y ECPIO funcionan como los modos EC y ECPLL,


excepto que el pin OSC2 se vuelve un pin adicional de E/S. EL pin se
convierte en el bit 6 de PORTA.

El oscilador interno para reducir la frecuencia de reloj en los modos


XT y HS está también disponible en EC y ECIO.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
PLL MULTIPLICADOR DE FRECUENCIA

Los dispositivos de la familia 18Fxx5x incluyen un circuito de lazo


cerrado de fase (PLL). Este esta dado específicamente para
aplicaciones USB con osciladores de baja velocidad y también puede
ser usado como fuente de reloj del microcontrolador.
El PLL es habilitado en los modos HSPLL, XTPLL, ECPLL y ECPIO.
Está diseñado para producir un reloj de referencia fijo de 96 MHz de
una entrada fija de 4MHz. La salida puede ser entonces dividida y
usada por el USB y el reloj central del microcontrolador a la vez. Como
el PLL tiene una frecuencia de entrada y salida fija, hay 8 opciones de
prescalación para igualar la frecuencia de entrada del oscilador con la
frecuencia del PLL.
Hay también una opción de postescalador separado para derivar el
reloj del microcontrolador del PLL. Esto permite al USB, periféricos y
microcontrolador usar la misma entrada del oscilador y aun operar a
diferentes velocidades de reloj. En contraste al postescalador para los
modos XT, HS y EC, las opciones disponibles son 1/2, 1/3, 1/4 y 1/6 de
la salida del PLL.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Los modos HSPLL, ECPLL y ECPIO hacen uso del modo de oscilador
HS para frecuencias superiores a 48MHz. El prescalador divide la
entrada del oscilador por 12 para producir los 4MHz que usa el PLL. El
modo XTPLL puede usar sólo una frecuencia de entrada de 4MHz que
maneja al PLL directamente.

Diagrama de bloques
del PLL en modo HS

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

BLOQUE DE OSCILADOR INTERNO

9Los dispositivos de la familia 18fxx5x incluyen un bloque


oscilador interno que genera dos señales de reloj diferentes; cada
una puede ser usada como la fuente de reloj del microcontrolador.
Si el USB no es usado, el oscilador interno puede eliminar la
necesidad de circuitos externos de oscilación en los pines OSC1
y/o OSC2. La salida principal (INTOSC) es una fuente de reloj de
8MHz que puede ser usada directamente para manejar el reloj del
dispositivo.
9Éste también maneja el postescalador de INTOSC que puede
proveer de un rango de frecuencias de 31KHz a 4MHz. La salida
INTOSC es habilitada cuando una frecuencia de reloj de 125 kHz a
8MHz es seleccionada.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

La otra fuente de reloj es el oscilador interno RC (INTRC) que


provee una salida nominal de 31KHz. INTRC es habilitado si es
seleccionado como fuente de reloj del dispositivo; es también
habilitado automáticamente cuando cualquiera de los siguientes
es habilitado:

• Temporizador Power-up
• Control a prueba de averías del reloj.
• Temporizador Watchdog.
• Inicio de dos velocidades.

La frecuencia de la fuente de reloj (INTOSC directo, INTRC


directo o INTOSC postescalador) es seleccionada configurando
los bits IRCF de el registro OSCCON.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

MODOS DEL OSCILADOR INTERNO

Cuando el oscilador interno es usado como fuente de reloj del


microcontrolador, uno de los otros modos de oscilador (reloj
externo o cristal/resonador externo) debe ser usado como la
fuente de reloj USB. La elección de la fuente de reloj de USB esta
determinada por el modo particular del oscilador interno.
Hay cuatro modos distintos disponibles:

1. INTHS: El reloj USB está dado por el oscilador en modo HS.


2. INTXT: El reloj USB está dado por el oscilador en modo XT.
3. INTCKO: El reloj USB está dado por una señal de entrada
externa en OSC1/CLKI; el pin OSC2/CLKO es una salida de
FOSC/4.
4. INTIO: El reloj USB está dado por una señal de entrada
externa en OSC1/CLKI; el pin OSC2/CLKO funciona como E/S
digital.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

REGISTRO OSCTUNE

9La salida del oscilador interno ha sido calibrada en la fábrica


pero puede ser ajustada en la aplicación del usuario. Esto se hace
escribiendo al registro OSCTUNE. La sensibilidad de
sintonización es constante durante todo el rango de
sintonización. Cuando el registro OSCTUNE es modificado, las
frecuencias del INTOSC y el INTRC comenzarán a desplazarse a
la nueva frecuencia. El reloj INTRC alcanzará la nueva frecuencia
hacia 8 ciclos de reloj (aproximadamente 8*32 µs=256 µs). El reloj
INTOSC se estabilizará hacia 1ms.
9La ejecución del código continúa durante este desplazamiento.
No existe indicación de que el desplazamiento haya ocurrido. El
registro OSCTUNE también contiene el bit INTSRC que permite a
los usuarios seleccionar cual oscilador interno provee la fuente
de reloj cuando la opción de frecuencia de 31KHz es elegida.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

FRECUENCIA DE SALIDA DEL OSCILADOR


INTERNO Y DESVIOS

9El bloque oscilador interno esta calibrado de fábrica para


producir una frecuencia de salida INTOSC de 8MHz, sin embargo,
esta frecuencia puede desviarse mientras VDD o la temperatura
cambian, lo cual puede afectar la operación del controlador en
una variedad de maneras.
9El oscilador de baja frecuencia INTRC opera
independientemente de la fuente INTOSC. Cualquier cambio en
INTOSC a través de voltaje y temperatura no es necesariamente
reflejado con cambios en INTRC y viceversa.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
OSCTUNE: OSCILLATOR TUNING REGISTER

INTSRC TUN4 TUN3 TUN2 TUN1 TUN0

b7 b0
B7: INTSRC: Bit de selección de la fuente de oscilación interna de baja frecuencia.

1 = 31.25 kHz reloj del dispositivo está derivado de INTOSC de 8 MHz (divisor-por-
256 habilitado)
0 = 31 kHz reloj del dispositivo derivado directamente del oscilador interno INTRC.

B4-0 TUN4:TUN0: Bits de entonación de frecuencia.

01111 = Frecuencia máxima.


••
••
00001
00000 = Centro de frecuencia. Modulo oscilador está corriendo con la frecuencia
equilibrada.
11111
••
••
10000 = Frecuencia mínima.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

COMPENSACION PARA DESVIO DE INTOSC

Es posible ajustar la frecuencia INTOSC modificando el valor en el


registro OSCTUNE. Esto no tiene efecto en la frecuencia de la
fuente de reloj INTRC. Sintonizar la fuente INTOSC requiere
conocer cuando hacer el ajuste, en cual dirección debería ser
hecho y en algunos casos, cuán grande es el cambio necesitado.
Cuando se usa el EUSART, por ejemplo, un ajuste puede ser
requerido cuando este comienza a generar errores de formato o
recibe datos con errores mientras está en modo asíncrono.
Los errores de formato indican que la frecuencia de reloj del
dispositivo es muy alta; para ajustarla, hay que decrementar el
valor en OSCTUNE reduciéndola. Por otro lado, los errores en los
datos pueden sugerir que la velocidad del reloj es muy baja, para
compensar, hay que incrementar el OSCTUNE para incrementar la
frecuencia del reloj.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
También es posible verificar la velocidad de reloj del dispositivo vs un reloj de
referencia. Dos temporizadores pueden ser usados: un timer es temporizado
por el reloj periférico, mientras el otro es temporizado por una fuente de
referencia fija, tal como el oscilador del timer1. Ambos timers son borrados
pero el timer temporizado por la referencia genera interrupciones. Cuando una
interrupción ocurre, el timer temporizado internamente es leído y ambos
timers son borrados. Si el valor del timer temporizado internamente es más
grande de lo esperado, entonces el bloque de oscilador interno esta corriendo
muy rápido. Para ajustar esto, se decrementa el valor del registro OSCTUNE.
Finalmente, un módulo CCP puede usar el timer1 (o timer 3) de corrida libre,
temporizado por el bloque oscilador interno y un evento externo conocido
como periodo (ejem, frecuencia de potencia AC). El tiempo de el primero de
los eventos es capturado en los registros CCPRxH:CCPRxL y es guardado
para uso posterior. Cuando el segundo evento cause una captura, el tiempo
del primer evento es restado del tiempo del segundo evento. Ya que el periodo
del evento externo es conocido, la diferencia de tiempo entre eventos puede
ser calculada.
Si la medida de tiempo es mucho más grande que la calculada, el bloque de
oscilador interno esta corriendo muy rápido; para compensar, se decrementa
el registro OSCTUNE. Si la medida es mucho menos que la calculada, el
bloque de oscilador interno está corriendo muy lento, para compensar se
incrementa el OSCTUNE.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

AJUSTES DEL OSCILADOR PARA USB

Cuando el PIC18F4550 es usado para conexión USB, debe tener o un reloj de


6MHz o uno de 48MHz para su operación, dependiendo de si se está usando el
modo de Baja o el de Alta velocidad. Esto puede requerir alguna
premeditación al seleccionar una frecuencia del oscilador y programar el
dispositivo. El rango completo de posibles configuraciones del oscilador es
mostrado en la Tabla 2-3.

OPERACIÓN A BAJA VELOCIDAD


El reloj USB para el modo de baja velocidad se deriva de la cadena del
oscilador primario y no directamente del PLL. Éste es dividido por 4 para
producir el verdadero reloj de 6Mhz. Por esto, el microcontrolador puede solo
usar una frecuencia de reloj de 24MHz cuando el módulo USB está activo y el
la fuente de reloj del controlador está en uno de los modos primarios de
oscilador (XT, HS o EC, con o sin PLL). Esta restricción no aplica si la fuente
de reloj del microcontrolador es el oscilador secundario o el bloque interno de
oscilador.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

USANDO DIFERENTES RELOJES PARA EL


MICROCONTROLADOR Y EL USB

El módulo USB, en cada modo, puede funcionar asincrónicamente


respecto al núcleo del microcontrolador y otros periféricos. Esto
significa que las aplicaciones pueden usar el oscilador primario para
el USB mientras el microcontrolador funciona de una fuente de reloj
separada, a una velocidad más baja. Si es necesario correr la
aplicación entera de sólo una fuente de reloj, la operación a
velocidad máxima ofrece una gran selección de frecuencias de reloj
de el microcontrolador.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Opciones de
configuración del
oscilador para
operación USB

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Opciones de
configuración del
oscilador para
operación USB
(cont).

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

FUENTES DE RELOJ Y CONMUTACIÓN DEL


OSCILADOR

Como los dispositivos de pic18 anteriores, la familia 18fxx5x incluye una


característica que permite que la fuente de reloj sea conmutada del
oscilador primario a un reloj alterno de baja frecuencia. Esta familia
ofrece dos tipos alternos de fuentes de reloj. Cuando una fuente de reloj
alterna es habilitada, los diferentes modos de manejo de potencia están
disponibles. Esencialmente, hay tres fuentes de reloj:
ƒ Oscilador primario
ƒ Osciladores secundarios
ƒ Bloque interno oscilador
El oscilador primario incluye el modo de crystal/resonador externo,
los modos de reloj externo y el bloque de oscilador interno. El modo
particular esta definido por los bits de configuración FOSC3:FOSC0
Los osciladores secundarios son aquellas fuentes externas no
conectadas a los pines OSC1 o OSC2. Estas fuentes pueden
continuar operando incluso después de que el controlador es
colocado en un modo de potencia controlada.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Los dispositivos de esta familia ofrecen el oscilador del timer1


como uno secundario. Este oscilador, en todos los modos de
manejo de potencia, es frecuentemente el tiempo base para
funciones como un reloj de tiempo real. Más frecuentemente, un
cristal de 32.768 kHz es conectado entre los pines
RC0/T1OSO/T13CKI y RC1/T1OSI/UOE, como los modos XT y HS,
cargando capacitares que están también conectados de cada pin a
tierra.

Además de ser una fuente de reloj primaria, el bloque de oscilador


interno está disponible como una fuente de reloj para modos de
ahorro de potencia. La fuente INTRC es también usada como fuente
de reloj para varias características especiales, como el perro
guardián y el monitor a prueba de averías.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
REGISTRO DE CONTROL DEL OSCILADOR

El registro OSCCON controla varios aspectos de la operación del reloj del


dispositivo tanto en modo normal como en modos de ahorro de potencia.
Para la selección del reloj del sistema se usan los bits SCS1:SCS0. Las
fuentes de reloj disponible son el reloj primario (definido por los bits de
configuración FOSC3:FOSC0), el reloj secundario (oscilador del timer1) y el
bloque del oscilador interno. La fuente de reloj cambia inmediatamente
después de que algún bit es escrito, siguiendo un breve intervalo de
transición del reloj. Los bits SCS son borrados en todas las formas de reset

Los bits de selección de la frecuencia de oscilador interno, IRCF2:IRCF0,


seleccionan la frecuencia de salida del bloque oscilador interno para
manejar el reloj del dispositivo. Las elecciones son la fuente INTRC, la
fuente INTOSC o una de las frecuencias derivadas del postescalador de
INTOSC. Si el bloque oscilador interno está alimentando el reloj del
dispositivo, cambiando los estados de esos bits se cambiará
inmediatamente la salida del oscilador interno. En los Resets del
dispositivo, la salida establecida de frecuencia del oscilador interno se
coloca a 1MHz.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Cuando una frecuencia de salida de 31KHz es seleccionada (IRCF2:IRCF0 = 000), el


usuario puede seleccionar cual oscilador interno actúa como la fuente. Esto se hace
con el bit INTSRC en el registro OSCTUNE. Seteando estos bits se selecciona a
INTOSC como un reloj de 31.25KHz habilitando la salida dividida por 256 de el
postescalador de INTOSC. Borrando INTSRC se selecciona INTRC (31KHz) como la
fuente de reloj. Esta opción permite al usuario elegir el sintonizable y más preciso
INTOSC como una fuente de reloj, mientras se mantiene el ahorro de energía con
una muy baja velocidad de reloj.

A pesar del seteo de INTSRC, INTRC siempre mantiene la fuente de reloj para
características como el perro guardián y el monitor a prueba de fallas. Los bits
OSTS, IOFS y T1RUN indicant cuál fuente esta actualmente proveyendo el reloj del
dispositivo. El bit OSTS indica que el oscilador temporizador de inicio ha finalizado
y la fuente de reloj primaria está dando el reloj para el dispositivo en modos de reloj
primario. El bit IOFS indica cuando el bloque de oscilador interno se ha estabilizado
y esta proveyendo el reloj al dispositivo en modo RC. El bit T1RUN indica cuando el
timer1 esta suministrando el reloj del dispositivo en modos de reloj secundario. En
modos de manejo de potencia, sólo uno de esos tres bits será seteado en todo
momento. Si ninguno de esos bits está seteado, el INTRC esta suministrando el reloj
o el bloque oscilador interno ha empezado apenas y no está estable todavía. El bit
IDLEN determina si el dispositivo va a modo sleep, o uno de los modos Idle, cuando
la instrucción SLEEP es ejecutada.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

TRANSICIONES EN EL OSCILADOR

Dispositivos PIC18F2455/2550/4455/4550 contienen circuitería


para prevenir fallos en el sistema de reloj cuando se cambia entre
fuentes. Una corta pausa ocurre en el reloj del dispositivo
durante la conmutación de la fuente de reloj. La longitud de esa
pausa es la suma de dos ciclos de la vieja fuente de reloj y tres a
cuatro ciclos de la nueva fuente. Esta formula asume que la
nueva fuente de reloj es estable.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
OSCCON: OSCILLATOR CONTROL REGISTER

IDLEN IRCF2 IRCF1 IRCF0 OSTS IOFS SCS1 SCS0

b7 b0
B7 IDLEN: Bit de habilitación de Idle

1 = Dispositivo entra a modo Idle con una instrucción SLEEP


0 = Dispositivo entra a modo sleep con una instrucción SLEEP

B6-4 IRCF2:IRCF0: Bits de selección de frecuencia del oscilador interno

111 = 8 MHz (INTOSC maneja reloj directamente)


110 = 4 MHz
101 = 2 MHz
100 = 1 MHz
011 = 500 kHz
010 = 250 kHz
001 = 125 kHz
000 = 31 kHz (de INTOSC/256 o INTRC directamente)

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
OSCCON: OSCILLATOR CONTROL REGISTER

IDLEN IRCF2 IRCF1 IRCF0 OSTS IOFS SCS1 SCS0

b7 b0
B3 OSTS: Bit de estado del Oscillator Start-up Time-out

1 = El Oscillator Start-up Timer time-out a expirado ; el oscilador


primario está funcionando
0 = El Oscillator Start-up Timer time-out está corriendo; oscilador
primario no está listo

B2 IOFS: INTOSC bit de frecuencia estable

1 = INTOSC frecuencia es estable


0 = INTOSC frecuencia no es estable

B1-0 SCS1:SCS0: Selección del reloj de sistema

1x = Oscilador interno
01 = Oscilador del Timer1
00 = Oscilador Primario
UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II
Arquitectura de la Familia 18Fxx5x

REGISTRO CONFIG1L: Configuración de registro 1 bajo (300000h)

USBDIV CPUDIV1 CPUDIV0 PLLDIV2 PLLDIV1 PLLDIV0

b7 b0
BIT 4-3: CPUDIV1:CPUDIV0 : Bit de selección del post-escalador del reloj
del sistema

¾Cuando los modos de oscilación son XT,HS,EC y ECIO:

11: Oscilador primario dividido por 4


10: Oscilador primario dividido por 3
01: Oscilador primario dividido por 2
00: Oscilador primario directamente de la fuente de reloj (sin
post-escalador)

¾Cuando los modos de oscilcion son XTPLL,HSPLL,ECPLL y ECPIO

11: Oscilador de 96 MHz dividido por 6


10: Oscilador de 96 MHz dividido por 4
01: Oscilador de 96 MHz dividido por 3
00: Oscilador de 96 MHz dividido por 2

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

REGISTRO CONFIG1L: Configuración de registro 1 bajo (300000h)

USBDIV CPUDIV1 CPUDIV0 PLLDIV2 PLLDIV1 PLLDIV0

b7 b0

BIT 2-0: PLLDIV2:PLLDIV0: Bits de selección del preescalador del PLL

111: Dividido por 12 (Salida del oscilador de 48 MHz)


110: Dividido por 10 (Salida del oscilador de 40 Mhz)
101: Dividido por 6 (Salida del oscilador de 24 MHz)
100: Dividido por 5 (Salida del oscilador de 20MHz)
011: Dividido por 4 (Salida del oscilador de 16 MHz)
010: Dividido por 3 (Salida del oscilador de 12 MHz)
001: Dividido por 2 (Salida del oscilador de 8 MHz)
000: Sin preescalador (Salida del oscilador de 4 MHz, derivado directamente del PLL)

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
REGISTRO CONFIG1H: CONFIGURACION DE REGISTRO 1 ALTO (300001h)

IESO FCMEN FOSC3 FOSC2 FOSC1 FOSC0

b7 b0

BIT 7: IESO: Bit de selección del switch del oscilador interno/externo


1: Switch del oscilador interno/externo habilitado
0: Switch del oscilador interno/externo deshabilitado

BIT 6: FCMEN: Bit de habilitación del Fail-State Clock Monitor


1: Fail-State Clock Monitor habilitado
0: Fail-State Clock Monitor deshabilitado

BIT 5:4 : No implementados

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x
REGISTRO CONFIG1H: CONFIGURACION DE REGISTRO 1 ALTO (300001h)

IESO FCMEN FOSC3 FOSC2 FOSC1 FOSC0

b7 b0

BIT 3:0 FOSC3:FOSC0 : Bit de selección del oscilador

111X: Oscilador HS con PLL habilitado (HSPLL)


110X: Oscilador HS
1011: Oscilador interno, oscilador HS usado por USB (INTHS)
1010: Oscilador interno, oscilador XT usado por USB (INTXT)
1001: Oscilador interno, función en RA6, EC de CLKO usada por USB (INTCKO)
1000: Oscilador interno, función en el pin RA6, EC usada por USB (INTIO)
0111: Oscilador EC con PLL habilitado, función de CLKO en RA6 (ECPLL)
0110: Oscilador EC con PLL habilitado, función del puerto en RA6 (ECPIO)
0101: Oscilador EC, función CLAK0 en RA6 (EC)
0100: Oscilador EC, función del puerto en RA6 (ECIO)
001X: Oscilador XT con PLL habilitado (XTPLL)
000X: Oscilador XT (XT)

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

EFECTOS DE LOS MODOS DE AHORRO DE


POTENCIA EN LAS DIFERENTES FUENTES DE
RELOJ

Cuando el modo PRI_IDLE es seleccionado, el oscilador primario


designado continúa funcionando sin interrupción. Para todos los
modos de ahorro de potencia, el oscilador usando el pin OSC1 está
deshabilitado. A menos que el módulo USB esté habilitado, el pin
OSC1 (y el pin OSC2 si es usado por el oscilador) dejarán de oscilar.
En modos de reloj secundario (SEC_RUN y SEC_IDLE), el oscilador
del timer1 está operando y provee el reloj del dispositivo. El
oscilador del timer1 puede también funcionar en modos de ahorro
de potencia si se requiere para temporizar el timer1 o el timer3.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

En modos de oscilador interno (RC_RUN y RC_IDLE), el bloque de


oscilador interno suministra la fuente de reloj del dispositivo. La salida
del INTRC de 31KHz puede ser usada directamente para suministrar el
reloj y puede ser habilitada para mantener varias características
especiales a pesar del modo de ahorro de potencia.
La salida de INTOSC a 8 MHz puede ser usada directamente para
temporizar el dispositivo o puede ser divida por el postescalador. Esta
salida es deshabilitada si el reloj se suministra directamente de la salida
de INTRC.
A pesar de la selección de un modo Idle o de un modo normal, la fuente
de reloj del USB continuará operando. Si el dispositivo está operando
con un oscilador basado en cristal/resonador, el oscilador continuará
temporizando el módulo USB. El núcleo y otros módulos cambiarán a la
nueva fuente de reloj.
Si el modo sleep es seleccionado, todas las fuentes de reloj son
detenidas. Ya que todas las corrientes de conmutación de los
transistores han sido interrumpidas, el modo sleep alcanza el más bajo
consumo de corriente del dispositivo (sólo corrientes de fuga).

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

El modo sleep no debería ser invocado nunca mientras el módulo


USB esta operando y conectado. La única excepción es cuando el
dispositivo se le ha dado un comando de suspensión sobre el
USB. Una vez el módulo ha suspendido su operación y se ha
desplazado a un estado de baja potencia, el microcontrolador
puede entrar seguramente en el modo sleep.
Habilitando cualquier otra característica en el chip que operará
durante el modo Sleep se incrementará el consumo de corriente.
El INTRC es requerido para mantener la operación del WDT (perro
guardián). El oscilador del timer1 puede operar para mantener un
reloj de tiempo real. Otras características pueden estar operando
sin requerir una fuente de reloj del dispositivo (ejem, el MSSP
esclavo, el PSP, pins de interrupciones y otros).

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

DEMORAS DE ENCENDIDO

Las demoras de encendido son controladas por dos temporizadores de tal


manera que no se requiere circuitería externa para reset en la mayoría de las
aplicaciones. Los retardos aseguran que el dispositivo es mantenido en Reset
hasta que la fuente de energía sea estable en circunstancias normales y la fuente
de reloj primaria esté operando y estable.
El primer temporizador es el de encendido o Power-up Timer (PWRT), el cual
suministra una demora fija en el encendido. Se habilita limpiando el bit de
configuración PWRTEN. El segundo temporizador es el oscilador de inicio
Oscillator Start-up (OST), previsto para mantener al chip en reset hasta que el
oscilador de cristal esté estable (modos XT y HS). El OST hace esto contando
1024 ciclos de oscilación antes de permitir al oscilador temporizar el dispositivo.
Cuando el modo HSPLL es seleccionado, el dispositivo se mantiene en reset por
2ms adicionales a la demora del modo HS, entonces el PLL puede engancharse a
la frecuencia de reloj entrante.
Hay un intervalo de demora, TCSD, siguiendo al POR, mientras el controlador se
prepara para ejecutar instrucciones. Esta demora corre concurridamente con
cualquier otra demora. Esta puede ser la unica demora que ocurre cuando
cualquiera de los osciladores EC o internos es usado como fuente de reloj
primaria.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

Estados de los pines OSC1 y OSC2 durante el modo Sleep.

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II


Arquitectura de la Familia 18Fxx5x

UNEXPO – Pto. Ordaz. Prof.Rafael Surga MICROPROCESADORES II

Vous aimerez peut-être aussi