Programacion de Microcontroladores
Programacion de Microcontroladores
Programacion de Microcontroladores
Programación de microcontroladores
Sistemas programables
Grupo:4751
LENGUAJE DE PROGRAMACIÓN
Proteus Proteus es un entorno integrado diseñado para la realización completa de
proyectos de construcción de equipos electrónicos en todas sus etapas: diseño,
simulación, depuración y construcción. Sin la utilización de la suite Proteus, el proceso
para construir un equipo electrónico.
•Lenguaje C El lenguaje C dispone de todas las ventajas de un lenguaje de programación
de alto nivel y le permite realizar algunas operaciones tanto sobre los bytes como sobre
los bits (operaciones lógicas, desplazamiento etc.). Las características de C pueden ser
muy útiles al programar los microcontroladores. Además, C está estandarizado (el
estándar ANSI), es muy portable, así que el mismo código se puede utilizar muchas veces
en diferentes proyectos.
• Lenguaje Visual Basic Los lenguajes de programación de alto nivel (Basic entre otros)
fueron creados. La ventaja principal de estos lenguajes es la simplicidad de escribir un
programa. Varias instrucciones en ensamblador se sustituyen por una sentencia en Basic.
El programador ya no tiene que conocer el conjunto de instrucciones del microcontrolador
utilizado. Ya no es posible conocer exactamente cómo se ejecuta cada sentencia, de
todas formas, ya no importa. Aunque siempre se puede insertar en el programa una
secuencia escrita en ensamblador.
• Lenguaje Assembler Como el proceso de escribir un código ejecutable era
considerablemente arduo, en consecuencia, fue creado el primer lenguaje de
programación denominado ensamblador (ASM). Siguiendo la sintaxis básica del
ensamblador, era más fácil escribir y comprender el código. Las instrucciones en
ensamblador consisten en las abreviaturas con significado y a cada instrucción
corresponde una localidad de memoria.
Estructura de los registros del CPU
Los programas de los microcontroladores suelen dividirse en dos grandes grupos:
• La estructura de interrupciones, formada por las rutinas de servicio a las mismas.
• El programa principal, que consta de dos partes: La rutina de inicialización del sistema y
Un lazo de ejecución perpetua, en donde n perpetua, en donde se ejecutan todas se
ejecutan todas aquellas tareas que no estén ligadas a la estructura de n ligadas a la
estructura de interrupciones: máquina de estados principal, rutinas no quina de estados
principal, rutinas no críticas, inicialización del circuito de vigilancia
Conjunto de instrucciones
Un conjunto de instrucciones o repertorio de instrucciones, juego de instrucciones o ISA
(del inglés Instruction Set Architecture, Arquitectura del Conjunto de Instrucciones) es una
especificación que detalla las instrucciones que una CPU de un ordenador puede
entender y ejecutar, o el conjunto de todos los comandos implementados por un diseño
particular de una CPU. El término describe los aspectos del procesador generalmente
visibles a un programador, incluyendo los tipos de datos nativos, las instrucciones, los
registros, la arquitectura de memoria y las interrupciones, entre otros aspectos.
Lenguajes ensambladores
Ventajas:
• Permite desarrollar programas muy eficientes:
• Uso eficiente de recursos
• Código compacto
• Control total sobre el tiempo de ejecución de las instrucciones especialmente importante
en aplicaciones en tiempo real
Desventajas:
• Programación costosa y difícil de modificar
Codificación
A menudo gastamos una gran cantidad de energía diseñando un circuito elegante, bien
diseñado y robusto. Hoy día, el cerebro de muchos de estos circuitos es un
microcontrolador que necesita un software para funcionar. ¿No es razonable entonces
esperar un programa bien diseñado y escrito adecuadamente que se complemente con la
calidad del trabajo del circuito? Aparentemente así es. Hablemos de la cualidad del
software. Es un hecho muy bien conocido: los errores matan a gente y los errores de
programación no son una excepción. Todos los años muere gente debido a errores de
programas. Algunos accidentes fatales de avión, helicóptero y coches pueden ser
atribuidos a problemas en el software. El mal funcionamiento del ‘firmware’ interno de los
dispositivos médicos crea víctimas de manera regular. Los edificios se convierten en
humo debido a errores de programa, y algunas personas son asesinadas a machetazos.
El software erróneo puede incluso hundir barcos. Creedme, he visto que eso sucede.
Cuadro comparativo de microcontroladores
ATMEL MICROCHIP FREESCALE
ATMMEGA16 PIC 16F877A MC68HC908AP16
RAM 1024 368 1024
ROM 16KB 14.3KB 16KB
EEPROM 512B 256B
PUERTOS E/S 32 33 32
OSCILADOR INTERNO 8MHz EXTERNO 20MHz INTERNO 32MHz
EXTERNO 16MHz
TIEMPO DE 1-5 Ciclos de Reloj 4/8 Ciclos de Reloj 1-7 Ciclos de Reloj
INSTRUCCIONES
Conclusión
Los microcontroladores en la actualidad son cada vez más utilizados, y su venta y
fabricación es un mercado en convergencia debido a los amplios usos de estos
dispositivos, Algunos fabricantes de microcontroladores superan el millón de unidades de
un modelo determinado producidas en una semana. Este dato puede dar una idea de la
masiva utilización de estos componentes.
Bibliografía
http://www.slideshare.net/romo91/el-procesador-y-sus-registros-internos
http://www.mikroe.com/chapters/view/79/capitulo-1-el-mundo-de-los-microcontroladores/
http://es.wikipedia.org/wiki/Microcontrolador#Unidad_de_control
http://www.dte.uvigo.es/documentacion/00002785.pdf