Arduino:Справочник языка Arduino/Библиотеки/Serial/available(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) м (Замена текста — «<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">») |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{Arduino панель перехода}} | {{Arduino панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
Строка 77: | Строка 76: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Справочник языка Arduino}} | |||
{{Навигационная таблица/Arduino библиотеки}} | |||
[[Категория:Справочник языка Arduino]] | [[Категория:Справочник языка Arduino]] |
Версия от 23:44, 19 июня 2019
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция 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);
}
}