- Библиотеки
- Операторы
- Sketch
- Управляющие операторы
- Синтаксис
- Арифметические операторы
- Операторы сравнения
- Логические операторы
- Указатели доступа
- Битовые операторы
- Составные операторы
- Данные
- Типы данных
- Преобразование типов данных
- Область видимости переменных и квалификаторы
- Утилиты
- Функции
- Цифровой ввод/вывод
- Аналоговый вход/выход
- Расширенный ввод/вывод
- Время
- Математические функции
- Тригонометрические функции
- Символы
- Случайные числа
- Биты и байты
- Внешние Прерывания
- Прерывания
- Функции передачи данных
- Serial.print()
- Функции
Serial.print()
Описание
Передает данные на последовательный порт в виде удобочитаемого текста ASCII. Эта команда может принимать разные формы. Числа печатаются с использованием символа ASCII для каждой цифры. Аналогично печатаются и дробные цифры, по умолчанию с двумя десятичными разрядами. Байты отправляются как один символ. Символы и строки отправляются как есть. Например:
Serial.print(78) - выведет "78"
Serial.print(1.23456) - выведет "1.23"
Serial.print('N') - выведет "N"
Serial.print("Hello world.") - выведет "Hello world."
Необязательный второй параметр указывает формат для вывода;
Допустимые значения: BIN (двоичное или базовое 2),
OCT (восьмеричное или базовое 8),
DEC (десятичное или базовое 10),
HEX (шестнадцатеричное или базовое 16).
Для чисел с плавающей точкой этот параметр указывает количество десятичных знаков после запятой.
Например:
Serial.print(78, BIN) - выведет "1001110"
Serial.print(78, OCT) - выведет "116"
Serial.print(78, DEC) - выведет "78"
Serial.print(78, HEX) - выведет "4E"
Serial.println(1.23456, 0) - выведет "1"
Serial.println(1.23456, 2) - выведет "1.23"
Serial.println(1.23456, 4) - выведет "1.2346"
Функции Serial.print() можно передавать и строки, записанные во флеш-память контроллера. Для этого их нужно заключить в конструкцию F().
Например:
Serial.print(F(“Hello World”))
Для отправки отдельного байта используйте функцию Serial.write().
Синтаксис
Serial.print(val)
Serial.print(val, format)
Параметры
val: значение, которое необходимо вывести - любой тип данных
format: определяет систему счисления (для целочисленных типов), а также количество десятичных знаков после запятой (для чисел с плавающей точкой).
Возвращает
size_t (long): функция print() возвращает количество выведенных байт. Считывание этого значения не обязательно.
Пример
/*
Использует цикл for для вывода чисел в различных форматах.
*/
void setup() {
Serial.begin(9600); // открыть последовательный порт на скорости 9600 бит/с:
}
void loop() {
Serial.print("NO FORMAT"); // Выводим надпись
Serial.print("\t"); // выводим «Tab»
Serial.print("DEC");
Serial.print("\t");
Serial.print("HEX");
Serial.print("\t");
Serial.print("OCT");
Serial.print("\t");
Serial.print("BIN");
Serial.println(); // возврат каретки после последней записи
for (int x = 0; x < 64; x++) { // Выводим немного ASCII-символов
// выводим значение в различных форматах:
Serial.print(x); // выводим как десятичное число - то же, что и формат "DEC"
Serial.print("\t\t"); // Выводим два «Tab»
Serial.print(x, DEC); // выводим десятичное число ASCII-символами
Serial.print("\t"); // Выводим «Tab»
Serial.print(x, HEX); // выводим шестнадатиричное число ASCII-символами
Serial.print("\t"); // Выводим «Tab»
Serial.print(x, OCT); // выводим восьмиричное число ASCII-символами
Serial.print("\t"); // Выводим «Tab»
Serial.println(x, BIN); // выводим «х» как двоичное число
// затем при помощи println() добавляем символ возврата каретки
delay(200); // задержка в 200 миллисекунд
}
Serial.println(); // выводим еще один символ возврата каретки
}