Si1143 Gesture Sensor sample.
Fork of Gesture_Sensor by
About Si1143
Si1143 is a gesture sensor and can be controlled by using the I2C.
This can be detected from the shortest 1cm up to 200cm.
Si1143 emits three infrared LED that is mounted on a substrate, and detects the movement by measuring the reflected light from the external object.
- Datasheet of Si1143
http://www.silabs.com/Support%20Documents/TechnicalDocs/Si114x.pdf
About sample program
When you hold your hand on the upper of LED1 of Si1143, LED1 (red) of GR-PEACH lights up.
When you hold your hand on the upper of LED2 of Si1143, LED2 (green) of GR-PEACH lights up.
When you hold your hand on the upper of LED3 of Si1143, LED3 (blue) of GR-PEACH lights up.
When you approach your hand to LED of Si1143, level of the LED light will output a large value.
About wiring
| Sensor | GR-PEACH |
| GND | GND |
| VIN | 3.3V |
| SCL | D15 |
| SDA | D14 |
Diff: main.cpp
- Revision:
- 2:27f94c9a29ec
- Parent:
- 1:a4c6fbb79eba
--- a/main.cpp Mon Oct 21 20:14:03 2013 +0000
+++ b/main.cpp Tue Apr 19 02:43:43 2016 +0000
@@ -1,7 +1,7 @@
#include "mbed.h"
#include "SI1143.h"
-SI1143 sensor(p28, p27);
+SI1143 sensor(I2C_SDA , I2C_SCL);
DigitalOut led1(LED1);
DigitalOut led2(LED2);
@@ -11,10 +11,12 @@
{
int sense1,sense2,sense3;
+ printf("SI1143 Gesture Sensor setting...\n");
// Setup the baseline
sensor.bias(1,5);
- wait(1);
+ wait(1.0);
+ printf("Sensor start!\n");
while(1)
{
// Read each led sensor
@@ -56,5 +58,6 @@
//Numeriacl output through terminal
printf("%d-%d-%d\r\n",sense1,sense2,sense3);
+ wait(0.05);
}
}
