Está en la página 1de 13

1.

1 INTRODUCCIÓN AL MUNDO DE LOS


MICROCONTROLADORES

AnteriorSiguiente
MIKROELEKTRONIKA

Los principiantes en electrónica creen que un microcontrolador es igual a un


microprocesador. Esto no es cierto. Difieren uno del otro en muchos sentidos.
La primera y la más importante diferencia es su funcionalidad. Para utilizar al
microprocesador en una aplicación real, se debe de conectar con componentes
tales como memoria o componentes buses de transmisión de datos. Aunque el
microprocesador se considera una máquina de computación poderosa, no está
preparado para la comunicación con los dispositivos periféricos que se le
conectan. Para que el microprocesador se comunique con algún periférico, se
deben utilizar los circuitos especiales. Así era en el principio y esta práctica
sigue vigente en la actualidad.
Por otro lado, al microcontrolador se le diseña de tal manera que tenga todas
las componentes integradas en el mismo chip. No necesita de otros
componentes especializados para su aplicación, porque todos los circuitos
necesarios, que de otra manera correspondan a los periféricos, ya se
encuentran incorporados. Así se ahorra tiempo y espacio necesario para
construir un dispositivo.j

¿QUE PUEDEN HACER LOS MICROCONTROLADORES?

Para entender con más facilidad las razones del éxito tan grande de los
microcontroladores, vamos a prestar atención al siguiente ejemplo. Hace unos
10 años, diseñar un dispositivo electrónico de control de un ascensor de un
edificio de varios pisos era muy difícil, incluso para un equipo de expertos. ¿Ha
pensado alguna vez en qué requisitos debe cumplir un simple ascensor?
¿Cómo lidiar con la situación cuando dos o más personas llaman al ascensor al
mismo tiempo? ¿Cuál llamada tiene la prioridad? ¿Cómo solucionar las
cuestiones de seguridad, de pérdida de electricidad, de fallos, de uso indebido?
Lo que sucede después de resolver estos problemas básicos es un proceso
meticuloso de diseñar los dispositivos adecuados utilizando un gran número de
los chips especializados. Este proceso puede tardar semanas o meses,
dependiendo de la complejidad del dispositivo. Cuando haya terminado el
proceso, llega la hora de diseñar una placa de circuito impreso y de montar el
dispositivo.¡Un dispositivo enorme! Es otro trabajo difícil y tardado. Por último,
cuando todo está terminado y probado adecuadamente, pasamos al momento
crucial y es cuando uno se concentra, respira profundamente y enciende la
fuente de alimentación.

Esto suele ser el punto en el que la fiesta se convierte en un verdadero trabajo


puesto que los dispositivos electrónicos casi nunca funcionan apropiadamente
desde el inicio. Prepárese para muchas noches sin dormir, correcciones,
mejoras… y no se olvide de que todavía estamos hablando de cómo poner en
marcha un simple ascensor.

Cuando el dispositivo finalmente empiece a funcionar perfectamente y todo el


mundo esté satisfecho, y le paguen por el trabajo que ha hecho, muchas
compañías de desarrollo estarán interesadas en su trabajo. Por supuesto, si
tiene suerte, cada día le traerá una oferta de trabajo de un nuevo inversionista.
Sin embargo, si lo requieren para trabajar en el control de los elevadores de un
nuevo edificio que tiene cuatro pisos más de los que ya maneja su sistema de
control. ¿Sabe cómo proceder? ¿Cree acaso que se pueden controlar las
demandas de sus clientes? Pensamos que usted va a construir un dispositivo
universal que se puede utilizar en los edificios de 4 a 40 pisos, una obra
maestra de electrónica. Bueno, incluso si usted consigue construir una joya
electrónica, su inversionista le esperarará delante de la puerta pidiendo una
cámara en el ascensor o una música relajante en caso de fallo de ascensor. O
un ascensor con dos puertas.
De todos modos, la ley de Murphy es inexorable y sin duda usted no podrá
tomar ventaja a pesar de todos los esfuerzos que ha hecho. Por desgracia,
todo lo que se ha dicho hasta ahora sucede en la realidad. Esto es lo que
“dedicarse a la ingeniería electrónica” realmente significa. Es así como se
hacían las cosas hasta aparición de los microcontroladores diseñados –
pequeños, potentes y baratos. Desde ese momento su programación dejó de
ser una ciencia, y todo tomó otra dirección …

El dispositivo electrónico capaz de controlar un pequeño submarino, una grúa o


un ascensor como el anteriormente mencionado, ahora está incorporado en un
sólo chip. Los microcontroladores ofrecen una amplia gama de aplicaciones y
sólo algunas se exploran normalmente. Le toca a usted decidir qué quiere que
haga el microcontrolador y cargar un programa en él con las instrucciones
apropiadas. Antes de encender el dispositivo es recomendable verificar su
funcionamiento con ayuda de un simulador. Si todo funciona como es debido,
incorpore el microcontrolador en el sistema. Si alguna vez necesita cambiar,
mejorar o actualizar el programa, hágalo. ¿Hasta cuándo? Hasta quedar
satisfecho. Eso puede realizarse sin ningún problema.
1. ¿Qué es un microcontrolador?

Fig 1.1 Fotografía de algunos microcontroladores de la empresa Microchip

Un microcontrolador es un circuito integrado digital que puede ser usado para muy
diversos propósitos debido a que es programable. Está compuesto por una unidad
central de proceso (CPU), memorias (ROM y RAM) y líneas de entrada y salida
(periféricos).
Como podrás darte cuenta, un microcontrolador tiene los mismos bloques de
funcionamiento básicos de una computadora lo que nos permite tratarlo como un
pequeño dispositivo de cómputo.

¿Qué se puede hacer con un microcontrolador?


Fig 1.2 Motor paso a paso controlado a través de un microcontrolador

Un microcontrolador puede usarse para muchas aplicaciones algunas de ellas son:


manejo de sensores, controladores, juegos, calculadoras, agendas, avisos
lumínicos, secuenciador de luces, cerrojos electrónicos, control de motores,
relojes, alarmas, robots, entre otros. El límite es la imaginación.

¿Cómo funciona un microcontrolador?


Como el hardware ya viene integrado en un solo chip, para usar un
microcontrolador se debe especificar su funcionamiento por software a través de
programas que indiquen las instrucciones que el microcontrolador debe realizar.
En una memoria se guardan los programas y un elemento llamado CPU se
encarga de procesar paso por paso las instrucciones del programa. Los lenguajes
de programación típicos que se usan para este fin son ensamblador y C, pero antes
de grabar un programa al microcontrolador hay que compilarlo a hexadecimal que
es el formato con el que funciona el microcontrolador.
Para diseñar programas es necesario conocer los bloques funcionales básicos del
microcontrolador, estos bloques son:

 CPU (Unidad central de proceso)


 Memoria ROM (Memoria de solo lectura)
 Memoria RAM (Memoria de acceso aleatorio)
 Líneas de entrada y salida (Periféricos)
La forma en la que interactúan estos bloques dependerá de su arquitectura
(capítulo 2).

La CPU posee, de manera independiente, una memoria de acceso rápido para


almacenar datos denominada registros, si estos registros son de 8 bits se dice que
el microcontrolador es de 8 bits.

¿Qué se necesita para grabar un programa en un microcontrolador?


Se necesita básicamente tres cosas:

1. Una computadora
2. Software de programación (incluyendo un compilador).
3. Un circuito programador
Y obviamente también se necesita un microcontrolador.

La computadora, a través del software de grabación, se encarga de enviar el


programa que se desea grabar al microcontrolador por intermedio del circuito
programador. Los detalles de este proceso se darán en la unidad IV.

¿Dónde consigo lo necesario?


fig 1.3 Algunas empresas destacadas en la fabricación de microcontroladores

Microchip Technology, denominada comúnmente Microchip es una de las empresas


líderes en la fabricación de microcontroladores. Para esta empresa, los
microcontroladores se conocen con el apodo “PIC”. Debido a sus bajos costos,
desempeño eficiente, gran documentación y fácil adquisición de los kit de
desarrollo, los microcontroladores de Microchip, conocidos simplemente como PIC,
serán los que utilizaré a lo largo del tutorial.
Atmel, otra empresa líder en este campo es famosa por crear los
microcontroladores sobre los que se basan los arduinos. Existen otras alternativas,
ofrecidas por empresas como Texas Instruments, Freescale, entre otras. Sus
productos pueden ser encontrados en tiendas de electrónica, aunque no siempre
se consiguen fácilmente por lo que podemos acudir a las ventas por internet para
obtenerlos.
Si no dispones de lo necesario para grabar un microcontrolador o si ni siquiera
dispones de uno puedes empezar por estudiarlo a través de simulaciones (detalles
en la unidad III). Un programa reconocido para este tipo de simulación es el
proteus (ISIS), pero hay que advertir que una simulación es solo una ayuda, a
veces las simulaciones pueden tener comportamientos diferentes a los que
ocurrirían en la vida real.

PIC 16F877
Se denomina microcontrolador a un dispositivo programable capaz de realizar diferentes actividades que
requieran del procesamiento de datos digitales y del control y comunicación digital de diferentes
dispositivos.
Los microcontroladores poseen una memoria interna que almacena dos tipos de datos; las instrucciones,
que corresponden al programa que se ejecuta, y los registros, es decir, los datos que el usuario maneja,
así como registros especiales para el control de las diferentes funciones del microcontrolador.

Los microcontroladores se programan en Assembler y cada microcontrolador varía su conjunto de


instrucciones de acuerdo a su fabricante y modelo. De acuerdo al número de instrucciones que el
microcontrolador maneja se le denomina de arquitectura RISC (reducido) o CISC (complejo).
Los microcontroladores poseen principalmente una ALU (Unidad Lógico Aritmética), memoria del
programa, memoria de registros, y pines I/O (entrada y/0 salida). La ALU es la encargada de procesar los
datos dependiendo de las instrucciones que se ejecuten (ADD, OR, AND), mientras que los pines son los
que se encargan de comunicar al microcontrolador con el medio externo; la función de los pines puede
ser de transmisión de datos, alimentación de corriente para l funcionamiento de este o pines de control
especifico.
En este proyecto se utilizo el PIC 16F877. Este microcontrolador es fabricado por MicroChip familia a la
cual se le denomina PIC. El modelo 16F877 posee varias características que hacen a este
microcontrolador un dispositivo muy versátil, eficiente y practico para ser empleado en la aplicación que
posteorimente será detallada.
Algunas de estas características se muestran a continuación:
 Soporta modo de comunicación serial, posee dos pines para ello.
 Amplia memoria para datos y programa.
 Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo de memoria se
puede borrar electrónicamente (esto corresponde a la "F" en el modelo).
 Set de instrucciones reducido (tipo RISC), pero con las instrucciones necesarias para facilitar su manejo.
CARACTERISTICAS
En siguiente tabla de pueden observar las características más relevantes del dispositivo:
CARACTERÍSTICAS 16F877
Frecuencia máxima DX-20MHz
Memoria de programa flash palabra de 14 bits 8KB
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 bits 8
Juego de instrucciones 35 Instrucciones
Longitud de la instrucción 14 bits
Arquitectura Harvard
CPU Risc
Canales Pwm 2

Pila Harware -

Ejecución En 1 Ciclo Máquina -

Descripción de los puertos:


Puerto A:
 Puerto de e/s de 6 pines
 RA0 è RA0 y AN0
 RA1 è RA1 y AN1
 RA2 è RA2, AN2 y Vref-
 RA3 è RA3, AN3 y Vref+
 RA4 è RA4 (Salida en colector abierto) y T0CKI(Entrada de reloj del modulo Timer0)
 RA5 è RA5, AN4 y SS (Selección esclavo para el puerto serie síncrono)

Puerto B:
 Puerto e/s 8 pines
 Resistencias pull-up programables
 RB0 è Interrupción externa
 RB4-7 èInterrupcion por cambio de flanco
 RB5-RB7 y RB3 è programacion y debugger in circuit

Puerto C:
 Puerto e/s de 8 pines
 RC0 è RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del modulo Timer1).
 RC1-RC2 è PWM/COMP/CAPT
 RC1 è T1OSI (entrada osc timer1)
 RC3-4 è IIC
 RC3-5 è SPI
 RC6-7 è USART
Puerto D:
 Puerto e/s de 8 pines
 Bus de datos en PPS (Puerto paralelo esclavo)
 Puerto E:
 Puerto de e/s de 3 pines
 RE0 è RE0 y AN5 y Read de PPS
 RE1 è RE1 y AN6 y Write de PPS
 RE2 è RE2 y AN7 y CS de PPS

Dispositivos periféricos:
 Timer0: Temporizador-contador de 8 bits con preescaler de 8 bits
 Timer1: Temporizador-contador de 16 bits con preescaler que puede incrementarse en modo sleep de
forma externa por un cristal/clock.
 Timer2: Temporizador-contador de 8 bits con preescaler y postescaler.
 Dos módulos de Captura, Comparación, PWM (Modulación de Anchura de Impulsos).
 Conversor A/D de 1 0 bits.
 Puerto Serie Síncrono Master (MSSP) con SPI e I2C (Master/Slave).
 USART/SCI (Universal Syncheronus Asynchronous Receiver Transmitter) con 9 bit.
 Puerta Paralela Esclava (PSP) solo en encapsulados con 40 pines

Leer más: http://www.monografias.com/trabajos18/descripcion-pic/descripcion-pic.shtml#ixzz4NvP09mkh


Anexos:

http://learn.mikroe.com/ebooks/microcontroladorespicc/chapter/introduccion-al-mundo-de-
los-microcontroladores/

http://apuntes-electronicos.blogspot.pe/2013/02/caracteristicas-generales-del-pic-
16f877.html

http://www.utp.edu.co/~eduque/arquitec/Pic16f84.pdf

http://www.monografias.com/trabajos12/decibin/decibin.shtml

https://www.google.com.pe/search?q=pic16f87+caracteristicas&espv=2&biw=1366&bih=623
&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjHzZqNpvHPAhXKLyYKHRQeBtEQ_AUIBigB&dpr
=1#tbm=isch&q=microcontroladores

http://sherlin.xbot.es/microcontroladores/introduccion-a-los-microcontroladores/que-es-un-
microcontrolador

También podría gustarte