А в чём ошибка то? Почему он не будет работать? Я же там пояснил , что у тех функций вот такие переменные и они должны быть и у моей функции!
Вы сначала расскажите, что именно пытались сделать. #define у вас что должен делать по вашему представлению?
Это так не работает. Препроцессор, встретив такой макрос, просто тупо заменит все буковки "name" дальше по тексту на буковки "pin" и только потом отдаст текст компилятору.
#define и т.п. это директивы препроцессора. Препроцессор работает с текстом программы, он понятия не имеет о том, что у вас в программе есть какие-то там переменные. Ему на это наплевать, он работает с буковками.
Что значит "давать имя светодиоду"? Что значит "указывать номер пина"? Как вы представляете дальнейшую работу?
Всё по порядку. Эту библиотеку я делаю для маленького упрощения работы с электронными компонентами. Что Вы делаете для работы с таким компонентом? Правильно указываете функцию #define, в которой имеется выдуманное название (Имя) и номер пина (Номер пина). Вот код для мигания обычной и примитивной детали - "светика": Код (Text): #define LED 13 void setup() { pinMode(LED, OUTPUT); } void loop() { digitalWrite(LED, HIGH); delay(100); digitalWrite(LED, LOW); delay(900); } Чем же занимаюсь я: Код (Text): #include "GeneralF.h" void setup() { LED.Choise(13, FLASH); } void loop() { LED.NFull(Flash, 100, 900); } Я думаю посредством сравнения этих простых кодов вы поймете их без пояснений.
Лично мне 2-ой код нравится гораздо больше, так что если Вы поможете, то я продолжу создание этой библиотеки, а если есть какие идеи - говорите, это будет великолепно!
Что такое FLASH и что такое Flash ? С точки зрения C++ и с вашей. Они по ходу не совпадают совсем. Да, и что такое LED. Это классы, объекты, константы, переменные, макросы? Что? Вы это никак не определили в коде.
Есть разные способы определить константу. Один из самых простых и тупых - сделать текстуальную подстановку с помощью препроцессора. #define - это не функция! Можно именовать пины так: const int PIN_LED = 13; но такое определение будет расходовать память, тут вся надежда на оптимизацию кода компилятором.
LED это класс, а насчёт FLASH и Flash - это имя, которое я просто случайно поменял (Такого больше не повторится!)