Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

PIC 18F4550

No description
by

Gábriel Morales Sandoval

on 10 September 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of PIC 18F4550

Características
Fundamentales
Características
Diagrama Interno
CAPACIDADES DEL MODULO OSCILADOR
PLL Prescaler Selection:

La función de este Fuse es dividir la frecuencia de entrada del Oscilador (OS1 y OS2). Esto mediante la configuración de PLLDIV el cual funciona como un multiplexor, ejemplo si ponemos un cristal de 20MHz y configuramos “Divide by 5 (20 MHz oscillator input)” estaremos dividiendo FOSC entre 5 por lo que tendremos 4MHz a la salida del MUX.

La finalidad, es obtener siempre 4 Mhz de frecuencia que son necesarios para hacer funcionar el siguiente circuito que genera a partir de 4 MHz de frecuencia una salida de 96 MHz, esta señal entra al “PLL Postcaler” que con su división de /1,/2,/3,/4 podemos obtener frecuencias de 48,32,24,16 MHz. Aquí llegamos a un punto que puede ser muy útil para nosotros, ya que a partir de un cristal de 4 MHz u otro valor podemos obtener una frecuencia de hasta 48 MHz de reloj de trabajo.





PIC 18F4550
-Arquitectura RISC avanzada Harvar: 16 bit con 8 bit de datos.
-77 Instrucciones
-64K bytes de programa (hasta 2Mbytes de ROMless)
-Multiplicador Hardware 8x8
-Hasta 3968 bytes de RAM y 1kbytes de EEPROM
-Frecuencia máxima de reloj 40Mhz.
-Pila de 32 niveles.
-Múltiples fuentes de interrupción.
-Periféricos de comunicación avanzados (CAN y USB)
Osciladores

1. XT Crystal / Resonador
2. SA alta velocidad Crystal / Resonador
3. HSPLL de alta velocidad Crystal / Resonador con PLL Activado
4. CE reloj externo con FOSC / 4 de salida
5. ECIO reloj externo con I / O en RA6
6. ECPLL Reloj externo con PLL activado y FOSC / 4 Salida en RA6
7. ECPIO Reloj externo con PLL Enabled, I / O en RA6
8. Inths oscilador interno del microcontrolador utilizado como fuente de reloj, SA
Oscilador utilizado como USB Fuente de reloj
9. intio oscilador interno del microcontrolador utilizado como fuente de reloj,
EC oscilador usado como fuente de reloj USB, E / S digital en RA6
10. INTCKO oscilador interno del microcontrolador utilizado como fuente de reloj
EC oscilador usado como fuente de reloj USB, FOSC / 4 Salida en RA6

System Clock Postscaler Selection:

Este tiene dos funciones, uno ya tocamos en el fuse de arriba y es que este fuse es el encargado de hacer la división de frecuencia tanto de la señal de entrada de 96 MHz o del cristal u oscilador de entrada.

Veamos la configuración con el 96 MHz PLL:

Dado que en la aparte de PLL Prescaler Selection tuvimos obligatoriamente que configurar la división de nuestra entrada de reloj, para así poder generar 4 Mhz siempre para poder luego convertirlos a 96 MHz de frecuencia, lamentablemente no podemos usar esta frecuencia como de trabajo, sin embargo podemos dividirla para así obtener frecuencias de reloj, esto es útil por dos cosas, una ya que para poder usar en su momento el modulo USB que trae integrado el microcontrolador es necesario tener una señal de 48 MHz de reloj. La segunda podríamos decir que es la misma solo que explicare mejor, en su momento si no deseamos usar el modulo USB pero deseamos que con nuestro oscilador de 4 MHz o diferente obtener una señal de hasta 48 MHz este es nuestro registro a configurar.

Configuración para el Oscilador Source:

Este mismo Fuse tiene un efecto en su momento en nuestra Fuente de Oscilación y es que podemos dividirla también.

USB Clock Selection (used in Full-Speed USB mode only;UCFG):

Este fuse configura de donde proviene la velocidad de reloj para el Modulo USB.

USB clock source comes from the 96 MHz PLL divided by 2.

Configuras que los 48 MHz que se necesitan para el modulo USB sean proporcionados de la división de 96 MHz divididos por dos que son proporcionados por el Postcalador.

USB clock source comes directly from the primary oscillator block with no postcale.

En este caso los 48 MHz serán proporcionados desde el oscilador primario.


Oscillator Selection:

Aquí se escoge el tipo de oscilador que se usara, para mayor información leer la sección 2.2 Oscillator Types del datasheet.

Sin embargo a causa de las explicación de los 3 fuses anteriores me tomare el tiempo de explicar 2 opciones. Nótese que entre la lista de opciones que posee el Microcontrolador existen cuatro que Un papel importante y son:

HS oscillator, PLL enabled (HSPLL)

HS oscillator (HS)

XT oscillator, PLL enabled (XTPLL)

XT oscillator (XT)

Osciladores de 4 MHz o menores son del tipo XT así que deberán escoger esa configuración.

Osciladores a mayores frecuencias son del tipo HS.


La fuente de reloj primaria y la del USB son independientes y es que podemos hacer que el microcontrolador funciones directamente con la fuente primaria y el USB con los 48 MHz proporcionados por el Postcaler o en su caso los dos a 48 MHz.

Fail - Safe Clock Monitor:

Como indica su nombre, el monitor para detectar un fallo de la fuente de reloj (Fail-Safe Clock Monitor - FSCM) monitorea el funcionamiento externo y permite al microcontrolador continuar con la ejecución de programa en caso de que el oscilador falle por alguna razón. En tal caso, el oscilador interno toma su función.

El monitor detecta un fallo al comparar las fuentes de reloj interno y externo. Si los pulsos del oscilador externo tardan más de 2mS en llegar, la fuente de reloj será automáticamente cambiada por la interna. Así, el oscilador interno sigue funcionando controlado por los bits del registro OSCCON. Si el bit OSFIE del registro PIE2 está a uno, se producirá una interrupción.

El reloj interno sigue siendo la fuente del reloj del sistema hasta que el dispositivo reinicie con éxito el oscilador externo que vuelve a ser la fuente de reloj del sistema. Este módulo está habilitado al cambiar la palabra de configuración justamente antes de que se inicie el proceso de programar el chip. Esta vez, esto se realiza al seleccionar la opción Fail-Safe Clock Monitor.

Internal/External Oscillator Schitchover

El modo de cambio automático de velocidad de reloj se utiliza para reducir el consumo de corriente cuando el microcontrolador funciona en modo de reposo.

Cuando se configura en modo LP, XT o HS, el oscilador externo se desactiva al pasar a modo de reposo para reducir el consumo de corriente total del dispositivo.


CONFIGURACIONES
Power-up Timer

Este temporizador emplea el oscilador INTRC como fuente de reloj. Proporciona un retardo fijo de 62 ms durante el encendido. Esta diseñado para mantener al PIC en reset mientras la fuente de alimentacion se estabiliza y puede ser habilitado o deshabilitado

Brown-out Reset

El Brown-out Reset es un sistema muy simple que hace que el PIC entre en modo Reset, no hace nada, si la alimentación VCC baja de un cierto valor que es configurable. Se configura activándolo en el registro correspondiente y seleccionando el nivel de voltaje por debajo del cual queremos que el PIC permanezca reseteado. Lo suyo es trabajar en conjunción con el Power-up Timer que debidamente configurado lo que hace es "liberar" el Reset tras un tiempo programado despues de haberse estabilizado el PIC.

USB Voltege Regulator

Este habilita o deshabilita la utilización del regulador interno del Vbus para el USB. Ver 17.2.2.8 para mayor detalle.


Watchdog Timer

El "Watch Dog Timer" o "Temporizador Perro guardián" lo que hace fundamentalmente es resetear el micro tras un periodo de tiempo determinado. En el caso del WDT en lugar de saltar una interrupción se genera un reset automático en el momento de producirse dicho desbordamiento. Pero evidentemente en condiciones normales, nuestro micro funcionando correctamente, no debería producirse dicho reset automático. Su aplicación es muy util cuando se diseña aplicaciones que dependen de recepcion de valores por comunicación externa.

PORTB A/D:

Esta funcion habilita o no la conversion Analogica-Digital. Si uno requiere hacerlo manualmente debe de configurar los registros ADCON o ANSEL correspondientes en el MCU. Mas informacion leer lasección 21.0 de la hoja de datos que trata de la conversion A/D.

MCLR Pin:


Este fuse es para habilitar o no la función de Reset Maestro Externo. En ocasiones y como es este el caso, la función de Reset esta en un bit de un puerto que puede ser de I/O funtion. En el 18FX550 está ubicado en el RE3. En ocasiones por cuestiones de uso del puerto o por ahorro de espacio en placa se desactiva el MCLR y desde este fuse podemos hacerlo.

Background Debug:

Este fuse es dependiente si habilitamos o usaremos la funcion de In-Circuit Debug. Los restantes fuses como el Code Protection (Block 0 -3) y los siguientes, tienen la finalidad de proteger nuestro codigo de lecturas o escrituras por medio de debugers, esto es util cuando no deseamos que alguien pueda obtener nuestro codigo fuente si es que estamos comercializando el circuito como ejemplo o por otras circunstancias.
Full transcript