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

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
м (Замена текста — «<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">» на «<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">»)
 
Нет описания правки
Строка 1: Строка 1:
{{#setlogo:ArduinoCommunityLogo.png}}
{{Arduino панель перехода}}
{{Arduino панель перехода}}
{{Перевод от Сubewriter}}
{{Перевод от Сubewriter}}
Строка 77: Строка 76:


<references />
<references />
{{Навигационная таблица/Справочник языка Arduino}}
{{Навигационная таблица/Arduino библиотеки}}
[[Категория:Справочник языка Arduino]]
[[Категория:Справочник языка Arduino]]

Версия от 23:44, 19 июня 2019

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


Функция 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); 
  }
}

См.также

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