# Unit BUTTON {docsify-ignore-all}

***
:memo:**[描述](#描述)** :octocat:**[例程](#例程)** :electric_plug:**[原理图](#原理图)** 🛒**[购买链接](https://m5stack.com/collections/m5-unit/products/mini-button-unit)**
**[EasyLoader](#EasyLoader)**
## 描述
**BUTTON** 是一个单按键 Unit,通过检测输入引脚高/低电平变化,进而判断按键状态.
**如下图所示:**
**输出状态:**
该 Unit 通过GROVE B端口与M5Core进行通信.
## 产品特性
- GROVE 接口, 支持 [UIFlow](http://flow.m5stack.com) 、 [Arduino](http://www.arduino.cc).
- 2x LEGO 兼容孔
## 包含
- 1x BUTTON Unit
- 1x Grove 线
## 应用
- 灯座开关
- 远程控制开关
## 相关链接
- **[官方频道视频](https://i.youku.com/i/UNjE1ODA2MzE0OA==?spm=a2hzp.8253869.0.0)**
- **[官方论坛](http://forum.m5stack.com/)**
## EasyLoader
>1.EasyLoader是一个简洁快速的程序烧录器,每一个产品页面里的EasyLoader都提供了一个与产品相关的案例程序.
>2.下载软件后,双击运行应用程序,将M5设备通过数据线连接至电脑,选择端口参数,点击 **"Burn"** 即可开始烧录
!>3.EasyLoader烧录前需要安装有CP210X(USB驱动程序),[点击此处查看驱动安装教程](zh_CN/related_documents/M5Burner#安装串口驱动)
## 例程
### 1. Arduino IDE
*以下代码仅为片段,如需获取完整代码, [请点击此处](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/BUTTON/Arduino).*
```arduino
#include
// declaration
int cur_value = 0;
// initialization
M5.begin();// init
pinMode(36, INPUT);// BUTTON Pin
// read data
cur_value = digitalRead(36);// read the value of BUTTON
M5.update();
```
### 2. UIFlow
*以下代码仅为片段,如需获取完整代码, [请点击此处](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/BUTTON/UIFlow).*
## 原理图
### 管脚映射
| M5Core(GROVE B) | Btn (GPIO36) | NC (GPIO26) | 5V | GND |
| BUTTON Unit | BUTTON Pin | / | 5V | GND |