此示例侦听来自串行端口的字节。 当接收到,板子发送一个击键回到计算机。 发送的击键比接收的击键高一个,因此如果从串行监视器发送“a",您将从连接到计算机的电路板接收到“b"。 “1"将返回“2",依此类推。
警告 - 当您使用 Keyboard.print()命令时,Leonardo,Micro或Due板会占用计算机的键盘。 为确保在使用此功能运行草图时不会失去对计算机的控制,请在调用Keyboard.print()之前设置可靠的控制系统。 该草图旨在仅在板通过串行端口接收到一个字节后才发送一个Keyboard命令。
必需的组件
您将需要以下组件 -
1 × Arduino Leonardo, Micro, 或 Due board
程序
只需使用USB电缆将电路板连接到计算机。
草图
在计算机上打开Arduino IDE软件。 在Arduino语言编码将控制你的电路。 通过单击新建打开一个新的草图文件。
注意 - 您必须在Arduino库文件中包含键盘库。 将键盘库文件复制并粘贴到文件中,名称\'libraries\'以黄色突出显示。
Arduino代码
/* Keyboard test For the Arduino Leonardo, Micro or Due Reads a byte from the serial port, sends a keystroke back. The sent keystroke is one higher than what's received, e.g. if you send a, you get b, send A you get B, and so forth. The circuit: * none */ #include "Keyboard.h" void setup() { // open the serial port: Serial.begin(9600); // initialize control over the keyboard: Keyboard.begin(); } void loop() { // check for incoming serial data: if (Serial.available() > 0) { // read incoming serial data: char inChar = Serial.read(); // Type the next ASCII value from what you received: Keyboard.write(inChar + 1); } }
代码说明
一旦编程,打开你的串口监视器并发送一个字节。 板子将回复一个击键,这是一个更高的数字。
结果
当你发送一个字节时,板子将以一个高于Arduino IDE串行监视器的数字的键击来回复。