True leaf photo frame,gesture sensing APDS9960,motor fan,color LED

Dependencies:   SFE_APDS9960 mbed

Committer:
yzh344612058
Date:
Tue Apr 19 14:15:00 2016 +0000
Revision:
1:d16891627cd3
Parent:
0:9b48e23879b3
Child:
2:6b5764a79ccf
APDS9960????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yzh344612058 0:9b48e23879b3 1 #include <mbed.h>
yzh344612058 0:9b48e23879b3 2 #include "SparkFun_APDS9960.h"
yzh344612058 0:9b48e23879b3 3 #include "led.h"
yzh344612058 0:9b48e23879b3 4
yzh344612058 0:9b48e23879b3 5 Serial pc(P0_23,P0_25); // TX Pin, RX Pin
yzh344612058 0:9b48e23879b3 6 I2C i2c(P0_8, P0_9);
yzh344612058 1:d16891627cd3 7 SparkFun_APDS9960 apds(i2c);
yzh344612058 1:d16891627cd3 8 DigitalIn interrupt(P0_10);
yzh344612058 1:d16891627cd3 9
yzh344612058 1:d16891627cd3 10 void handleGesture();
yzh344612058 0:9b48e23879b3 11
yzh344612058 0:9b48e23879b3 12 int main()
yzh344612058 0:9b48e23879b3 13 {
yzh344612058 0:9b48e23879b3 14 pc.printf("Hello world!\n");
yzh344612058 0:9b48e23879b3 15
yzh344612058 1:d16891627cd3 16 if(apds.init(400000))
yzh344612058 0:9b48e23879b3 17 pc.printf("APDS-9960 initialization complete\n");
yzh344612058 0:9b48e23879b3 18 else
yzh344612058 1:d16891627cd3 19 pc.printf("Something went wrong during APDS-9960 init!\n");
yzh344612058 0:9b48e23879b3 20
yzh344612058 0:9b48e23879b3 21 if (apds.enableGestureSensor(true) )
yzh344612058 0:9b48e23879b3 22 printf("Gesture sensor is now running\n");
yzh344612058 0:9b48e23879b3 23 else
yzh344612058 0:9b48e23879b3 24 printf("Something went wrong during gesture sensor init!\n");
yzh344612058 0:9b48e23879b3 25
yzh344612058 0:9b48e23879b3 26
yzh344612058 0:9b48e23879b3 27 while(1)
yzh344612058 0:9b48e23879b3 28 {
yzh344612058 1:d16891627cd3 29 Led_Blink();
yzh344612058 1:d16891627cd3 30 if(!interrupt)
yzh344612058 1:d16891627cd3 31 {
yzh344612058 1:d16891627cd3 32 wait_ms(10);
yzh344612058 1:d16891627cd3 33 if(!interrupt)
yzh344612058 1:d16891627cd3 34 handleGesture();
yzh344612058 1:d16891627cd3 35 }
yzh344612058 0:9b48e23879b3 36 }
yzh344612058 1:d16891627cd3 37 }
yzh344612058 1:d16891627cd3 38
yzh344612058 1:d16891627cd3 39 void handleGesture() {
yzh344612058 1:d16891627cd3 40 if ( apds.isGestureAvailable() ) {
yzh344612058 1:d16891627cd3 41 switch ( apds.readGesture() ) {
yzh344612058 1:d16891627cd3 42 case DIR_UP:
yzh344612058 1:d16891627cd3 43 pc.printf("UP\n");
yzh344612058 1:d16891627cd3 44 break;
yzh344612058 1:d16891627cd3 45 case DIR_DOWN:
yzh344612058 1:d16891627cd3 46 pc.printf("DOWN\n");
yzh344612058 1:d16891627cd3 47 break;
yzh344612058 1:d16891627cd3 48 case DIR_LEFT:
yzh344612058 1:d16891627cd3 49 pc.printf("LEFT\n");
yzh344612058 1:d16891627cd3 50 break;
yzh344612058 1:d16891627cd3 51 case DIR_RIGHT:
yzh344612058 1:d16891627cd3 52 pc.printf("RIGHT\n");
yzh344612058 1:d16891627cd3 53 break;
yzh344612058 1:d16891627cd3 54 case DIR_NEAR:
yzh344612058 1:d16891627cd3 55 pc.printf("NEAR\n");
yzh344612058 1:d16891627cd3 56 break;
yzh344612058 1:d16891627cd3 57 case DIR_FAR:
yzh344612058 1:d16891627cd3 58 pc.printf("FAR\n");
yzh344612058 1:d16891627cd3 59 break;
yzh344612058 1:d16891627cd3 60 default:
yzh344612058 1:d16891627cd3 61 pc.printf("NONE\n");
yzh344612058 1:d16891627cd3 62 }
yzh344612058 1:d16891627cd3 63 }
yzh344612058 1:d16891627cd3 64 }