Matrix - Button/zh
From FriendlyELEC WiKi
Contents
1 介绍
该按键在未按时输出高电平,按下后输出低电平。
2 特性
- 使用标准的3 PIN接口
- 尺寸为 8x24mm
- PCB尺寸(mm):8x24
3 工作原理
Matrix-Button主要器件是一个瞬时(非自锁)按钮开关,通过3-Pin 2.54mm排针中的S信号输出按钮开关的状态。平时没有按下按钮时触点断开,S输出高电平;当按下按钮时触点导通,S输出低电平,直到松开才恢复高电平。
4 使用方法
4.1 连接
- 将配件S针脚连接到GPIO PIN1, V接5V,G接地
- 连接到NanoPi
- 连接到TINY4412 SDK 1506
4.2 Linux下的C示例
#include <stdio.h> #include "libfahw.h" static struct sensor button[] = { { TINY4412_GPIO_PIN1, IRQ_TYPE_EDGE_FALLING, } }; int main(void) { int i; int retSize = -1; char value[ARRAY_SIZE(button)]; int devFD = -1; if ((devFD =sensorInit(button, ARRAY_SIZE(button))) == -1) { printf("Fail to init sensor\n"); return -1; } printf("Press the button...\n"); if (( retSize = sensorRead(devFD, value, ARRAY_SIZE(button)) ) == -1) { printf("Fail to read sensors\n"); } if (retSize > 0) { i = 0; for (i=0; i<retSize; i++) { printf("Button[%d]:%d\n", i, value[i]); } } sensorDeinit(devFD); return 0; }
4.3 编译并运行示例
git clone http://github.com/friendlyarm/fa-hardware.git cd fa-hardware cd demo cd button make
将编译生成的button通过ftp上传到开发板上运行即可测试。