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.