Arquitectura de microcontroladores
modernos (PIC18F4550)
La arquitectura del PIC18F4550 es una arquitectura tipo Harvard, ya que consta de diferentes buses para acceder a la memoria de programa
Estonos da la opción de acceder a la memoria de datos para ejecutar una instrucción, mientras se lee de la memoria de programa la siguiente instrucción
ORGANIZACIÓN DE LA MEMORIA
La memoria del PIC se divide en
Memoria RAM de datos
Cuenta con una memoria de RAM de datos
de 2048 bytes, (8 de los bancos de 256
bytes). También cuenta con 160 bytes
dedicados a los SFR's(Registros de función
especial) los cuales se encuentran en la
parte alta del banco 15. La memoria RAM de
datos se compone por GPR's o registros de
propósito general y SFR's o registros de
función especial. Es la encargada de
almacenar datos de forma temporal
durante la ejecución del programa.
Memoria de Programa
El Pic 18F4550 cuenta
con una memoria de
programa de 32K
(32768 bytes). Es una
memoria tipo Flash.
Esta memoria es la que
se encarga de
almacenar las
instrucciones,
constantes y datos. La
podemos escribir o
leer con un
programador externo o
en ejecución.
Memoria EEPROM
Es una memoria no
volátil en la que se
almacenan los datos en
ausencia de tensión.
Cuatro SFR son usados
para la escritura y lectura
de la EEPROM: EECON1 y
EECON2(controlan el
acceso a los datos de la
memoria EEPROM).
EEDATA y EEADR(ordenan
la escritura/lectura y la
dirección).
La pila y la memoria de configuración
La pila, es un bloque de memoria
RAM independiente de 31
palabras de 21 bits en la cual se
almacena de una forma temporal
el valor del Contador de
Programa(Program Counter)
cuando se produce una llamada a
subrutina o interrupción.
La memoria de configuración, es un bloque de
memoria situado a partir de la posición
30000H en la memoria de programa donde se
almacenan: Bits de configuración. Contenidos
en 12 bytes de memoria flash donde se
almacenan varias opciones de configuración:
opciones del oscilador, reset, watchdog,
circuitería de depuración y programación...
Estos bits pueden ser modificados. Registros
de identificación. Contienen información del
modelo y revisión del dispositivo. Son
registros de lectura
El Bus de memoria de programa está formado por 21 líneas de dirección, 16 líneas para instrucciones y 8 líneas para datos
El Bus de memoria de datos está compuesto por 12 líneas de dirección y 8 líneas de datos
Dentro del datasheet del dispositivo podemos encontrar un diagrama de bloques que nos explica la
arquitectura interna que tiene el Pic 18F4550
Principales Características del PIC18F4550
Microcontrolador con módulo USB 2.0. Soporta Low speed 1.5Mb/s y full speed 12Mb/s.
1kB de memoria de doble acceso vía USB 35 pines I/O disponibles
Memoria de programa flash de 32 kB
RAM de 2048 Bytes
EEPROM de datos de 256 Bytes
Velocidad de la CPU 12
MIPS
Oscilador externo de dos modos hasta 48 MHz
Oscilador interno selecionable entre 8 frecuencias
desde 31kHz hasta 8MHz
Oscilador secundario con Timer 1 de hasta 32kHz
Opciones de oscilador dual permiten que la
velocidad de la CPU y del módulo USB sean
diferentes ADC de 10 bits y 13 canales
Tecnología nanoWatt que brinda características y funciones
de bajo consumo y ahorro de energía
Voltaje de operación 4.2V a 5.5V 4
Timer(desde Timer0 a Timer3).
Uno de 8 bits y 3 de 16 bits
2 módulos de captura/comparación/PWM
EUSART, SPP, SPI, I²C
20 fuentes de interrupciones (3
externas)
Resistencias de pull-ups en el puerto B programables
Función del pin MCLR
opcional
Brown-out Reset de valor programable
Power-on
Reset Power-up
Timer y Oscillator Start-up
Soporta 100,000 ciclos de borrado/escritura en memoria flash
Soporta 1,000,000 ciclos de
borrado/escritura en memoria EEPROM