Почему в строчке "#define RF pinMode(OUTPUT,12);" выдаёт ошибку?
- Войдите на сайт для отправки комментариев
Сб, 18/11/2017 - 00:34
В строчке "#define RF pinMode(OUTPUT,12);" выдаёт ошибку "expected ')' before ';' token". Если вставляю ещё одну скобку[#define RF pinMode(OUTPUT,12));] выдает ошибку "invalid use of void expression"
весь текст приведите. ошибка где-то выше
Ну и как минимум pinMode(pin, mode) а не наоборот.
Автор код откуда-то криво скопипастил. pinmode это уже всё-таки другая строка, а после RF что-то протетрял. Ищите!
[quote=Penni]
Ну и как минимум pinMode(pin, mode) а не наоборот.
Действительно, вы правы: #define RF pinMode(12, OUTPUT)
и после #define ";" не ставится, вернее после скобок.
и после #define ";" не ставится, вернее после скобок.
Зависит "от", что называется. Можно и ставить, иногда - ставить будет ошибкой:
Не стал создавать новую тему, эта кажется про синтаксис в #define, и наиболее подходящая.
Подскажите пожалуйста как правильно записать замену команды HT.setLedNow(L_AKB); на две команды lcd.setCursor(3, 1); lcd.print("O"); . Нужно для отладки, чтобы для макета не паять вторую светодиодную матрицу. Сразу скажу, что ctrl+F плохой вариант, ибо у каждого светодиода L_??? своя позиция, а писать сразу для светодиодов и удалить в будущем идущий подрят блок #define более заманчивый способ.
Изначально пробовал #define HT.setLedNow(L_AKB); lcd.setCursor(3, 1); lcd.print("O"); Но даже когда сократил и убрал ; всё равно как-то об точку спотывается при компиляции и ошибку выдаёт, пока есть в коде HT :(
Если в #define убираю после HT точку, ошибок не выдаёт. Может можно как-то экранировать эту точку?
C:\temp\oshibka__define_\oshibka__define_.ino: In function 'void setup()':
oshibka__define_:4: error: expected primary-expression before '.' token
#define HT.setLedNow(L_AKB) lcd.print("O")
^
C:\temp\oshibka__define_\oshibka__define_.ino:7:3: note: in expansion of macro 'HT'
HT.begin(0x00);
^
oshibka__define_:4: error: expected ';' before 'lcd'
#define HT.setLedNow(L_AKB) lcd.print("O")
^
C:\temp\oshibka__define_\oshibka__define_.ino:7:3: note: in expansion of macro 'HT'
HT.begin(0x00);
^
exit status 1
expected primary-expression before '.' token
P.S. Ок, паяю сижу новую матрицу...
У меня похожая ошибка в скачаной библиотеке. Выдает ошибку "was not declared in this scope OUTPUT" в 8-10 строке,
а если их убрать , то в строке
'HIGH' was not declared in this scope