Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: m3pi mbed ADJD-S371_ColourSens
Fork of TestColorSensor by
main.cpp
- Committer:
- TaintedTruth
- Date:
- 2013-11-21
- Revision:
- 3:b3c41c85fb1e
- Parent:
- 2:5c0159599726
- Child:
- 4:f38d0db83e1c
File content as of revision 3:b3c41c85fb1e:
#include "mbed.h"
#include "m3pi.h"
DigitalOut sensorLED(p8);
I2C colorSensor(p28, p27); //SDA, SCL
Serial bt(p13, p14); // tx, rx
const int addr = 0x74;
const int addr1 = 0x75;
m3pi m3pi;
int read(char lowByteRegister) {
char cmd[1];
char echo[2];
cmd[0] = lowByteRegister;
colorSensor.write(addr,cmd,1);
colorSensor.read(addr,echo,2);
int result_low = (int) echo[0];
/*
cmd[0] = lowByteRegister + 1;
colorSensor.write(addr,cmd,1);
colorSensor.read(addr,echo,1);
int result_high = (int) echo[0];
bt.printf("hi:%0x ",result_high);
return (result_high << 8) | result_low;
*/
return result_low;
}
int main() {
bt.baud(115200);
char cmd[2];
sensorLED = 1;
m3pi.locate(0,1);
m3pi.printf("Start");
wait(1);
while(1) {
cmd[0] = 0x00;
cmd[1] = 0x01;
colorSensor.write(addr,cmd,2);
cmd[0] = 0x06;
cmd[1] = 0x04;
colorSensor.write(addr,cmd,2);
int red = read(0x06);
// int green = read(0x42);
// int blue = read(0x44);
// Print for debugging
bt.printf("R:%0x ",red);
//bt.printf("G:%0x ",green);
//bt.printf("B:%0x ",blue);
wait(1);
/*
cmd[0] = 0x06;
colorSensor.write(addr,cmd,1);
colorSensor.read(addr,cmd,1);
red = cmd[0];
cmd[0] = 0x07;
colorSensor.write(addr,cmd,1);
colorSensor.read(addr,cmd,1);
green = cmd[0];
cmd[0] = 0x08;
colorSensor.write(addr,cmd,1);
colorSensor.read(addr,cmd,1);
blue = cmd[0];
bt.printf("Rc:%d ",red);
bt.printf("Gc:%d ",green);
bt.printf("Bc:%d ",blue);
*/
/*
m3pi.cls();
m3pi.locate(0,1);
m3pi.printf("R:%d",red);
wait(1.5);
m3pi.cls();
m3pi.locate(0,1);
m3pi.printf("G:%d",green);
wait(1.5);
m3pi.cls();
m3pi.locate(0,1);
m3pi.printf("B:%d",blue);
wait(1.5);
*/
}
}
