カラーセンサでRGBを判定する
Dependencies: TCS3472_I2C mbed
main.cpp@0:2c40d2bf0863, 2017-10-05 (annotated)
- Committer:
- kagari
- Date:
- Thu Oct 05 15:30:09 2017 +0000
- Revision:
- 0:2c40d2bf0863
????????;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kagari | 0:2c40d2bf0863 | 1 | #include "mbed.h" |
kagari | 0:2c40d2bf0863 | 2 | #include "TCS3472_I2C.h" |
kagari | 0:2c40d2bf0863 | 3 | |
kagari | 0:2c40d2bf0863 | 4 | TCS3472_I2C rgb_sensor( D4, D5 );//pins for I2C communication (SDA, SCL) |
kagari | 0:2c40d2bf0863 | 5 | |
kagari | 0:2c40d2bf0863 | 6 | int main() { |
kagari | 0:2c40d2bf0863 | 7 | rgb_sensor.enablePowerAndRGBC(); |
kagari | 0:2c40d2bf0863 | 8 | rgb_sensor.setIntegrationTime( 240 ); |
kagari | 0:2c40d2bf0863 | 9 | int rgb_readings[4]; |
kagari | 0:2c40d2bf0863 | 10 | while(1) { |
kagari | 0:2c40d2bf0863 | 11 | rgb_sensor.getAllColors( rgb_readings ); |
kagari | 0:2c40d2bf0863 | 12 | // |
kagari | 0:2c40d2bf0863 | 13 | // int R = (red_value / (float)clear_value) * 255; |
kagari | 0:2c40d2bf0863 | 14 | // int G = (green_value / (float)clear_value) * 255; |
kagari | 0:2c40d2bf0863 | 15 | // int B = (blue_value / (float)clear_value) * 255; |
kagari | 0:2c40d2bf0863 | 16 | // |
kagari | 0:2c40d2bf0863 | 17 | // pc.printf("AClear (%d), Red (%d), Green (%d), Blue (%d)\r\n", clear_value, R, G, B); |
kagari | 0:2c40d2bf0863 | 18 | |
kagari | 0:2c40d2bf0863 | 19 | int r = rgb_readings[1]; |
kagari | 0:2c40d2bf0863 | 20 | int g = rgb_readings[2]; |
kagari | 0:2c40d2bf0863 | 21 | int b = rgb_readings[3]; |
kagari | 0:2c40d2bf0863 | 22 | |
kagari | 0:2c40d2bf0863 | 23 | if( r > g && r > b){ |
kagari | 0:2c40d2bf0863 | 24 | printf("赤"); |
kagari | 0:2c40d2bf0863 | 25 | }else if(g > r && g > b){ |
kagari | 0:2c40d2bf0863 | 26 | printf("緑"); |
kagari | 0:2c40d2bf0863 | 27 | }else{ |
kagari | 0:2c40d2bf0863 | 28 | printf("青"); |
kagari | 0:2c40d2bf0863 | 29 | } |
kagari | 0:2c40d2bf0863 | 30 | |
kagari | 0:2c40d2bf0863 | 31 | printf( "red: %d, green: %d, blue: %d, clear: %d \r\n", rgb_readings[1], rgb_readings[2], rgb_readings[3], rgb_readings[0] ); |
kagari | 0:2c40d2bf0863 | 32 | wait_ms( 100 ); |
kagari | 0:2c40d2bf0863 | 33 | } |
kagari | 0:2c40d2bf0863 | 34 | } |