Programación C Para Sistemas Integrados - LUCAS-NÜLLE C515C Guia De Ejercicios Para El Estudiante

Tabla de contenido
Programación C de microcontroladores (C515C)
Programación C para Sistemas Integrados
La programación C para Sistemas Integrados (Embedded Systems) con microcontroladores
(MC) presenta algunas particularidades en comparación con la programación C para
Estaciones de trabajo (Workstations). Éstas resultan por una parte de la multitud de posibles
aplicaciones con MC y por otra de la necesidad de poder acceder directamente al hardware
implementado del MC (memorias, puertos, temporizadores, ...). También el número muy
grande y siempre en aumento de diferentes familias de MC ha dado lugar a gran número de
compiladores C en el mercado, debiendo los compiladores ser adaptables a los diferentes
derivados de una familia MC.
Otra diferencia esencial reside en el hecho de que el desarrollo de programas para un
Sistema Integrado se realiza normalmente para un nuevo diseño de hardware. Allí se debe
partir de fallos tanto en el hardware como en el software. También cabe la posibilidad de que
un compilador nuevo presente problemas, de forma que la puesta en servicio y la optimación
de un sistema nuevamente desarrollado se convierte en un desafío para el diseñador. Unos
buenos conocimientos del hardware y software, así como una metódica meditada respecto a
la puesta en servicio y a la depuración constituyen las condiciones previas para un trabajo
con éxito.
En la programación C para Sistemas Integrados son necesarias adaptaciones o
ampliaciones específicas del microcontrolador frente al estándar C ANSI. Estos cambios
limitan el transporte del programa para diferentes sistemas de destino, pero resultan
imprescindibles. Especialmente en caso de recursos limitados del MC, estas ampliaciones
de lenguaje resultan indispensables para poder programar ahorrando en recursos. En
detalle, ello se refiere a las siguientes áreas de problema:
Localización de datos y códigos
Apoyo del procesamiento de bits individuales y utilización de variables de bits
Variables en registros
Tipos de direccionamiento especiales
Modelos de memoria específicos
Control de sistema a nivel de interrupción
Ejemplos concretos para estas adaptaciones (ampliaciones C ANSI) son los siguientes:
Tipos de datos adicionales, p.ej. sfrb
Clases de memoria adicionales para variables, p. ej. tiny
Especificación de funciones, p. ej. interrupt
Directivas de control para conectar y desconectar ampliaciones de lenguaje
Las características esenciales de los compiladores C para MC son sobre todo el apoyo
confortable del procesamiento de bits individuales, la utilidad especial de las diferentes
zonas de memoria on chip y el apoyo de interrupciones de hardware.
Los fabricantes de MC actuales apoyan mediante características de diseño especiales la
posibilidad de generar códigos compactos por medio del compilador C. Como ejemplo
mencionamos la familia AVR de ATMEL que a ese respecto dispone de características de
arquitectura óptimas. Así, el Core dispone de más de 32 registros de trabajo universalmente
utilizables pudiéndose emplear cada registro como fuente o como destino de datos. Ello
24
CMC 5
Introducción CMC 5
Tabla de contenido
loading

Este manual también es adecuado para:

Sh5004-1e

Tabla de contenido