Optimizaciones de compilador IDE de Arduino 1.6. x = código más rápido (1 / 7 paso)

Paso 1: compiladores

Una búsqueda en internet le dirá mucho más de lo que pueda acerca de los compiladores, que es aquí sólo un breve resumen.

Los bocetos de Arduino están escritos en un lenguaje de alto nivel como C++ o C pero el microcontrolador ejecuta las instrucciones de código máquina, por lo tanto la tarea del compilador es convertir (traducir viz) el código legible humano en una secuencia de instrucciones que el microprocesador puede ejecutar. Básicamente el compilador convierte un idioma a otro.

Cuando el compilador para crear el código ejecutable hay una serie de opciones que se pueden invocar, en el caso del compilador GCC utilizado el IDE de Arduino hay 5 opciones de optimización de tamaño y velocidad como detallados aquí. Las diferentes opciones de causan el compilador hacer más esfuerzo para optimizar el código ejecutable para el tamaño o la velocidad.

La optimización por defecto en el IDE de Arduino está para el tamaño, esta opción es "-Os" en la línea de comandos. La razón es tan diferente el código tamaños y velocidades generados por las dos Arduino IDE es porque se utiliza una versión mucho más reciente del compilador GCC en el IDE de última. Claramente esta nueva versión crea un ejecutable significativamente menor pero la pena que aparece es una significativamente más lenta velocidad de ejecución.

Unas suaves palabras de precaución

Cabe señalar que, en casos raros, cambiar el nivel de optimización puede afectar el comportamiento un programa cuando se ejecuta. Esto es porque trata de optimización para "reescribir" el software para hacer un "tiempo" y "tamaño" ejecutable eficiente. La probabilidad de que la función del software se ve afectada depende de la "agresividad" del compilador modifica el código.

El nivel de optimización predeterminada para el IDE de Arduino (-Os) ya es bastante agresivo por lo que es muy poco probable que usted verá nuevos problemas de comportamiento introducidos si se cambia el nivel de optimización.

Porque el compilador sigue un conjunto de reglas que a veces necesitamos incluir "directivas de compilación" en el propio software para evitar problemas durante el proceso de optimización, un problema clásico es la falta de declarar las variables como "volátil" cuando son utilizados por un programa principal y una rutina de interrupción... Si no sabes qué "volátil" significa entonces Google "por qué es volátil".

Artículos Relacionados

El chipkit dp32 de programación usando el IDE de Arduino

El chipkit dp32 de programación usando el IDE de Arduino

chipKIT juntas tienen más memoria y potencia de cálculo que muchas placas Arduino, y como resultado, son mucho mejores en la manipulación de datos.En el otro lado, el IDE de Arduino es fácil de usar y entender.Así que qué pasa si nos podríamos interc
Programación utilizando el IDE de Arduino a la placa ChipKIT Dp32

Programación utilizando el IDE de Arduino a la placa ChipKIT Dp32

Esta guía muestra cómo configurar el IDE de Arduino para que puede ser utilizado para programar el microcontrolador chipKIT dp32 .Paso 1: Descargar e instalar el IDE de Arduino Este paso es para aquellos que no han instalado el IDE de Arduino. No dud
Programación ESP8266-12E utilizando software/IDE de Arduino

Programación ESP8266-12E utilizando software/IDE de Arduino

El ESP8266 es como un Arduino con un integrados Wi-Fi, el MCU y circuitos de WiFi se encuentran en el mismo chip. Considerar Arduino + WiFi Shield = ESP8266. En este instructable proporcionará una guía paso a paso a adquirir y una ESP8266-12E WIFI de
¿Cómo instalar, actualizar, desinstalar el IDE de Arduino en Windows?

¿Cómo instalar, actualizar, desinstalar el IDE de Arduino en Windows?

Hoy, me voy para mostrar cómo instalar, actualizar o desinstalar el IDE de Arduino en su equipo (Microsoft Windows XP/Vista/7/8/8.1/Win10 e.t.c.running) como ustedes saben, el IDE de Arduino es multi plataforma de desarrollo funcional.La necesidad de
Sensor de temperatura DS18B20 ESP8266 IDE de Arduino, nube EasyIoT

Sensor de temperatura DS18B20 ESP8266 IDE de Arduino, nube EasyIoT

En este tutorial mostramos cómo crear el logger de temperatura DS18B20 de ESP8266 WiFi conectado a la nube de EasyIoT. Todo el material cuesta menos de 5$ en ebay.Nube de EasyIoT trabaja también en el teléfono móvil o tablet. También está disponible
Desarrollo de un proyecto de firefly ATtiny utilizando el IDE de Arduino y su

Desarrollo de un proyecto de firefly ATtiny utilizando el IDE de Arduino y su

Hace poco vi un interesante proyecto de Karl Lunt que utiliza un ATtiny13 para imitar una luciérnaga (http://www.seanet.com/~karllunt/fireflyLED.html). Esto en sí mismo, no es único, pero me puso a pensar acerca de uno de mis primeros proyectos de mi
ESP8266 estación del (independiente) utilizando el IDE de Arduino y plataforma en la nube GadgetKeeper

ESP8266 estación del (independiente) utilizando el IDE de Arduino y plataforma en la nube GadgetKeeper

Esta es una actualización de mi proyecto anterior GadgetKeeper estación. En este proyecto estoy construyendo la misma funcionalidad pero sólo con ESP8266 WiFi SoC independiente con sensor de temperatura y humedad DHT11. En el proyecto anterior usé Ar
ESP8266 WiFi temperatura humedad monitoreo aplicación web utilizando el IDE de Arduino

ESP8266 WiFi temperatura humedad monitoreo aplicación web utilizando el IDE de Arduino

La semana pasada recibí una ESP8266(adafruit). el nuevo ESP8266 tiene cargador de arranque de arduino hace posible para el código del programa arduino directamente en el ESP8266. Este ESP8266 viene con UART, I2C y GPIO. con este nuevo módulo wifi no
Guía del idiota a la programación de AVR en el barato (con el IDE de Arduino!)

Guía del idiota a la programación de AVR en el barato (con el IDE de Arduino!)

Microcontroladores son, sin duda, sorprendente pequeñas cosas. Son versátiles, potentes y extremadamente pequeños. Lamentablemente, el último rasgo es también compartido por mi cartera y mis habilidades de programación. Mi comprensión de C es pobre,
Configurar el IDE de Arduino al programa ESP8266

Configurar el IDE de Arduino al programa ESP8266

ESP8266 son los módulos Wi-Fi bajo costo ampliamente disponibles. Consisten en solo chip CPU con GPIO, analógico canal, canales Serial, I2C, SPIy lo más importante en el chip Wi-Fi. Comercializado inicialmente como un bajo costo módulos Wi-Fi para Ar
Steampunk ESP8266 Internet con reloj utilizando el IDE de Arduino

Steampunk ESP8266 Internet con reloj utilizando el IDE de Arduino

¿Qué se obtiene cuando un anillo de NeoPixel, una placa Arduino Wifi barata y un láser de corte entrar a un salón de Punk de vapor?Una moda Steampunk Internet diseñado con reloj utilizando el ESP8266 y el IDE de Arduino por supuesto!Aquí es un proyec
Ejecutar el IDE de Arduino en ChipKIT DP32

Ejecutar el IDE de Arduino en ChipKIT DP32

Este instructable proporciona paso a paso acerca de cómo ejecutar programas de arduino usando chipKIT DP32Paso 1: Material necesario: Hardware:ChipKIT DP32 (http://www.microchipdirect.com/ProductSearch.aspx?keywords=TDGL019)Cable MicroUSBCable MiniUS
Pasos para configurar el IDE de Arduino para NODEMCU ESP8266

Pasos para configurar el IDE de Arduino para NODEMCU ESP8266

En la siguiente Instructable aprenderemos cómo instalar el IDE de Arduino para ESP8266 al final de este Instructable podemos ejecutar código de arduino en ESP8266Paso 1: Instalar el Software de Arduino IDEInstalar el software de Arduino IDE desde el
Configurar el IDE de Arduino para programar el ESP8266-01

Configurar el IDE de Arduino para programar el ESP8266-01

Este Instructable corto detalla cómo instalar y configurar el IDE de Arduino que puede escribir y compilar código para el ESP8266-01. Aunque destinado principalmente a la PC de Windows (Win 7) debería funcionar igual de bien para un Mac.Fue escrito p