Вы находитесь на странице: 1из 4

1

LENGUAJES DE PROGRAMACIN DE LOS


MICROCONTROLADORES
Jos Roberto Toledo Illescas
jtoledoi@est.ups.edu.ec
Universidad Politcnica Salesiana
Sistemas microprocesados II

ResumenEn el presente documento se analizara los lenguajes


de programacin e IDEs que los diferentes microcontroladores
emplean para su programacin.
Index TermsLenguaje de programacin, microcontrolador,
IDE.

O BJETIVOS
Definir e identificar las diferentes caractersticas de los
microcontroladores.
Listar las principales familias de microcontroladores.
Describir los diferentes lenguajes de programacin e
IDEs empleados en la programacion de estos.

I.
I-A.

AVR

Los microcontroladores AVR es una de las familias de


microcontroladores de 8 bits mas usados . Diseado por dos
estudiantes de Norwegain Institute of Technology (NTH) AlfEgil Bogen y Vegard Wollan, fue comprada y desarrollada por
Atmel en 1996.
Los AVR emplean arquitectura Harvard, los cuales vienen
con algunas caractersticas estndar como se puede apreciar
en la siguiente figura:

S USTENTO TERICO

Microcontrolador

El termino microcontrolador es empleado para describir a


un circuito integrado capaz de ejecutar instrucciones grabadas
en su memoria. El trmino Micro hace referencia a dispositivos
pequeos y Controlador hace referencia a que el dispositivo es
empleado para controlar aplicaciones. Todos los microcontroladores operan con un set de instrucciones almacenadas en su
memoria, dichas instrucciones son programadas por el usuario.
Los microcontroladores tradicionalmente eran programados
empleando el lenguaje ensamblador, as tambin los microcontroladores pueden ser programados empleando lenguajes
de alto como BASIC, PASCAL o C; los que son mas sencillos
de aprender que el ensamblador.

I-B.

I-C.

Figura 1. Arquitectura del AVR

I-D.

PIC

Diseados por MICROCHIP, su nombre real es PICmicro


que hace referencia a Peripheral Interface Controller; el primer
PIC fue diseado en 1975 por General Instruments, este chip
fue conocido como PIC1650 diez aos despus tras agregar
a este una memoria EEPROM el cual fue transformado en el
actual PIC. En la actualidad se encuentra una gran gama de
PICs de 8, 16 o 32 bits como la serie 8 bits de medio rango
como los PIC16FXXX o de 32 bits como el PIC32.

Familias de microcontroladores

En la siguiente tabla se puede apreciar a las principales


familias de microcontroladores y sus respectivos fabricantes:
Cuadro I
FAMILIAS DE MICROCONTROLADORES
Fabricante
ATMEL
MICROCHIP
STMicroelectronics
MICROCHIP

Familia
AVR
PIC
STM32
dsPIC

Figura 2. Microcontrolador PIC

I-E.

STM32 (ARM7)

La familia STM32 son una serie de microcontroladores


basados en el procesador ARM Cortex-M, proveyendo la
combinaciones de servicios de gran alcance, capacidad en
tiempo real, procesamiento de seales, operacin de seales
de bajo voltaje con mantenimiento integrado y fcil desarrollo.
Basados en las exigencias de la industria y al estar acompaados por una gran gama de herramientas y software hace de
este un gran producto para el desarrollo de proyectos.

Figura 3. STM32

I-F.

DSPic

Un DSC o Digital Signal Controller es un chip que integra


a la perfeccin los atributos de un microcontrolador con la
capacidad de calculo de un DSP (Digital Signal Processor).
Ofreciendo un manejo rpido, sofisticado y flexible de las interrupciones, una gran gama de funciones perifricas digitales
o anlogas, administracin de la energa, velocidad completa
en tiempo real, entre otros. Los DSPics de 16-bits como
el dsPIC30F son una serie que controla una seal digital,
ejecutando varias instrucciones en un ciclo, caracterizados por
ser costos y complejos, la serie dsPIC33F fue diseada para
que el usuario lo sintiera como un MCU tpico.

puesto en marcha en el microcontrolador. Caracterizado por su


alta complejidad a su vez cada dispositivo (microcontrolador)
posee un propio conjunto de instrucciones. Se encuentran
basados
I-G2. C: Es un lenguajes de alto nivel, permite realizar
operaciones sobre bytes de manera similar sobre bits, como
operaciones aritmticas, lgicas, desplazamiento ,etc. C es un
lenguaje compilado es decir los archivos fuente, basados en
este lenguaje, se traducen a lenguaje maquinas.
Es un lenguaje simple caracterizado por el manejo de
libreras, es muy eficiente ya que hace posible emplear caractersticas de bajo nivel para realizar implementaciones optimas.
I-G3. Basic: Es un lenguaje de programacin simple
y fcil de entender, para emplearlo debidamente basta con
conocer algunos elementos bsicos como operadores, variables reservadas para el sistema, directivas. Sustituye varias
instrucciones en ensamblador por una sentencia en Basic, as el
programador ya no debe conocer el conjunto de instrucciones
propias del microcontrolador. De manera similar al C el codigo
es traducido a lenguaje maquina mediante un compilador.
I-G4. Pascal: Es un lenguaje de alto nivel empleado
generalmente para aprender los conceptos generales de programacin. Caracterizado por la divisin de su cdigo en funciones, facilitando el uso de una programacin estructurada.
Las variables np pueden tener un tipo de valor incompatible, es
decir su valor debe ser del mismo tipo del cual se ha definido,
evitando la necesidad de denotar a cada tipo de variable.
I-H. Lenguajes de programacin empleados por las diferentes familias e IDEs
En secciones anteriores se han detallado las principales
familias de microcontroladores y de manera similar los principales lenguajes de programacin, en la siguiente tabla se
puede apreciar a dichas familias y el lenguaje que estas pueden
emplear para su programacin:
Cuadro II
MICROCONTROLADORES Y LENGUAJES DE PROGRAMACIN
Familia
AVR
PIC
STM32
dsPIC

Lenguaje
Ensamblador - C
Basic - C
C
Pascal - C - Basic

Para la familia AVR se puede emplear los siguientes IDEs:


AVR Studio de ATMEL.

Figura 4. dsPIV30F3011

I-G.

Lenguajes de programacin

I-G1. Ensamblador: El primer lenguaje de programacin


desarrollado fue el ensamblador (ASM), en el que las instrucciones consisten en las abreviaturas con significado y
a cada instruccin corresponde una parte de la memoria.
empleando un compilador se compilara cada instruccin sin
optimizarlo, permitiendo controlar en detalle cada proceso

Figura 5. Interfaz de AVR Studio

Para la familia PIC se puede emplear los siguientes IDEs:


MPLAB de MICROCHIP.
mikroPascal de MICROCHIP.
mikroC de MICROCHIP.
mikroBASIC de MICROCHIP.
PIC CCS de CCS.

Figura 8. Interfaz de PIC C

CONCLUSIONES

Figura 6. Interfaz de mikroPascal

Para la familia STM32 se puede emplear los siguientes


IDEs:
Code::Blocks de Code::Blocks distribuido aplicando
GNU.
STM32CubeMX de STMicroelectronics.

Figura 7. Interfaz de STM32CubeMX

Para la familia dsPIC se puede emplear los siguientes IDEs:


MPLAB de MICROCHIP.
mikroPascal de MICROCHIP.
mikroC con el compilador PIC24 de MICROCHIP.
mikroBASIC de MICROCHIP.
PCDIDE compilador de PIC C de CCS (Costum Computer Services).
PCwhd compilador de PIC C de CCS (Costum Computer
Services).

Los microcontroladores son dispositivos destinados a controlar aplicaciones, haciendo esto posible mediante un conjunto de instrucciones almacenadas en su memoria.
Para realizar las instrucciones que debe seguir el microcontrolador se debe escribir un cdigo basado en un lenguaje
de programacin que posteriormente sera traducido por un
compilador a lenguaje maquina.
Cada lenguaje de programacin posee su propio nivel de
complejidad y a su vez brinda ventajas sobre otros como el
pascal en el cual se delimitan los posibles errores que surgen al
programar basndose en una serie de normas preestablecidas.
R EFERENCIAS
[1] I. Dogan, Advanced PIC Microcontroller Projects in C
from USB to RTOS with the PIC18F Series, Elsevier, 2008.
[2] M. Mazidi S. Naimi, The AVR microcontroller and
embedded system using assembly and c, PEARSON, 2011.
[3]
MikroElektronika,
Introduction
to
the
world
of
microcontrollers
[En
lnea].
Aviable:
http://learn.mikroe.com/ebooks/picmicrocontrollers
programminginassembly/front-matter/introduction-to-theworld-of-microcontrollers/ [ltimo acceso: 23 Abril 2016].
[4]
STMicroelectronics,
STM#
32-bits
ARM
Cortex
MCUs
[En
lpinea].
Aviable:
http://www2.st.com/content/st_com/en/products/microcontrollers/
stm32-32-bit-arm-cortex-mcus.html?querycriteria=productId=
SC1169 [ltimo acceso: 23 Abril 2016].
[5] Microchip, dsPIC Digital Signal Controllers The Best
of Both Worlds, MICROCHIP, octubre 2005.
[6]
MikroElektronika,
2.1
Lenguajes
de
programacin
[En
lnea].
Aviable:
http://learn.mikroe.com/ebooks/microcontroladorespicc/
chapter/lenguajes-de-programacion/. [ltimo acceso: 23 Abril
2016].
[7] MikroElektronika, 2.2 Caractersticas principales del
lenguaje de programacin Basic [En lnea]. Available:
http://learn.mikroe.com/ebooks/microcontroladorespicbasic/
chapter/
caracteristicas-principales-del-lenguaje-deprogramacion-basic/. [ltimo acceso: 23 Abril 2016].

[8] Pascal programming, A pascal tutorial [En lnea].


Aviable: http://www.pascal-programming.info/index.php [ltimo acceso: 23 Abril 2016].
[9] CCS Inc., CCS. C COMPILERS [En lnea].
http://www.ccsinfo.com/content.php?page=compilers [ltimo
acceso: 23 Abril 2016].

Вам также может понравиться