Буфер Serial

Тема в разделе "Arduino & Shields", создана пользователем kiko817, 12 окт 2013.

  1. kiko817

    kiko817 Нуб

    Подскажите пожайлуста, как очистить буфер последовательного порта в Arduino IDE, Serial.flush() не помогает. Необходимо сразу после считывания байта, опустошить буфер. Спасибо.
     
  2. Unixon

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

    while (Serial.available()) Serial.read();

    Раньше flush() по ошибке очищал, сейчас это поправили, а очистку отдельно так и не добавили...
     
  3. Megakoteyka

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

    Реализация Serial сидит в %ARDUINO_IDE_DIR%\hardware\arduino\cores\arduino\HardwareSerial.c
    Можно найти ту самую старую версию Arduino IDE, взять оттуда "ошибочный" flush() и использовать его. Будет работать немного шустрее за счет обращения к регистрам вместо вызова функций в цикле, но совсем немного - наверняка даже разницы не заметите, если не будете специально замерять :)