if(down) это все равно что if(down==true),if(!down) это if(down==false).
В Arduino IDE также можно писать не только для булевых переменных (классический С этого не допускает). В Ардуино выражение if(down) означает "если down отлично от нуля, то". false эквивалентно нулю.
Добавлено спустя 18 минут 45 секунд:
dimamichev писал(а):Структуру легче понять мне
А мне все еще тяжело потому как нет там четко выраженной структуры, какая то куча- мала. Хорошо бы еще пользоваться отступами для {}, чтобы границы логической структуры четко просматривались. В IDE Ардуино есть специальная функция Auto Format или ctrl-T
Добавлено спустя 3 часа 31 минуту: