Arduino:Справочник языка Arduino/Библиотеки/Keyboard/Keyboard.write(): различия между версиями
Myagkij (обсуждение | вклад) |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 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-символы]] или дополнительные клавиши-модификаторы. | Отправляет нажатие на клавишу на [[компьютер]], к которому подключена [[Arduino]]. То же самое, как если бы вы нажали и отпустили клавишу на вашей клавиатуре. С ее помощью можно отсылать некоторые [[ASCII-символы]] или дополнительные клавиши-модификаторы. | ||
Этой функцией поддерживаются только те [[ASCII-символы]], которые имеются на клавиатуре. Например, [[ASCII]] «8» работать будет (это {{клавиша|Backspace}}), а [[ASCII]] «26» (это «подмена символа») — уже нет. Когда вам нужны заглавные буквы, эта функция отсылает {{клавиша|Shift}} плюс нужный символ — то есть происходит то же самое, как если бы вы сами печатали на клавиатуре. Если отправить через эту функцию цифровое значение, то она воспримет его как номер [[ASCII-символ]]а, то есть если написать '''Keyboard.write(97)''', вы тем самым отправите символ '''«a»'''. | Этой функцией поддерживаются только те [[ASCII-символы]], которые имеются на клавиатуре. Например, [[ASCII]] «8» работать будет (это {{клавиша|Backspace}}), а [[ASCII]] «26» (это «подмена символа») — уже нет. Когда вам нужны заглавные буквы, эта функция отсылает {{клавиша|Shift}} плюс нужный символ — то есть происходит то же самое, как если бы вы сами печатали на клавиатуре. Если отправить через эту функцию цифровое значение, то она воспримет его как номер [[ASCII-символ]]а, то есть если написать '''Keyboard.write(97)''', вы тем самым отправите символ '''«a»'''. |
Версия от 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()