
Sensor de Color
Revision 0:2f09ff2ad62c, committed 2017-10-11
- Comitter:
- franni
- Date:
- Wed Oct 11 19:13:02 2017 +0000
- Commit message:
- Sensor de Color TCS230
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 2f09ff2ad62c main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Wed Oct 11 19:13:02 2017 +0000 @@ -0,0 +1,69 @@ +#include "mbed.h" + +Serial rs232(USBTX,USBRX); +Timer Timer1; +DigitalOut led1(LED1); +InterruptIn int1(PTD0); + +unsigned int contador = 0, frec = 0, cont_color1, cont_color2, cont_color3; +bool flag_color1, flag_color2, flag_color3; + +void ISR_PTD0() +{ + ++contador; +} + +void frecuencia() +{ + contador=0; + Timer1.start(); + while(Timer1.read_ms()<=10); + Timer1.stop(); + frec=100*(contador); + Timer1.reset(); +} + +int main() +{ + int1.mode(PullUp); + int1.rise(&ISR_PTD0); + while(true) { + frecuencia(); + rs232.printf("f=%d Hz\r\n",frec); + if(frec>=10000 && frec<=15000) { + rs232.printf("f=%d Hz\r\n",frec); + if(flag_color1==0) { + ++cont_color1; + rs232.printf("Dorado"); + } + flag_color1=1; + } else { + flag_color1=0; + } + if(frec>=20000 && frec<=25000) { + rs232.printf("f=%d Hz\r\n",frec); + if(flag_color1==0) { + ++cont_color2; + rs232.printf("Magenta"); + } + flag_color2=1; + } else { + flag_color2=0; + } + if(frec>=30000 && frec<=35000) { + rs232.printf("f=%d Hz\r\n",frec); + if(flag_color1==0) { + ++cont_color3; + rs232.printf("Rosa"); + } + flag_color3=1; + } else { + flag_color3=0; + } + wait(0.5); + } +} + + + +
diff -r 000000000000 -r 2f09ff2ad62c mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Wed Oct 11 19:13:02 2017 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/235179ab3f27 \ No newline at end of file