Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.write(): различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
(не показано 7 промежуточных версий 1 участника) | |||
Строка 5: | Строка 5: | ||
=Функция Keyboard.write()<ref>[https://www.arduino.cc/en/Reference/KeyboardWrite Keyboard.write()]</ref>= | =Функция Keyboard.write()<ref>[https://www.arduino.cc/en/Reference/KeyboardWrite Keyboard.write()]</ref>= | ||
Отправляет нажатие на клавишу на компьютер, к которому подключена | Отправляет нажатие на клавишу на [[компьютер]], к которому подключена [[Arduino]]. То же самое, как если бы вы нажали и отпустили клавишу на вашей клавиатуре. С ее помощью можно отсылать некоторые [[ASCII-символы]] или дополнительные клавиши-модификаторы. | ||
Этой функцией поддерживаются только те | Этой функцией поддерживаются только те [[ASCII-символы]], которые имеются на клавиатуре. Например, [[ASCII]] «8» работать будет (это {{клавиша|Backspace}}), а [[ASCII]] «26» (это «подмена символа») — уже нет. Когда вам нужны заглавные буквы, эта функция отсылает {{клавиша|Shift}} плюс нужный символ — то есть происходит то же самое, как если бы вы сами печатали на клавиатуре. Если отправить через эту функцию цифровое значение, то она воспримет его как номер [[ASCII-символ]]а, то есть если написать '''Keyboard.write(97)''', вы тем самым отправите символ '''«a»'''. | ||
Полный список | Полный список [[ASCII-символ]]ов можно посмотреть в [http://www.asciitable.com этой таблице]. | ||
''' | {{Внимание1| | ||
При использовании '''Keyboard.write()''' клавиатурный функционал перейдет под управление [[Arduino]]. Поэтому перед тем, как использовать эту команду, убедитесь, что ваша цепь настроена таким образом, чтобы не терять управление [[компьютер]]ом. Для этого можно воспользоваться, к примеру, специальной кнопкой, которая будет включать/выключать управление клавиатурой при помощи [[Arduino]]. | |||
}} | |||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Keyboard.write(character) | Keyboard.write(character) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 21: | Строка 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-таблице означает «А» | ||
Строка 31: | Строка 33: | ||
==Что возвращает== | ==Что возвращает== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Количество отправленных байтов (int). | Количество отправленных байтов (int). | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 37: | Строка 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-ой контакт входным и включаем подтягивающий резистор, | ||
Строка 57: | Строка 59: | ||
=См.также= | =См.также= | ||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.begin()|Keyboard.begin()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.end()|Keyboard.end()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.press()|Keyboard.press()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.print()|Keyboard.print()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.println()|Keyboard.println()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.release()|Keyboard.release()]] | |||
* [[Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.releaseAll()|Keyboard.releaseAll()]] | |||
=Внешние ссылки= | =Внешние ссылки= | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Arduino}} | |||
[[Категория:Справочник языка Arduino]] | [[Категория:Справочник языка Arduino]] |
Текущая версия от 11:25, 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()
Внешние ссылки
Arduino продукты | |
---|---|
Начальный уровень | Arduino Uno • Arduino Leonardo • Arduino 101 • Arduino Robot • Arduino Esplora • Arduino Micro • Arduino Nano • Arduino Mini • Arduino Starter Kit • Arduino Basic Kit • MKR2UNO • TFT-дисплей Arduino |
Продвинутые функции | Arduino Mega 2560 • Arduino Zero • Arduino Due • Arduino Mega ADK • Arduino Pro • Arduino Motor Shield • Arduino USB Host Shield • Arduino Proto Shield • MKR Proto Shield • MKR Proto Large Shield • Arduino ISP • Arduino USB 2 Serial Micro • Arduino Mini USB Serial Adapter |
Интернет вещей | Arduino Yun • Arduino Ethernet • Arduino MKR1000 • Arduino WiFi 101 Shield • Arduino GSM Shield V2 • Arduino WiFi Shield • Arduino Wireless SD Shield • Arduino Wireless Proto Shield • Arduino Ethernet Shield V2 • Arduino Yun Shield • Arduino MKR1000 Bundle |
Носимые устройства | Arduino Gemma • Lilypad Arduino Simple • Lilypad Arduino Main Board • Lilypad Arduino USB • LilyPad Arduino SimpleSnap |
3D-печать | Arduino Materia 101 |
Устаревшие устройства | - |
Примеры Arduino | |
---|---|
Стандартные функции | |
Основы |
|
Цифровой сигнал |
|
Аналоговый сигнал |
|
Связь |
|
Управляющие структуры |
|
Датчики |
|
Дисплей |
Примеры, объясняющие основы управления дисплеем:
|
Строки |
|
USB (для Leonardo, Micro и Due плат) |
В этой секции имеют место примеры, которые демонстрируют использование библиотек, уникальных для плат Leonardo, Micro и Due.
|
Клавиатура |
|
Мышь |
|
Разное |