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

Материал из Онлайн справочника
Перейти к: навигация, поиск

{{#setlogo:ArduinoCommunityLogo.png}}

Перевод: Максим Кузьмин (Cubewriter)
Перевел 1837 статей для сайта.

Контакты:

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


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

Описание

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

Синтаксис

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

Параметры

Нет.

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

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

Пример

  1. int incomingByte = 0;   // для данных, приходящих через последовательный порт
  2.  
  3. void setup() {
  4.         Serial.begin(9600);     // открывает последовательный порт, задает скорость передачи данных на 9600
  5. }
  6.  
  7. void loop() {
  8.  
  9.         // Отправляем данные, только если получили данные:
  10.         if (Serial.available() > 0) {
  11.                 // Считываем входящий байт:
  12.                 incomingByte = Serial.read();
  13.  
  14.                 // Отображаем на Serial Monitor то, что получили:
  15.                 Serial.print("I received: ");  //  "Я получил: "
  16.                 Serial.println(incomingByte, DEC);
  17.         }
  18. }
  19. Пример для Arduino Mega
  20. void setup() {
  21.   Serial.begin(9600);
  22.   Serial1.begin(9600);
  23.  
  24. }
  25.  
  26. void loop() {
  27.   // Считываем с 0-ого порта, отсылаем на 1-ый порт:
  28.   if (Serial.available()) {
  29.     int inByte = Serial.read();
  30.     Serial1.print(inByte, BYTE);
  31.  
  32.   }
  33.   // Считываем с 1-ого порта, отсылаем на 0-ой порт:
  34.   if (Serial1.available()) {
  35.     int inByte = Serial1.read();
  36.     Serial.print(inByte, BYTE);
  37.   }
  38. }

См.также

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

  1. available()