Arduino - 键盘消息

在此示例中,按下按钮时,会将文本字符串作为键盘输入发送到计算机。该字符串报告按下按钮的次数。对 Leonardo 进行编程和接线后,打开您最喜欢的文本编辑器查看结果。

警告 − 使用 Keyboard.print() 命令时,Arduino 会接管您计算机的键盘。为确保您在运行带有此功能的草图时不会失去对计算机的控制,请在调用 Keyboard.print() 之前设置可靠的控制系统。此草图包含一个用于切换键盘的按钮,以便它仅在按下按钮后运行。

所需组件

您将需要以下组件 −

  • 1 × 面包板
  • 1 × Arduino Leonardo、Micro 或 Due 板
  • 1 × 瞬时按钮
  • 1 × 10k 欧姆电阻

步骤

按照电路图,将组件连接到面包板上,如下图所示。

键盘消息面包板

草图

在计算机上打开 Arduino IDE 软件。使用 Arduino 语言编码将控制您的电路。单击"新建"打开新的草图文件。

Sketch

Arduino 代码

/*
键盘消息测试 对于 Arduino Leonardo 和 Micro,
按下按钮时发送文本字符串。
电路:
* 按钮从引脚 4 连接到 +5V
* 10 千欧姆电阻从引脚 4 连接到地
*/

#include "Keyboard.h"
const int buttonPin = 4; // 按钮的输入引脚
int previousButtonState = HIGH; // 用于检查按钮的状态
int counter = 0; // 按钮按下计数器

void setup() {
    pinMode(buttonPin, INPUT); // 将按钮引脚设为输入:
    Keyboard.begin(); // 初始化对键盘的控制:
}

void loop() {
    int buttonState = digitalRead(buttonPin); // 读取按钮:
    if ((buttonState != previousButtonState)&& (buttonState == HIGH)) // 并且当前按下:
    {
        // 增加按钮计数器
        counter++;
        // 输出消息
        Keyboard.print("您按下了按钮 ");
        Keyboard.print(counter);
        Keyboard.println(" 次。");
    }
    // 保存当前按钮状态以供下次比较:
    previousButtonState = buttonState;
}

需要注意的代码

将按钮的一个端子连接到 Arduino 上的引脚 4。将另一个引脚连接到 5V。将电阻用作下拉电阻,通过将其从引脚 4 连接到地面来提供地面参考。

对电路板进行编程后,拔下 USB 电缆,打开文本编辑器并将文本光标放在输入区域中。再次通过 USB 将电路板连接到计算机,然后按下按钮在文档中写入。

结果

使用任何文本编辑器,它都会显示通过 Arduino 发送的文本。