Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos » Arduino y Raspberry Pi
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

02/06/2016 #1

Avatar de Scooter

Arduino: Compilado condicional
Estoy desarrollando un programa para arduino pero se tiene que poder ejecutar en distintas placas, por ello quisiera compilar una cabecera diferente según que placa se use.
Se puede usar el viejo truco de 'comentar' una parte del código pero quisiera saber si ahy una forma mas elegante de hacerlo, en ensamblador se suele poder pero no se si el C/wiring lo permite.
He buscado información pero lo que sale es referente a poner un if en el código y la cosa no va por ahí.
02/06/2016 #2
Moderador

Avatar de D@rkbytes

¿No se puede usar el clásico #ifdef o #ifndef en Arduino?

#ifdef ArduinoX
// Codígo
#elif
// Código
#endif
02/06/2016 #3

Avatar de Nuyel

pues si vieras el código que viene con el Arduino, para asignar las DEF para cada placa diferente en primera las dividen en las arquitecturas con:

Código:
// Architecture specific include 
#if defined(ARDUINO_ARCH_AVR) 
#include "avr/libreria.h" 
#elif defined(ARDUINO_ARCH_SAM) 
#include "sam/libreria.h" 
#elif defined(ARDUINO_ARCH_SAMD) 
#include "samd/libreria.h" 
#else 
#error "This library only supports boards with an AVR, SAM or SAMD processor." 
#endif
Luego dentro viene una configuración especifica para cada arquitectura usando más #if por cada chip especifico.
03/06/2016 #4

Avatar de Scooter

Si, por ahí va la historia.
Gracias.
Voy a tirar del hilo a ver que aclaro.
En principio seria poner dos o tres cabeceras alternativas en el programa

Enviado desde mi fnac 5.7 mediante Tapatalk
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Arduino y Raspberry Pi

Cerrar
Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos » Arduino y Raspberry Pi

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.