ACTIVIDAD 3 - B. - SÍNTESIS DE MICROCONTROLADORES

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 10

INSTITUTO TECNOLÓGICO

JOSÉ MARIO MOLINA PASQUEL Y HENRÍQUEZ CAMPUS TEQUILA

ACTIVIDAD:

ACTIVIDAD 3_b.- SÍNTESIS DE MICROCONTROLADORES

CARRERA:

Ing. Electromecánica

ALUMNO:

Christian Eduardo Sánchez Sandoval

MAESTRO:

Ing. Emanuel Rodríguez Ramírez

TEQUILA, JALISCO; 2020


Generalidades

Historia e importancia de los microcontroladores

Hasta antes de la aparición de los microprocesadores (1971), la mayor parte de las


aplicaciones digitales en electrónica se basaban en la llamada lógica cableada, es
decir, si existía un problema este era analizado y se sintetizaba una función en base
a la lógica de boole que era la solución al problema planteado.

Con la aparición de los microprocesadores, se varió el esquema de diseño de tal


forma que un problema era descompuesto en una serie de tareas más simples, el
microprocesador ejecutaba una serie de pasos o instrucciones para llevar a efecto
cada una de las tareas, en ocasiones no era necesario volver a armar un circuito
para solucionar otro problema sino que se cambiaba las instrucciones para obtener
otra aplicación

Desde luego el microprocesador es como el cerebro que ejecuta operaciones de


índole aritméticas y lógicas por tanto no manejaba líneas externas más aún tampoco
tenía un lugar donde almacenar el programa y los datos que necesitaba el programa
para encontrar la respuesta al problema. El microprocesador buscaba una
instrucción y la ejecutaba; al conjunto de circuitos que daban el soporte necesario
al microprocesador se le llamo sistema mínimo.

Con el pasar de los años el sistema mínimo se convirtió en un estándar, por otro
lado la escala de integración mejoro y posibilito (1976) sintetizar en un solo chip un
sistema mínimo, al cual se le llamo SISTEMA A que no era otra cosa que el primer
microcontrolador.

Los microcontroladores se especializan en aplicaciones industriales para resolver


problemas planteados específicos por ejemplo: los encontramos en los teclados o
mouse de las computadoras, son el cerebro de electrodomésticos, también los
encontramos en la industria automotriz, en el procesamiento de imagen y video.
Cabe señalar que los el aumento progresivo de la escala de integración y las
técnicas de fabricación hacen que cada vez aparezcan microcontroladores más
poderosos y rápidos.
Metodología de estudio

En el presente curso pretendemos aprender a usar microcontroladores. Aprender


significa:

 Entender cómo funciona la arquitectura.


 Comprender y aplicar las instrucciones que tiene el dispositivo.
 Plantear soluciones a problemas.
 Aprender a usar las herramientas de programación y depuración.
 Detectar y corregir los errores sintácticos y lógicos.
 Optimizar el programa final.

En el desarrollo de texto implementaremos circuitos simples pero demostrativos de


las bondades y posibilidades de los microcontroladores. El proceso de diseño puede
ser expresado a través del siguiente diagrama de flujo:
Microcontroladores Microchip 16F87X

Las principales características con que cuenta el 16F87X son:

 Procesador de arquitectura RISC avanzada


 Juego de 35 instrucciones con 14 bits de longitud. Todas ellas se ejecutan
en un ciclo de instrucción menos las de salto que tardan 2.
 Frecuencia de 20 Mhz
 Hasta 8K palabras de 14 bits para la memoria de código, tipo flash.
 Hasta 368 bytes de memoria de datos RAM
 Hasta 256 bytes de memoria de datos EEPROM
 Hasta 14 fuentes de interrupción internas y externas
 Pila con 8 niveles
 Modos de direccionamiento directo, indirecto y relativo
 Perro guardian (WDT)
 Código de protección programable
 Modo Sleep de bajo consumo
 Programación serie en circuito con 2 patitas
 Voltaje de alimentación comprendido entre 2 y 5.5 voltios
 Bajo consumo

El siguiente diagrama da cuenta de los pines del PIC16F87X:


Arquitectura 16F87X

Los PIC16F87X de Microchip pertenecen al tipo de procesador RICS que es un


procesador de instrucciones reducidas, se caracteriza por que el número de
instrucciones es pequeño y además casi todas se realizan en la misma cantidad de
tiempo, por otro lado posee unidades que trabajan en paralelo conectadas por pipes
o tuberías. Este tipo de procesador emplea una arquitectura Harvard lo que significa
que trabaja las zonas de memoria de programa y datos en forma separada. En el
siguiente diagrama se muestra la arquitectura Von Neuman frente a la Harvard:
En ambas arquitecturas observamos bloques de memoria, cada bloque tiene
posiciones y cada posición un valor. Para recoger o dejar un valor en una
determinada posición es necesario primero indicar cuál es la dirección a leer o
escribir de la memoria, en consecuencia hay un grupo de líneas que nos permiten
hacer esa función conocida como el bus de direcciones, también existe un bus de
datos que son líneas paralelas por donde discurren los valores de cada dirección.

Arquitectura interna 16F87x

Hemos señalado que el microcontrolador posee varios elementos en forma interna:


el procesador, memoria de programa, memoria de datos, periféricos, contadores.
Observemos el siguiente diagrama de bloques del PIC16F87X:
Ciclo de instrucción

Observemos el siguiente diagrama de tiempos:

El oscilador o cristal genera pulsos, cada uno de los cuales se les llama cuadratura
Q1, Q2, Q3 y Q4. Toda instrucción tiene asociada dos procesos uno de búsqueda
y otro de ejecución, cada uno de ellos ocupa un ciclo de instrucción. La primera
tarea que se lleva a cabo es la búsqueda, internamente el contador de programa se
incrementa en Q1. La búsqueda de la siguiente instrucción se lleva a cabo en Q4.
La instrucción es ejecutada en el siguiente ciclo de instrucción como lo muestra el
diagrama.
Organización de la memoria

La memoria se divide en memoria de datos y programa. La de datos a su vez se


divide en:

 SFR (Special Function Register) Registros de propósito especial, son


registros que ayudan a configurar el hardware interno asi como sirven para
escribir o leer valores de los diferentes componente que constituyen el
microcontrolador. Por ejemplo el registro “trisa” que nos permite configurar el
modo de trabajo de las líneas del puerto A.

 GFR Registros de propósito general, son posiciones de memoria que


podemos usar para almacenar valores que emplean nuestros programa.

Debe señalarse también que la memoria de datos se divide en cuatro bancos (esto
para el caso específico del 16F87X). Las posiciones bajas siempre están reservadas
para los SFR en tanto que las altas para los GFR.

También tenemos una memoria EEPROM, con 256 posiciones, para acceder a la
memoria no podemos leer o escribir directamente es decir colocar la dirección y
obtener o dejar el valor. Para trabajarla debemos apoyarnos en registros adicionales
de tal forma que la usamos indirectamente.

Herramientas

Para programar es necesario contar con herramientas en hardware y software, en


el mercado existen muchas herramientas que van de ensambladores a simuladores,
emuladores o debuger físicos.

• MPLAB

El MPLAB es un entorno de desarrollo es decir es un recipiente que incluye varias


herramientas:
Contiene un editor de textos que no permite ingresar el programa expresado en
códigos nemónico, normalmente este se guarda en una archivo con extensión ASM.
Una vez que hemos ingresado el programa dentro de un archivo creamos un
proyecto dentro del MPLAB el proyecto puede contener a su vez varios archivos
ASM que se relacionen a través de llamadas a rutinas o compartan y/o variables,
adicionalmente el proyecto tiene un grupo de variables que debemos configurar
como es el tipo de microcontrolador que vamos a usar ya que el MPLAB soporta
todas las familias de microcontroladores Microchip. A continuación procedemos a
llamar al programa ensamblador que lleva el MPLAB capaz de transformar los
códigos nemónicos a los correspondientes valores binarios que a su vez
grabaremos en el microcontrolador. El ensamblador también genera otros archivos
de salida que ayudan en el diseño de aplicaciones. Dentro del MPLAB encontramos
también al MPSIM que es un potente simulador que nos permitirá observar el
comportamiento del programa antes de proceder grabar el programa. El archivo
.HEX es el que contiene los códigos binarios a grabar en el microcontrolador.

También podría gustarte