You are on page 1of 9

Lab. de Microcontroladores Ing.

José Ángel Castillo Castro Práctica 1

Índice
Introducción .......................................................................2
Desarrollo ..........................................................................2
Criterios a considerar ......................................................2
Técnicos .......................................................................2
Económico ....................................................................5
Conocimiento ................................................................5
Herramienta de desarrollo...............................................5
Software .......................................................................6
Hardware ......................................................................7
Resumen de herramientas a utilizar .............................8
Conclusión.........................................................................8
Bibliografía ........................................................................9

Mavi Gareli Elizondo Ruiz 1


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Práctica 1
Selección de un microcontrolador y su herramienta de desarrollo

Introducción
En esta práctica se muestra la información de los datos que se tomaron en cuenta para
la selección del microcontrolador con el cual se trabajara durante el semestre, tanto en
este laboratorio como la clase. La selección se hizo considerando criterios tanto técnicos
(memoria, velocidad, número de entradas y salidas) así como también económicos,
disponibilidad y facilitación de las herramientas de desarrollo requeridas.

Desarrollo
La elección del microcontrolador adecuado depende mucho de para que fin se va utilizar.
En este caso, se utilizará para la realización de proyectos simples, como controlar el
encendido de leds y otros un poco más complicados como el control con un teclado
matricial.
Para reducir las opciones, lo primero que se hizo fue elegir una marca, ya que de nada
sirve que encontremos el microcontrolador perfecto pero no lo podamos costear. En el
mercado encontramos marcas como:
- Microchip Technology Corp.
- STMicroelectronics
- Atmel Corp.
- Motorola Semiconductors Corp.

Pero sin lugar a duda, la empresa que fabrica los microcontroladores a mejor precio y
con buenas características es Microchip Technology Corp. Su producto más popular son
los microcontroladores PIC (Peripheral Interface Controller).

Una vez establecida la marca y familia se buscará entre los distintos modelos las
características y especificaciones necesarias.

Ilustración 1. Logo de Microchip Technology Corp.

Criterios a considerar
Técnicos
Memoria
La mayoría de los microcontroladores disponibles en la actualidad incluyen una función
de memoria FLASH y memoria RAM. La memoria FLASH es una memoria no volátil que

Mavi Gareli Elizondo Ruiz 2


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

se utiliza para almacenamiento de programas, y la memoria RAM es una memoria volátil


que se utiliza para el almacenamiento temporal. Algunos microcontroladores también
incluyen una memoria EEPROM para almacenar datos de forma permanente. A
continuación, se muestra información sobre la memoria FLASH, SRAM y EEPROM que
poseen los modelos PIC16F87XA

Ilustración 2.Memoria PIC16F87XA (Bytes)

Notamos que el PIC16F877A es el que posee más memoria, SRAM de 368 Bytes,
EEPROM de 256 Bytes y FLASH de 8192 Bytes es bastante aceptable.
Número y tipo de I/O
La configuración de los pines depende del tipo de empaque (que estemos describiendo;
de ese modo tenemos varios tipos de empaque, tales como: PDIP, SOIC, SSOP, QFN,
PLCC, TQFP. Mostraremos la información del PIC16F877A, ya que fue el que tenía mas
memoria.

Para nuestro caso, el pinout de 40 pines Ilustración 3.Pinout PIC16F877APDIP (Plastic Dual In Package) usado
comúnmente para protoboard, o con base de 100 mils de separación entre pines y 600 mils de ancho

Como vemos, tiene 40 pines, de los cuales haremos un análisis.

Mavi Gareli Elizondo Ruiz 3


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Los puertos pueden o no compartir el pin con algún periférico; a veces, con más de un
periférico, la función con la que el pin queda trabajando depende de la programación que
realiza el usuario. Para la configuración de cada periférico, se deben usar
adecuadamente los registros asociados y un procedimiento secuencial; todo esto se
detalla más adelante en cada módulo. A continuación, apreciamos un resumen de los
periféricos que contiene el PIC16F877A y cada dispositivo del grupo PIC16F87XA.

Ilustración 4.Puertos y periféricos.

En resumen, todos tienen:


 3 Timers, TMR0, TMR1, TMR2
 2 Capture/Compare PWM
 2 Comparadores análogos
 Comunicación MSSP, USART
Las diferencias están en:
 28 o 40/44 pines
 5 u 8 conversores análogos a digital de 10 bits
 3 o 5 puertos I/O
Por lo cual nuevamente nos inclinamos por el PIC16F877A.
Velocidad

Ilustración 5.Brochure
La imagen mostrada aplica para PIC16F87XA, vemos que la velocidad de operación es
de 20 MHz.

Mavi Gareli Elizondo Ruiz 4


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Resumen de características
CARACTERÍSTICAS 16F877A
Frecuencia máxima DX-20MHz
Memoria de programa flash palabra 8KB
de 14 bits
Posiciones RAM de datos 368
Posiciones EEPROM de datos 256
Puertos E/S A,B,C,D,E
Número de pines 40
Interrupciones 14
Timers 3
Módulos CCP 2
Comunicaciones Serie MSSP, USART
Comunicaciones paralelo PSP
Líneas de entrada de CAD de 10 8
bits
Juego de instrucciones 35
Instrucciones
Longitud de la instrucción 14 bits
Arquitectura Harvard
CPU Risc
Canales Pwm 2

Económico
Este microcontrolador se encuentra en venta en muchas tiendas de electrónica de
Monterrey como Semty, AG, etc. El precio ronda los $100 pesos e incluso algunas
personas en la facultad lo facilita.
Conocimiento
La red está repleta de información del PIC16F877A, existen muchos blogs destinados a
debatir sobre proyectos. También existen muchos libros que hablan de los PIC, incluso
hay uno destinado a este modelo en específico. Este es el Microcontroladores
PIC16F877A y PIC16F887 de la Editorial Alfaomega. Esta editorial también ofrece en su
pagina web http://virtual.alfaomega.com.mx información adicional que complementa al
contenido de este libro, allí se encontrarán carpetas que contienen: Ejemplos ASM, data
sheet, herramientas y software.

Herramienta de desarrollo
Una herramienta de desarrollo es un conjunto de elementos necesarios para manipular
apropiadamente los MCU. Sirve para facilitar el manejo de los recursos internos del MCU,
programar el MCU y verificar el funcionamiento adecuado del MCU en el circuito de
aplicación con el resultado deseado.
A continuación, se presentas las herramientas de software y hardware que se usarán.

Mavi Gareli Elizondo Ruiz 5


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Software
Estas herramientas son aplicaciones o programas que se instalan en una PC con el
propósito de manejar el MCU; se conectan con la herramienta de hardware por un puerto
USB, Serial RS232 o paralelo. También son llamadas Ambiente de Desarrollo o IDE
(Integrated Development Environment); son desarrolladas para editar, ensamblar,
compilar, simular, programar, depurar o emular aplicaciones con MCU.
Un ambiente de desarrollo debe poseer facilidades, tales como: un editor de texto de alto
nivel, un compilador que convierta el código de los programas en archivos de texto a
código hexadecimal y un protocolo de comunicación para escribir y leer en los MCU. Las
herramientas deben tener la capacidad de manejar apropiadamente cada uno de los
pines, registros y posiciones de memoria de cada MCU que soporta. Se encuentran en
Internet y son descargables (algunas versiones son gratis) para herramientas de
hardware como programadores, depuradores y emuladores asociadas con el hardware.
Estas aplicaciones pueden trabajar con lenguajes como ASM, C y QuickBasic, entre
otros.
Por eso elegí usar el software MPLAB X IDE de Microchip que es gratis y se consigue
en el sitio de Microchip. Es una excelente herramienta, soporta todos los micros PIC,
dsPIC y DSC, memorias y rfPIC:
• Trabaja en lenguajes ASM (ensamblador), C y Basic.
• Soporta todas las herramientas de Microchip para programadores, depuradores y
emuladores y las herramientas de evaluación.
• Soporta el compilador de C de la casa CCS y el simulador Proteus VSM de Labcenter
Electronics, también soporta MatLab.
• Posee las facilidades para realizar proyectos, definición de micros, visualización de
registros, memoria de programa y EEPROM, el registro W y las banderas de Status.

Mavi Gareli Elizondo Ruiz 6


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Ilustración 6.MPLAB X IDE

Hardware
Éstas son las herramientas circuitales que contienen una base (Socket) para la recepción
del MCU, o un conector para comunicación con la tarjeta o board de aplicación (target).
Además, posee una conexión con la PC para la comunicación con el software de
Ambiente de Desarrollo Integrado o IDE. Los hay de diferentes tipos; a medida que crece
la versatilidad de las funciones de manipulación sobre el MCU, crece la complejidad de
la herramienta y también está asociada con su costo.
Depurador
En esta categoría se encuentran herramientas en Microchip con toda la documentación
disponible, tales como:
 MPLAB ICD 3
 MPLAB ICD 2
 PICkit™ 3
 PICkit™ 2
Se optó por utilizar el PICkit™ 3, debido a su costo (alrededor de $450 pesos) y
disponibilidad. Este debugger/programmer, de bajo costo, sirve para los MCU Microchip
y dsPIC (DSC), se conecta a la PC por interfaz USB, y hacia los micros utiliza, ICSP (In-
Circuit Serial Programming) con un conector hembra de 6 pines.

Mavi Gareli Elizondo Ruiz 7


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Ilustración 7. PICkit3
Resumen de herramientas a utilizar

Ilustración 8.Herramientas de desarrollo

Conclusión
Elegí el PIC16F877A debido a todas las buenas características mencionadas
anteriormente; su bajo precio, reducido consumo, pequeño tamaño, buena calidad y
abundancia de información lo hacen un muy buen microcontrolador para un estudiante.
Sus 40 pines, 5 puertos I/O, 368 Bytes en la SRAM, 256 Bytes en la EEPROM y 35
juegos de instrucciones hacen que este PIC tenga una gran cantidad de aplicaciones por
un costo razonable. En cuanto a las herramientas de desarrollo se optó por usar el
software MPLAB X IDE ya que trabaja en lenguajes ASM (ensamblador), C y Basic,
facilita la visualización de registros soporta el compilador de, el simulador Proteus,
MatLab, además de todas las herramientas de Microchip para el depurador que
usaremos, el PICkit3.

Mavi Gareli Elizondo Ruiz 8


Lab. de Microcontroladores Ing. José Ángel Castillo Castro Práctica 1

Bibliografía
 Palacios Municio, E., Remiro Domínguez, F., & López Pérez, L. J.
(2009). Microcontrolador PIC16F84: desarrollo de proyectos. Tercera edición.
Alfaomega Grupo Editor, S.A. de C.V., México. ISBN: 9786077686378.

 Salvatierra Figueroa, Daniel, Microcontroladores PIC16F877A y PIC16F887.


Primera Edición. Alfaomega Grupo Editor, S.A. de C. V., México ISBN: 978-607-
707-463-2.

 Comparativa de Microcontroladores actuales. Disponible en:


http://server-die.alc.upv.es/asignaturas/lsed/2002-
03/Micros/downloads/trabajo.pdf

Mavi Gareli Elizondo Ruiz 9