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.