Microcontroladores PIC18F4550

Description

Sistemas Embebidos en Electrónica Industrial - Actividad 2.4
LUIS ENRIQUE RODRIGUEZ GONZALEZ
Mind Map by LUIS ENRIQUE RODRIGUEZ GONZALEZ, updated 3 months ago More Less
Hector Elizarraraz
Created by Hector Elizarraraz over 1 year ago
LUIS ENRIQUE RODRIGUEZ GONZALEZ
Copied by LUIS ENRIQUE RODRIGUEZ GONZALEZ 3 months ago
2
0

Resource summary

Microcontroladores PIC18F4550

Annotations:

  • Un microcontrolador es la unidad de computación básica dentro de los dispositivos electrónicos inteligentes, como las lavadoras y los termostatos. Es una computadora muy pequeña con sus propios sistemas de RAM, ROM, puertos de I/O, Timers, etc., todos integrados en un solo chip. Puede procesar señales digitales y responder a las entradas del usuario, pero su capacidad de computación es limitada.
  1. Arquitectura del microcontrolador
    1. Harvard

      Annotations:

      • La arquitectura Harvard es empleada en el diseño de los microcontroladores ya que permite separar la memoria de instrucciones (o programa) del espacio de datos (periféricos).
      1. Bus de datos

        Annotations:

        • Este bus conecta todos los periféricos del microcontrolador para la adquisición y envió de datos.
        1. Bus de instrucciones

          Annotations:

          • Este bus conecta la CPU con la memoria de instrucciones y demás elementos asociados con el procesamiento de instrucciones del microcontrolador.
        2. Capacidad de los microcontroladoreas

          Annotations:

          • 8 bits 16 bits 32 bits
          1. Periferia embebida

            Annotations:

            •    La periferia embebida se refiere a los dispositivos que el microcontrolador contiene en el mismo chip en el que se encuentra la CPU. Dependiendo del tipo y modelo de microcontrolador es el tipo de periféricos que trae embebido, siendo los más básicos los puertos de entradas y salidas (E/S), timers (temporizadores), contadores y puertos de comunicación serial.   
          2. Microcontrolador PIC18F4550
            1. ¿Quién lo fabrica?

              Annotations:

              • El PIC18F4550 es fabricado por Microchip y es parte de la familia PIC18, los cuales son microcontroladores de 8 bits.
              1. Herramienta de programación

                Annotations:

                • MPLAB X IDE y el compilador XC8   
                1. Configuración del reloj

                  Annotations:

                  • El PIC18F4550 puede utilizar varias fuentes de reloj, incluido el oscilador interno (INTOSC), cristales externos y entradas de reloj externas. Para seleccionar una fuente de reloj, debe configurar los bits de configuración en el microcontrolador.  
                  1. Configuración del reloj externo

                    Annotations:

                    • Si se usa un reloj externo este pasa por un preescalador (PLL Prescaler) con el fin de que entre una señal de 4 MHz al PLL (el PLL Prescaler puede dividir la frecuencia de entrada entre diferentes valores, esto depende de cómo se configure el multiplexor). Posteriormente pasa a un postescalador (PLL Postscaler) donde se vuelve a dividir el valor en un multiplexor configurable. 
                    1. Configuration Bits

                      Annotations:

                      • Para llegar a donde se configuran los PLL es necesario ir a la barra de herramientas > “Window” > “Target Memory Views” > "Configuration Bits"   
                      1. Configurar PLL Prescaler and Postscaler

                        Annotations:

                        • En 1 se configura el PLL Prescaler, en este caso como el reloj externo que se usa es de 4 MHz, se deja la opción 1, si fuera diferente se debe de seleccionar la opción que permita que a la salida la frecuencia sea de 4 MHz. En 2 se configura el PLL Postscaler, en este caso igual se deja la opción OSC1_PLL2. En 3 es para seleccionar el tipo de reloj a usar.
                        1. Configurar el tipo de reloj a usar

                          Annotations:

                          •  Se selecciona 1 y se despliega una lista con las posibles opciones, y en este caso al ser un reloj externo se selecciona la opción marcada en 2. Vemos que al hacer la selección se nos cambia la descripción del tipo de reloj que se está usando.  
                          1. Generar código

                            Annotations:

                            • Una vez que este configurado el reloj, se presiona en “Generate Source Code to Output” y se genera el código de la configuración del reloj, tal como se aprecia en la imagen. Este código se puede pegar directamente en el programa principal o puede ser guardado como una librería para tener una programación más ordenada.   
                            1. Crear librería ".h"

                              Annotations:

                              • Para crear la librería hay que ir a la opción de “Header Files” > “New” > “C Header File” y crear el archivo con el nombre que se requiera, en este caso es “Configuración_reloj.h”
                              1. Insertar librería en programa principal

                                Annotations:

                                •    Una vez creada la librería hay que ir al programa principal, en este caso se llama “Configuración.c” y hay que llamar la librería con el comando #include, tal como se aprecia en 3.   
                  2. Configuración de puertos E/S

                    Annotations:

                    • La configuración de los puertos es una de las tareas más importantes a realizar, ya que estos se deben de configurar antes de que puedan ejecutar alguna función. Los puertos E/S deben de configurarse para poder definirlos como entradas o salidas digitales, o como entradas analógicas. Cabe mencionar que en cada puerto se pueden combinar entradas y salidas digitales, así como entradas analógicas.
                    1. ADCON

                      Annotations:

                      • Empleado para configurar el puerto como E/S digitales o entradas analógicas. El valor debe de escribirse en hexadecimal o binario.
                      1. TRIS

                        Annotations:

                        • Configura los puertos como entradas o salidas.  Salidas = 0x00 Entradas = 0x01 Se puede configurar todo un puerto (TRISA por ejemplo), o cada una de los pines de manera individual (TRISAbits.XX)
                        1. PORT

                          Annotations:

                          • Se emplea para escribir el estado deseado en algunos de los pines de los puertos de salida.
                          1. Lectura de datos

                            Annotations:

                            • Para la lectura de datos solo es necesario configurar el puerto o pines del puerto como entradas digitales y posteriormente condicionar que se quiere hacer en el programa cuando ese puerto obtiene un cierto valor.
                        2. Perifericos
                          1. Puertos de entradas y salidas (E/S)

                            Annotations:

                            • Cuenta con 5 puertos de E/S, los cuales son Puerto A, Puerto B, Puerto C, Puerto D y Puerto E.
                            1. Comparador

                              Annotations:

                              • Cuenta con 2 comparadores, los cuales son del tipo analógicos duales con multiplexación de entradas.
                              1. Timers

                                Annotations:

                                • Cuenta con 4 timers, del Timer0 al Timer3
                                1. Convertidor analógico a digital (ADC)

                                  Annotations:

                                  • Cuenta con 13 canales
                                  1. Capture / Compare / PWM (CCP)

                                    Annotations:

                                    • Cuenta con un puerto CCP y con un puerto mejorado CCP (ECCP).
                                    1. Comunicación
                                      1. USB

                                        Annotations:

                                        • Cuenta con 1 puerto USB
                                        1. Módulos de comunicación serial
                                          1. EUSART

                                            Annotations:

                                            • Cuenta con 1 Universal Synchronous and Asynchronous serial Receiver and Transmitter (adaptador de comunicación serie síncrona y asíncrona)
                                            1. MSSP

                                              Annotations:

                                              • Cuenta con 1 Master Synchronous Serial Port (Puerto serie síncrono maestro) el cual puede ser configurado de dos maneras.
                                              1. SPI

                                                Annotations:

                                                • Serial Peripheral Interface (Interfaz Periférica Serial)
                                                1. I2C

                                                  Annotations:

                                                  • Inter-Integrated Circuit (interfaz serie de dos hilos)
                                            2. Memoria EEPROM

                                              Annotations:

                                              • Cuenta con una EEPROM de 256 bytes, con  100,000 ciclos de escritura / lectura.
                                              1. BOR

                                                Annotations:

                                                • Brown Out Reset, es un reset que se activa cuando el voltaje Vdd cae por debajo de un valor preestablecido. 
                                                1. HLVD

                                                  Annotations:

                                                  • High / Low-Voltage Detect, es un módulo programable que monitorea el voltaje Vdd y detecta cuando hay una caída de voltaje o sobre voltaje en base a los límites programados. Se emplea en aplicaciones donde se requiere monitorear la batería del microcontrolador.
                                                2. Diagrama de bloques de la construcción del microcontrolador
                                                  1. Diseños del microcontrolador

                                                    Annotations:

                                                    • Normalmente los microcontroladores presentan diferentes diseños, esto con la finalidad de darle al diseñador de aplicaciones una versatilidad en el diseño y tamaño del equipo o sistema en donde los empleará.
                                                  2. Elementos
                                                    1. Memoria de datos

                                                      Annotations:

                                                      • La memoria de datos, o RAM, Es una memoria volátil en la cual se guardan las variables y datos que el microcontrolador recibe y produce durante la ejecución del programa.
                                                      1. RAM
                                                        1. EEPROM
                                                        2. Perifericos

                                                          Annotations:

                                                          • Los periféricos más comunes se mencionan a continuación.
                                                          1. Puertos de entradas y salidas (E/S)

                                                            Annotations:

                                                            • La principal utilidad de los puertos de E/S es lograr comunicar al computador interno (CPU) del microcontrolador con los dispositivos exteriores para lograr el control de la aplicación en la cual se está empleando.
                                                            1. Timers (Temporizadores)

                                                              Annotations:

                                                              • Se emplean para controlar periodos de tiempo y para llevar la cuenta de acontecimientos que suceden en el interior.
                                                              1. Módulos Capture / Compare / PWM

                                                                Annotations:

                                                                • Es un periférico que le permite medir y controlar diferentes eventos. El modo de captura (Capture) proporciona el acceso al estado actual de un registro que cambia su valor constantemente, por ejemplo, el registro del temporizador Timer. El modo de comparación (Compare) compara constantemente valores de dos registros. Uno de ellos es el registro del temporizador Timer. Este circuito también le permite al usuario activar un evento externo después de que haya expirado una cantidad de tiempo predeterminada. Por último, el modo modulación por ancho de pulsos (PWM - Pulse Width Modulation) puede generar señales de frecuencia y de ciclo de trabajo variados por uno o más pines de salida.
                                                                1. Puertos de comunicación serial

                                                                  Annotations:

                                                                  • La comunicación sería son puertos que puede tener el microcontrolador para dotarlo con la posibilidad de comunicarse con otros dispositivos externos a través de un protocolo serie, o con otros buses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otras normas y protocolos.
                                                                  1. Buses de comunicación USB

                                                                    Annotations:

                                                                    • Universal Serial Bus, por sus siglas en inglés, es moderno bus serie que permite la comunicación directa con otro dispositivo que posea una conexión USB.
                                                                    1. Módulos ADC

                                                                      Annotations:

                                                                      • Los convertidores analógico-digital procesan señales analógicas convirtiéndolas en señales digitales.  
                                                                      1. Comparadores

                                                                        Annotations:

                                                                        • Algunos modelos de microcontroladores disponen internamente de un amplificador operacional que actúa como comparador entre una señal fija de referencia y otra variable que se aplica por uno de los pines del microcontrolador. La salida del comparador proporciona un nivel lógico 1 o 0 según una señal sea mayor o menor que la otra.
                                                                      2. Herramientas de programación
                                                                        1. Memoria de programa (instrucciones)

                                                                          Annotations:

                                                                          • La memoria de programa, o ROM, Es una memoria no volátil de sólo lectura y se destina a contener el programa de instrucciones que gobierna la aplicación.
                                                                          1. EEPROM
                                                                            1. OTP
                                                                              1. EPROM
                                                                                1. Flash
                                                                              Show full summary Hide full summary

                                                                              Similar

                                                                              Diapositivas de Topología de Redes
                                                                              lisi_98
                                                                              Elementos que conforman a google chrome
                                                                              juan carlos hernandez morales
                                                                              INFORMÁTICA 22
                                                                              daniel flores
                                                                              Construcción de software
                                                                              CRHISTIAN SUAREZ
                                                                              Sistema de Gestor de Base de Datos MongoDB
                                                                              Edwin Herlop
                                                                              TRABAJO DE TOPOLOGÍA DE REDES
                                                                              lisi_98
                                                                              Línea del tiempo Evolución histórica del software SPSS
                                                                              SANDRA LAME
                                                                              Arquitecturas de Sistemas Distribuidos
                                                                              Edisson Reinozo
                                                                              Cloud Data Integration Specialist Certification
                                                                              James McLean
                                                                              INFORMÁTICA - Periféricos de entrada y salida
                                                                              Serna Izaoly
                                                                              Conceptos Básicos de Informática
                                                                              jose antonio negreros orellana