10/22
Dependencies: ColorSensor1 Servo mbed
main.h@0:fa26bf0aad5e, 2013-10-22 (annotated)
- Committer:
- OGA
- Date:
- Tue Oct 22 07:19:27 2013 +0000
- Revision:
- 0:fa26bf0aad5e
10/22;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
OGA | 0:fa26bf0aad5e | 1 | ///////////////////////////////////////OGATA////////////////////////////////////////// |
OGA | 0:fa26bf0aad5e | 2 | ////////////////////////////////////////////////////////////////////////////////////// |
OGA | 0:fa26bf0aad5e | 3 | //センサの数 |
OGA | 0:fa26bf0aad5e | 4 | #define COLOR_NUM 6 |
OGA | 0:fa26bf0aad5e | 5 | |
OGA | 0:fa26bf0aad5e | 6 | //閾値 |
OGA | 0:fa26bf0aad5e | 7 | #define R_THR 65 |
OGA | 0:fa26bf0aad5e | 8 | #define G_THR 65 |
OGA | 0:fa26bf0aad5e | 9 | #define B_THR 65 |
OGA | 0:fa26bf0aad5e | 10 | #define PINR_THR 2000 |
OGA | 0:fa26bf0aad5e | 11 | |
OGA | 0:fa26bf0aad5e | 12 | |
OGA | 0:fa26bf0aad5e | 13 | enum{ |
OGA | 0:fa26bf0aad5e | 14 | GO, |
OGA | 0:fa26bf0aad5e | 15 | STOP |
OGA | 0:fa26bf0aad5e | 16 | }; |
OGA | 0:fa26bf0aad5e | 17 | |
OGA | 0:fa26bf0aad5e | 18 | //TextLCD lcd(p30, p29, p28, p27, p26, p25, TextLCD::LCD20x4); // rs, e, d4-d7 |
OGA | 0:fa26bf0aad5e | 19 | ColorSensor color0(p20, p17, p18, p19, 10); |
OGA | 0:fa26bf0aad5e | 20 | ColorSensor color1(p16, p13, p14, p15, 10); |
OGA | 0:fa26bf0aad5e | 21 | ColorSensor color2(p12, p9, p10, p11, 10); |
OGA | 0:fa26bf0aad5e | 22 | ColorSensor color3(p8, p5, p6, p7, 10); |
OGA | 0:fa26bf0aad5e | 23 | |
OGA | 0:fa26bf0aad5e | 24 | ColorSensor color4(p24, p21, p22, p23, 10); |
OGA | 0:fa26bf0aad5e | 25 | ColorSensor color5(p30, p25, p26, p29, 10); |
OGA | 0:fa26bf0aad5e | 26 | //ColorSensor color4(p26, p23, p24, p25, 10); |
OGA | 0:fa26bf0aad5e | 27 | //ColorSensor color5(p30, p27, p28, p29, 10); |
OGA | 0:fa26bf0aad5e | 28 | |
OGA | 0:fa26bf0aad5e | 29 | Serial pc(USBTX, USBRX); // tx, rx |
OGA | 0:fa26bf0aad5e | 30 | DigitalOut led[4] = {LED1,LED2,LED3,LED4}; |
OGA | 0:fa26bf0aad5e | 31 | //DigitalOut air[2] = {p7,p8}; |
OGA | 0:fa26bf0aad5e | 32 | |
OGA | 0:fa26bf0aad5e | 33 | |
OGA | 0:fa26bf0aad5e | 34 | //Servo myservo1(p21); |
OGA | 0:fa26bf0aad5e | 35 | //DigitalIn sw1(p22); |
OGA | 0:fa26bf0aad5e | 36 | |
OGA | 0:fa26bf0aad5e | 37 | |
OGA | 0:fa26bf0aad5e | 38 | |
OGA | 0:fa26bf0aad5e | 39 | Timer color_t[COLOR_NUM]; |
OGA | 0:fa26bf0aad5e | 40 | Timer jump_t; |
OGA | 0:fa26bf0aad5e | 41 | Ticker interrupt0; |
OGA | 0:fa26bf0aad5e | 42 | |
OGA | 0:fa26bf0aad5e | 43 | |
OGA | 0:fa26bf0aad5e | 44 | void rivisedate (); |
OGA | 0:fa26bf0aad5e | 45 | void colorUpdate (uint8_t mode); |
OGA | 0:fa26bf0aad5e | 46 | uint16_t moving_ave(uint8_t num, uint16_t data); |
OGA | 0:fa26bf0aad5e | 47 | uint8_t robotFront(); |
OGA | 0:fa26bf0aad5e | 48 | uint8_t jumpInstruction(uint8_t front); |
OGA | 0:fa26bf0aad5e | 49 | void jumpAction(uint8_t threshold); |
OGA | 0:fa26bf0aad5e | 50 | |
OGA | 0:fa26bf0aad5e | 51 | |
OGA | 0:fa26bf0aad5e | 52 | double proportional = 0; |
OGA | 0:fa26bf0aad5e | 53 | uint16_t com_val = 0; |
OGA | 0:fa26bf0aad5e | 54 | unsigned redp[COLOR_NUM], greenp[COLOR_NUM], bluep[COLOR_NUM]; |
OGA | 0:fa26bf0aad5e | 55 | double rir,rib ; |
OGA | 0:fa26bf0aad5e | 56 | int cAve[COLOR_NUM] = {0}, roboF, jumI; |
OGA | 0:fa26bf0aad5e | 57 | |
OGA | 0:fa26bf0aad5e | 58 | |
OGA | 0:fa26bf0aad5e | 59 | enum{ |
OGA | 0:fa26bf0aad5e | 60 | WAIT, |
OGA | 0:fa26bf0aad5e | 61 | STRAIGHT, |
OGA | 0:fa26bf0aad5e | 62 | TURN, |
OGA | 0:fa26bf0aad5e | 63 | COMP |
OGA | 0:fa26bf0aad5e | 64 | }; |