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.
main.cpp@0:5522293dc514, 2019-03-11 (annotated)
- Committer:
- DanielPardo
- Date:
- Mon Mar 11 16:49:46 2019 +0000
- Revision:
- 0:5522293dc514
Sensore color + buzzer
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| DanielPardo | 0:5522293dc514 | 1 | #include "mbed.h" |
| DanielPardo | 0:5522293dc514 | 2 | #include "scolor_TCS3200.h" |
| DanielPardo | 0:5522293dc514 | 3 | #include "colorsensor.h" |
| DanielPardo | 0:5522293dc514 | 4 | |
| DanielPardo | 0:5522293dc514 | 5 | /* ***************************************************************************** |
| DanielPardo | 0:5522293dc514 | 6 | Programa que solicita telemetria al sistema embebido, por medio del comando 0xFe |
| DanielPardo | 0:5522293dc514 | 7 | para preguntar por el color que detecta el sensor TCS3200 |
| DanielPardo | 0:5522293dc514 | 8 | |
| DanielPardo | 0:5522293dc514 | 9 | el sistema embebido recibe el inicio de trama FE y el número de comado: 01 |
| DanielPardo | 0:5522293dc514 | 10 | |
| DanielPardo | 0:5522293dc514 | 11 | | INITELE | CMD | |
| DanielPardo | 0:5522293dc514 | 12 | | 0xfe | 0x01 | |
| DanielPardo | 0:5522293dc514 | 13 | |
| DanielPardo | 0:5522293dc514 | 14 | |
| DanielPardo | 0:5522293dc514 | 15 | para enviar los comandos usar el programa Coolterm http://freeware.the-meiers.org/ |
| DanielPardo | 0:5522293dc514 | 16 | |
| DanielPardo | 0:5522293dc514 | 17 | |
| DanielPardo | 0:5522293dc514 | 18 | @fabeltranm 2019 |
| DanielPardo | 0:5522293dc514 | 19 | fbeltranm@ecci.edu.co |
| DanielPardo | 0:5522293dc514 | 20 | |
| DanielPardo | 0:5522293dc514 | 21 | ******************************************************************************** |
| DanielPardo | 0:5522293dc514 | 22 | datasheet https://www.mouser.com/catalog/specsheets/TCS3200-E11.pdf |
| DanielPardo | 0:5522293dc514 | 23 | |
| DanielPardo | 0:5522293dc514 | 24 | |
| DanielPardo | 0:5522293dc514 | 25 | S0 Frequency scaling |
| DanielPardo | 0:5522293dc514 | 26 | S1 Frequency scaling |
| DanielPardo | 0:5522293dc514 | 27 | S2 Photo diode selection |
| DanielPardo | 0:5522293dc514 | 28 | S3 Photo diode selection |
| DanielPardo | 0:5522293dc514 | 29 | OutFreq Frequency |
| DanielPardo | 0:5522293dc514 | 30 | |
| DanielPardo | 0:5522293dc514 | 31 | ----------------------------------- |
| DanielPardo | 0:5522293dc514 | 32 | | ____________ ____________ | |
| DanielPardo | 0:5522293dc514 | 33 | ----> | | | | | | ___ ___ |
| DanielPardo | 0:5522293dc514 | 34 | Light | | Photodiode | | Current |--|---OUTPUT_FREQ | |___| |___ |
| DanielPardo | 0:5522293dc514 | 35 | ----> | | Array |---| to | | |
| DanielPardo | 0:5522293dc514 | 36 | | | | | Frequency | | |
| DanielPardo | 0:5522293dc514 | 37 | | |____________| |____________| | |
| DanielPardo | 0:5522293dc514 | 38 | | ^ ^ ^ ^ | |
| DanielPardo | 0:5522293dc514 | 39 | -------|--|-------------|--|------- |
| DanielPardo | 0:5522293dc514 | 40 | | | | | |
| DanielPardo | 0:5522293dc514 | 41 | S2 S3 S0 S1 |
| DanielPardo | 0:5522293dc514 | 42 | |
| DanielPardo | 0:5522293dc514 | 43 | SO | S1 | OUTPUT FREQUENCY SCALING | | S2 | S3 | PHOTODIODE TYPE | |
| DanielPardo | 0:5522293dc514 | 44 | 0 | 0 | power down | | 0 | 0 | Red | |
| DanielPardo | 0:5522293dc514 | 45 | 0 | 1 | 2% | | 0 | 1 | Blue | |
| DanielPardo | 0:5522293dc514 | 46 | 1 | 0 | 20% | | 1 | 0 | Clear (no filter) | |
| DanielPardo | 0:5522293dc514 | 47 | 1 | 1 | 100% | | 1 | 1 | Green | |
| DanielPardo | 0:5522293dc514 | 48 | |
| DanielPardo | 0:5522293dc514 | 49 | ******************************************************************************/ |
| DanielPardo | 0:5522293dc514 | 50 | #define INITCMD 0xFF // comando de sonido ff 01 3 |
| DanielPardo | 0:5522293dc514 | 51 | #define INITELE 0xFE // comando de sensor de colores fe 01 |
| DanielPardo | 0:5522293dc514 | 52 | #define CMD 0x01 // |
| DanielPardo | 0:5522293dc514 | 53 | |
| DanielPardo | 0:5522293dc514 | 54 | #define DO 104 |
| DanielPardo | 0:5522293dc514 | 55 | #define RE 153 |
| DanielPardo | 0:5522293dc514 | 56 | #define MI 166 |
| DanielPardo | 0:5522293dc514 | 57 | #define FA 184 |
| DanielPardo | 0:5522293dc514 | 58 | #define SO 205 |
| DanielPardo | 0:5522293dc514 | 59 | |
| DanielPardo | 0:5522293dc514 | 60 | |
| DanielPardo | 0:5522293dc514 | 61 | |
| DanielPardo | 0:5522293dc514 | 62 | Serial command(USBTX, USBRX); |
| DanielPardo | 0:5522293dc514 | 63 | // S0, S1, S2, S3, OUT |
| DanielPardo | 0:5522293dc514 | 64 | Serial serial(USBTX, USBRX); |
| DanielPardo | 0:5522293dc514 | 65 | iotea::ColorSensor color_sensor(D6, D5, D4, D3, D2); |
| DanielPardo | 0:5522293dc514 | 66 | DigitalIn button(D12); |
| DanielPardo | 0:5522293dc514 | 67 | |
| DanielPardo | 0:5522293dc514 | 68 | // definición de las funciones |
| DanielPardo | 0:5522293dc514 | 69 | |
| DanielPardo | 0:5522293dc514 | 70 | int main() { |
| DanielPardo | 0:5522293dc514 | 71 | serial.baud(115200); |
| DanielPardo | 0:5522293dc514 | 72 | while (true) { |
| DanielPardo | 0:5522293dc514 | 73 | if (!button) { |
| DanielPardo | 0:5522293dc514 | 74 | iotea::ColorData color = color_sensor.getData(); |
| DanielPardo | 0:5522293dc514 | 75 | serial.printf("#%d %d %d\r\n", color.red, color.green, color.blue); |
| DanielPardo | 0:5522293dc514 | 76 | } |
| DanielPardo | 0:5522293dc514 | 77 | } |
| DanielPardo | 0:5522293dc514 | 78 | } |
| DanielPardo | 0:5522293dc514 | 79 |