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.