встретилась в коде такая конструкция, что она знАчит?
bool TimerHandler1(struct repeating_timer *t)
{
(void) t; // чо это с параметром стало? И зачем? Кста, t потом нигде не используеца
static bool toggle1 = false;
static bool started = false;
if (!started)
{
started = true;
pinMode(PIN_D1, OUTPUT);
}
#if (TIMER_INTERRUPT_DEBUG > 0)
Serial.print("ITimer1 called, millis() = "); Serial.println(millis());
#endif
//timer interrupt toggles outputPin
digitalWrite(PIN_D1, toggle1);
toggle1 = !toggle1;
return true;
}
1 лайк
b707
2
может для того и вставили приведение к типу, чтобы убрать предупреждение о неиспользуемой переменной?
Что-либо еще без остального кода сложно сказать.
1 лайк
это вся функция, t видна только в ней.
Ни разу такого не встречал и не знал, что так можно было. Не язык, а писец какойто.
2 лайка
ua6em
6
так я у тебя выражение “лжывый Ваш СИ” слямзил, внаглую, невзирая на (c) )))
А разве без 3 строки есть ругань ???
Ворнинги должны выдаваться.
У меня так было в исходниках, где дефайнами исключалась часть кода (enable/disable feature). Постоянно коричневым сыпало в IDE.
1 лайк
Сейчас @anonimSimen закомментирует и расскажет …
BOOM
10
Деда, можно я тоже тут кое-чего спрошу?
Как так получается? Например, микроконтроллер PIC16F628A:
Объем памяти программ 3.5 кбайт(2k x 14)
Как так? Ну то есть - почему 14?
Объясните, пожалуйста, доходчиво, сам не соображу…
Я с PICами незнаком, жди взрослых.
8 бит для всех команд мало, а 16 много.
я с работы уже уехал, у мня уже 18:45 на часах. Завтра
b707
16
я такое у китайцев в коде видел.
Оно у них дефайном оформлено:
#define UNUSED(X) (void)X
и потом просто пишут в коде
UNUSED(data);
получается самодокументированный код 
2 лайка
есть еще такое
#define UNUSED(x) ((x)=(x))
2 лайка
BOOM
19
О как. А я, признаться, думал что flash мк всегда по 8 бит (1 байт).