Keyboard.write()
描述
送出一个按键内容给电脑,这个动作相当于先按下然后再放开电脑键盘上的一个键。你可以用这个函式送出一些 ASCII 字元、键盘修饰键和特殊按键。
此函式只能对应键盘有支援的 ASCII 字元。例如:输入 ASCII 码 8(为空白键)是可以的,但输入 ASCII 码 26(为 Substitution)则不支援。当送出一个大写字母时,Keyboard.write()
会送出 shift 键和指定按键的内容给电脑,相当于您用实体键盘同时按下 shift 和指定按键一样。另外,此函式的参数也可以输入数字,此数字会视为一个 ASCII 字元被送出(例如:Keyboard.write(97)
,等同送出一个小写字母 a)
完整的 ASCII 字元列表,请参考 ASCIITable.com。
注意:在您呼叫 Keyboard.write()
函式之后,86Duino 会接管您的键盘,模拟键盘按下按键的行为。建议在 86Duino 上透过外接开关,来切换电脑键盘和 86Duino 之间的控制权。
语法
Keyboard.write(character)
参数
character
: 一个要送给电脑的 char 或 int 型别的字元。另外,您也可以用不同的表示法来指定要送出的 ASCII 字元,例如:使用下面的表示方式,都是代表要送出大写的英文字母 A:
Keyboard.write(65); // 以十进位表示大写字母 A Keyboard.write('A'); // 直接指定大写字母 A Keyboard.write(0x41); // 以十六进位表示大写字母 A Keyboard.write(0b01000001); // 以二进位表示大写字母 A
回传
int : 送出去的字元数
范例
void setup() { // 将 pin 2 设定为 INPUT_PULLUP 状态 // 这样它就会在外部按钮被按下时 // 呈现 LOW 的状态 pinMode(2, INPUT_PULLUP); Keyboard.begin(); } void loop() { // 假如按键被按下 if(digitalRead(2)==LOW){ // 送出一个大写英文字母 'A' Keyboard.write(65); } }
See also
- Keyboard.begin()
- Keyboard.end()
- Keyboard.press()
- Keyboard.print()
- Keyboard.println()
- Keyboard.release()
- Keyboard.releaseAll()
The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.