a beter verjin
Dependencies: m3pi mbed ADJD-S371_ColourSens
Fork of TestColorSensor by
main.cpp
- Committer:
- nolanwagener
- Date:
- 2013-11-21
- Revision:
- 4:f38d0db83e1c
- Parent:
- 3:b3c41c85fb1e
- Child:
- 5:3dd9b0a35aee
File content as of revision 4:f38d0db83e1c:
#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; 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); */ } }