Arduino:Справочник языка Arduino/Библиотеки/Serial/available(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
Строка 77: Строка 77:
<references />
<references />


{{ads}}
{{Навигационная таблица/Справочник языка Arduino}}
{{Навигационная таблица/Справочник языка Arduino}}
{{Навигационная таблица/Arduino библиотеки}}
{{Навигационная таблица/Arduino библиотеки}}
{{Навигационная таблица/Arduino продукты}}
{{Навигационная таблица/Arduino/Примеры}}
{{Навигационная таблица/Телепорт}}


[[Категория:Справочник языка Arduino]]
[[Категория:Справочник языка Arduino]]

Версия от 18:49, 15 февраля 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция available()[1]

Описание

Эта функция получает информацию о числе байтов (символов), доступных для считывания через последовательный порт. Это данные, которые уже пришли и хранятся в буфере последовательного порта (который может хранить до 64 байтов). Функция .available() наследует от вспомогательного класса Stream.

Синтаксис

Serial.available()
Serial1.available(), Serial2.available(), Serial3.available()  только для Mega

Параметры

Нет.

Что возвращает

Число байтов, доступных для считывания.

Пример

int incomingByte = 0;   // для данных, приходящих через последовательный порт

void setup() {
        Serial.begin(9600);     // открывает последовательный порт, задает скорость передачи данных на 9600
}

void loop() {

        // Отправляем данные, только если получили данные:
        if (Serial.available() > 0) {
                // Считываем входящий байт:
                incomingByte = Serial.read();

                // Отображаем на Serial Monitor то, что получили:
                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); 
  }
}

См.также

Внешние ссылки