Описание
Возвращает количество байт (символов) доступных для считывания из буфера последовательного порта. Под символами понимаются данные, которые уже приняты и хранятся в последовательном приемном буфере (который может хранить максимум 64 байта). Функция available() является наследником вспомогательного класса Stream.
Синтаксис
Serial.available();
// Только Arduino Mega:
Serial1.available();
Serial2.available();
Serial3.available();
Параметры
нет
Возвращаемые значения
количество байт, доступных для считывания.
Пример
int incomingByte = 0; // переменная для хранения данных, поступающих через последовательный порт
void setup() {
Serial.begin(9600); // открываем последовательный порт
//и задаем скорость обмена 9600 бод
}
void loop() {
// отправляем данные только после их получения:
if (Serial.available() > 0) {
// считываем входящий байт:
incomingByte = Serial.read();
// показываем, что именно мы получили:
Serial.print("I received: ");
Serial.println(incomingByte, DEC);
}
}
Пример для Arduino Mega
void setup() {
Serial.begin(9600);
Serial1.begin(9600);
}
void loop() {
// считываем с порта номер 0, отправляем на порт 1:
if (Serial.available()) {
int inByte = Serial.read();
Serial1.print(inByte, BYTE);
}
// считываем с порта номер 1, отправляем на порт 0:
if (Serial1.available()) {
int inByte = Serial1.read();
Serial.print(inByte, BYTE);
}
}
Смотрите также:
Stream.available()
begin()
end()
flush()
peek()
print()
write()
serialEvent()
Библиотека Serial
Справочник
Материалы взяты с официального сайта проекта Arduino и представлены по лицензии Creative Commons Attribution-ShareAlike 3.0 License.
Источник: http://arduino.cc/en/Serial/Available |