OneButton

  1. 示例代码

本示例会使用OneButton库来实现板载A B按键功能。

注意

掌控板A键连接到P5,B键连接到P11。

+搜索并下载OneButton库,安装到arduino IDE中,如下图。

../../../../_images/OneButton.png

示例-OneButton.ino
 1/* A B按键使用示例
 2*/
 3#include <OneButton.h>
 4
 5#define PIN_BUTTON_A P5
 6#define PIN_BUTTON_B P11
 7
 8OneButton button_A(PIN_BUTTON_A);
 9OneButton button_B(PIN_BUTTON_B);
10
11static void Clicked(void *param){
12  OneButton *button = (OneButton *)param;
13  if(button->pin() == PIN_BUTTON_A){
14    Serial.println("Button A clicked.");
15  }else if(button->pin() == PIN_BUTTON_B){
16    Serial.println("Button B clicked.");
17  }
18}
19
20
21void setup()
22{
23    Serial.begin(115200);
24
25    /*设置按键点击回调函数*/
26    button_A.attachClick(Clicked, &button_A);
27    button_B.attachClick(Clicked, &button_B);
28}
29
30void loop()
31{
32    button_A.tick();
33    button_B.tick();
34
35    delay(10); /* let this time pass */
36}

  1. 运行效果

按A键,串口打印”Button A clicked.”,按B键打印”Button B clicked.”。