что такое digitalWrite(DIR_RIGHT, reverseRight ? LOW : HIGH);

Тема в разделе "Arduino & Shields", создана пользователем ksv, 29 сен 2012.

  1. ksv

    ksv Нуб

    Доброго времени суток.

    Собираю четырехколесную платформу. Уже катается назад-вперед и поворачивает. Код взял из примера с просторов инета. Сейчас собираюсь допиливать: навешивать сенсоры, диоды и тп.

    Пытаюсь вспоминать программирование, давненько уже не занимался:
    Пожалуйста поясните что означает выражение: reverseRight ? LOW : HIGH

    смысл строки вцелом понятен просто не доходит значения знаков ? и :
    на всякий случай код функции:
    void go(int speed, bool reverseLeft, bool reverseRight, int duration)
    {
    analogWrite(SPEED_LEFT, speed);
    analogWrite(SPEED_RIGHT, speed);
    digitalWrite(DIR_LEFT, reverseLeft ? LOW : HIGH);
    digitalWrite(DIR_RIGHT, reverseRight ? LOW : HIGH);
    delay(duration);
    }

    Пожалуйста сильно не пинайте и вгугл не посылайте)

    И еще как организовать зарядку аккумуляторов в http://amperka.ru/collection/Mehanika/product/Chetyryohkolyosnaya-platforma если можно то схемку поподробнее о подключении тумблера и разъема. А то каждый раз раскручивать платформу и заряжать зарядным устройством не хочется.

    Заранее спасибо.
     
  2. wellgold

    wellgold Нуб

    Я могу ошибиться, но это по моему передача нового значения в зависимости от имеющегося (так сказать подмена, некий аналог If Else и прочих) . Т.е. если reverseRight = false то отправляется LOW и наоборот, reverseRight = true то передаётся HIGH. А "?" и ":" это операторы, определяющие где менять и на что менять.
     
  3. Unixon

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

  4. DmitryDzz

    DmitryDzz Нуб

    А вот вам ссылка на электропроводку.
     
  5. wellgold

    wellgold Нуб

    По поводу зарядки, если я вас правильно понял, оставьте тумблер на месте, а разьём припаяйте к проводам, которые идут от батареи в параллель питанию вашего устройства. Только очень рекомендую, в этом случае, последовательно повесить предохранитель в разрыв любого провода (но всё таки лучше к "+") идущего к разъёму. Предохранитель, примерно рассчитайте так: (Ток заряда * 10) или узнайте максимальный ток разряда для вашей батареи, в зависимости от полученных значений берите то что меньше. Выбирайте подходящий предохранитель (в меньшую сторону по току). Он спасёт вашу батарею от случайных форс-мажоров :)
     
  6. ksv

    ksv Нуб

    Спасибо большое, всем!