partie Capteur de couleur non fonctionnel

Dependencies:   mbed GroveColourSensor

Committer:
Melmino
Date:
Fri Dec 21 11:08:43 2018 +0000
Revision:
0:96895997d17b
non fonctionnel

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Melmino 0:96895997d17b 1 #include "mbed.h"
Melmino 0:96895997d17b 2 #include "GroveColourSensor.hpp"
Melmino 0:96895997d17b 3
Melmino 0:96895997d17b 4 //I2C i2c(p9, p10);
Melmino 0:96895997d17b 5
Melmino 0:96895997d17b 6 int main() {
Melmino 0:96895997d17b 7
Melmino 0:96895997d17b 8 BusOut myleds(LED1, LED2, LED3, LED4);
Melmino 0:96895997d17b 9 GroveColourSensor colorSensor(p9, p10);
Melmino 0:96895997d17b 10
Melmino 0:96895997d17b 11
Melmino 0:96895997d17b 12 int i=0;
Melmino 0:96895997d17b 13 uint16_t colourValue;
Melmino 0:96895997d17b 14 unsigned colour;
Melmino 0:96895997d17b 15 char col[6];
Melmino 0:96895997d17b 16
Melmino 0:96895997d17b 17 int green, red, blue;
Melmino 0:96895997d17b 18
Melmino 0:96895997d17b 19 colorSensor.powerUp();
Melmino 0:96895997d17b 20
Melmino 0:96895997d17b 21 while(1) {
Melmino 0:96895997d17b 22 for (colour = GroveColourSensor::GREEN; colour < GroveColourSensor::NUM_COLORS; colour++) {
Melmino 0:96895997d17b 23 colourValue = colorSensor.readColour(colour);
Melmino 0:96895997d17b 24
Melmino 0:96895997d17b 25 }
Melmino 0:96895997d17b 26
Melmino 0:96895997d17b 27 while(colourValue>0)
Melmino 0:96895997d17b 28 {
Melmino 0:96895997d17b 29 col[i]=colourValue%2;
Melmino 0:96895997d17b 30 colourValue=colourValue/2;
Melmino 0:96895997d17b 31 i++;
Melmino 0:96895997d17b 32 }
Melmino 0:96895997d17b 33
Melmino 0:96895997d17b 34 green = col[1] * 256 + col[0];
Melmino 0:96895997d17b 35 red = col[3] * 256 + col[2];
Melmino 0:96895997d17b 36 blue = col[5] * 256 + col[4];
Melmino 0:96895997d17b 37
Melmino 0:96895997d17b 38 if (red>=green && red>=blue) {
Melmino 0:96895997d17b 39 myleds = 2;
Melmino 0:96895997d17b 40 wait(0.5);
Melmino 0:96895997d17b 41 }
Melmino 0:96895997d17b 42
Melmino 0:96895997d17b 43 else if (green>=red && green>=blue) {
Melmino 0:96895997d17b 44 myleds = 4;
Melmino 0:96895997d17b 45 wait(0.5);
Melmino 0:96895997d17b 46 }
Melmino 0:96895997d17b 47 else if(blue>=red && blue>=green) {
Melmino 0:96895997d17b 48 myleds = 8;
Melmino 0:96895997d17b 49 wait(0.5);
Melmino 0:96895997d17b 50 }
Melmino 0:96895997d17b 51 // else myleds = i;
Melmino 0:96895997d17b 52 else {
Melmino 0:96895997d17b 53 myleds = 15;
Melmino 0:96895997d17b 54 wait(0.5);
Melmino 0:96895997d17b 55 }
Melmino 0:96895997d17b 56 }
Melmino 0:96895997d17b 57 //colorSensor.powerDown();
Melmino 0:96895997d17b 58
Melmino 0:96895997d17b 59 }
Melmino 0:96895997d17b 60