Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.write(): различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 17: | Строка 17: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Keyboard.write(character) | Keyboard.write(character) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 23: | Строка 23: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
character — символ, который нужно отправить компьютеру. Может быть отправлен в любом обозначении, которое применимо к символам. К примеру, все перечисленные ниже способы отправляют одно и то же значение — «65», что в ASCII-таблице означает «A». | character — символ, который нужно отправить компьютеру. Может быть отправлен в любом обозначении, которое применимо к символам. К примеру, все перечисленные ниже способы отправляют одно и то же значение — «65», что в ASCII-таблице означает «A». | ||
Keyboard.write(65); // отправляет «65», что в ASCII-таблице означает «А» | Keyboard.write(65); // отправляет «65», что в ASCII-таблице означает «А» | ||
Строка 33: | Строка 33: | ||
==Что возвращает== | ==Что возвращает== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Количество отправленных байтов (int). | Количество отправленных байтов (int). | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 39: | Строка 39: | ||
==Пример== | ==Пример== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
void setup() { | void setup() { | ||
// Делаем 2-ой контакт входным и включаем подтягивающий резистор, | // Делаем 2-ой контакт входным и включаем подтягивающий резистор, |
Версия от 14:38, 8 января 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Функция Keyboard.write()[1]
Отправляет нажатие на клавишу на компьютер, к которому подключена Arduino. То же самое, как если бы вы нажали и отпустили клавишу на вашей клавиатуре. С ее помощью можно отсылать некоторые ASCII-символы или дополнительные клавиши-модификаторы.
Этой функцией поддерживаются только те ASCII-символы, которые имеются на клавиатуре. Например, ASCII «8» работать будет (это ← Backspace ), а ASCII «26» (это «подмена символа») — уже нет. Когда вам нужны заглавные буквы, эта функция отсылает ⇧ Shift плюс нужный символ — то есть происходит то же самое, как если бы вы сами печатали на клавиатуре. Если отправить через эту функцию цифровое значение, то она воспримет его как номер ASCII-символа, то есть если написать Keyboard.write(97), вы тем самым отправите символ «a».
Полный список ASCII-символов можно посмотреть в этой таблице.
Синтаксис
Keyboard.write(character)
Параметры
character — символ, который нужно отправить компьютеру. Может быть отправлен в любом обозначении, которое применимо к символам. К примеру, все перечисленные ниже способы отправляют одно и то же значение — «65», что в ASCII-таблице означает «A».
Keyboard.write(65); // отправляет «65», что в ASCII-таблице означает «А»
Keyboard.write('A'); // то же самое, но нужный символ поставлен в кавычки
Keyboard.write(0x41); // то же самое, но в шестнадцатеричном виде
Keyboard.write(0b01000001); // то же самое, но в бинарном виде (странный выбор, но работать будет)
Что возвращает
Количество отправленных байтов (int).
Пример
void setup() {
// Делаем 2-ой контакт входным и включаем подтягивающий резистор,
// чтобы значение на контакте всегда было HIGH,
// за исключением случаев, когда он будет подключен к «земле»:
pinMode(2, INPUT_PULLUP);
Keyboard.begin();
}
void loop() {
// Если кнопка нажата...
if(digitalRead(2)==LOW){
// ...отправляем ASCII-символ «A»:
Keyboard.write(65);
}
}
См.также
- Keyboard.begin()
- Keyboard.end()
- Keyboard.press()
- Keyboard.print()
- Keyboard.println()
- Keyboard.release()
- Keyboard.releaseAll()