Как сделать глобальный #define в Arduino IDE?

Тема в разделе "Arduino & Shields", создана пользователем Мерзкий Гуру, 21 дек 2014.

  1. Хочу пересобрать скетч, заменив везде Serial на Serial1.
    Понятно, что для этого нужно копилятору подсунуть ключик -DSerial=Serial1

    Arduino IDE умеет это делать?
     
  2. ctrl+f, найти Serial, заменить Serial1
     
  3. И во всех разделяемых библиотеках тоже?
    Нет, это неверный метод.
    Нужна именно глобальная опция компиляции.
     
  4. Druids91

    Druids91 Нерд

  5. Блин, я не про замену всего спрашивал.
    А про глобальный define при компиляции.

    Альтернативно одаренным: #define DEBUG для отладочной версии как сделать для всех файлов проекта?
     
  6. Unixon

    Unixon Оракул Модератор

    1) Добавить #include "globaldefs.h" внутрь Arduino.h, который в себя втягивают все библиотеки.
    2) При такой подстановке вы теряете Serial совсем, а это не есть хорошо, лучше тогда залезть в HardwareSerial.h и там переименовать все Serial* в _Serial*, а сопоставление _Serial* с Serial* сделать в своих макросах.

    3) Вот отчасти поэтому, проекты, требующие настройки, я в Arduino IDE и не держу.
     
  7. Спасибо.
    Да, придется, видимо, альтернативную IDE осваивать.