
Lib
Dependencies: mbed Pixy2_Library2
main.cpp@1:9045b866f1f6, 2020-06-25 (annotated)
- Committer:
- Jordan406
- Date:
- Thu Jun 25 13:04:04 2020 +0000
- Revision:
- 1:9045b866f1f6
- Parent:
- 0:1cd75d83116f
Pixy2_Lib_I2C
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jordan406 | 0:1cd75d83116f | 1 | #include "mbed.h" |
Jordan406 | 0:1cd75d83116f | 2 | #include "Pixy2_Library.h" |
Jordan406 | 0:1cd75d83116f | 3 | #define ADRESSE 0xa8 |
Jordan406 | 0:1cd75d83116f | 4 | |
Jordan406 | 0:1cd75d83116f | 5 | |
Jordan406 | 0:1cd75d83116f | 6 | Serial pc (USBTX,USBRX); |
Jordan406 | 0:1cd75d83116f | 7 | DigitalIn bp1(p24); |
Jordan406 | 0:1cd75d83116f | 8 | DigitalIn bp2(p25); |
Jordan406 | 0:1cd75d83116f | 9 | DigitalIn bp3(p26); |
Jordan406 | 0:1cd75d83116f | 10 | int BP1,BP2,BP3; |
Jordan406 | 0:1cd75d83116f | 11 | int state = 0; |
Jordan406 | 0:1cd75d83116f | 12 | int X,X2,X3; |
Jordan406 | 0:1cd75d83116f | 13 | int Y,Y2,Y3; |
Jordan406 | 0:1cd75d83116f | 14 | int W,W2,W3; |
Jordan406 | 0:1cd75d83116f | 15 | int H,H2,H3; |
Jordan406 | 0:1cd75d83116f | 16 | int S,S2,S3; |
Jordan406 | 0:1cd75d83116f | 17 | int I,I2,I3; |
Jordan406 | 0:1cd75d83116f | 18 | |
Jordan406 | 0:1cd75d83116f | 19 | int main() |
Jordan406 | 0:1cd75d83116f | 20 | { |
Jordan406 | 0:1cd75d83116f | 21 | int A,A2,A3; |
Jordan406 | 0:1cd75d83116f | 22 | bp1.mode(PullDown); |
Jordan406 | 0:1cd75d83116f | 23 | bp2.mode(PullDown); |
Jordan406 | 0:1cd75d83116f | 24 | bp3.mode(PullDown); |
Jordan406 | 0:1cd75d83116f | 25 | |
Jordan406 | 1:9045b866f1f6 | 26 | Pixy2_Library Cam1(p9,p10,ADRESSE); |
Jordan406 | 0:1cd75d83116f | 27 | |
Jordan406 | 0:1cd75d83116f | 28 | Cam1.Pixy2_WhiteLED(true); |
Jordan406 | 0:1cd75d83116f | 29 | while(1) { |
Jordan406 | 0:1cd75d83116f | 30 | BP1 = bp1.read(); |
Jordan406 | 0:1cd75d83116f | 31 | BP2 = bp2.read(); |
Jordan406 | 0:1cd75d83116f | 32 | BP3 = bp3.read(); |
Jordan406 | 0:1cd75d83116f | 33 | state = 3; |
Jordan406 | 0:1cd75d83116f | 34 | switch(state) { |
Jordan406 | 0:1cd75d83116f | 35 | case 0 : |
Jordan406 | 0:1cd75d83116f | 36 | /*Cam1.Pixy2_SetServo(0,0); |
Jordan406 | 0:1cd75d83116f | 37 | wait(0.5); |
Jordan406 | 0:1cd75d83116f | 38 | Cam1.Pixy2_SetServo(500,0); |
Jordan406 | 0:1cd75d83116f | 39 | wait(0.5);*/ |
Jordan406 | 0:1cd75d83116f | 40 | break; |
Jordan406 | 0:1cd75d83116f | 41 | case 1 : |
Jordan406 | 0:1cd75d83116f | 42 | pc.printf("_______________X positions____________________\n\r"); |
Jordan406 | 0:1cd75d83116f | 43 | X = Cam1.Pixy2_GetBlock('x',1); |
Jordan406 | 0:1cd75d83116f | 44 | X2 = Cam1.Pixy2_GetBlock('x',2); |
Jordan406 | 0:1cd75d83116f | 45 | X3 = Cam1.Pixy2_GetBlock('x',3); |
Jordan406 | 0:1cd75d83116f | 46 | pc.printf("Position X = %d\n\r", X); |
Jordan406 | 0:1cd75d83116f | 47 | pc.printf("Position X2 = %d\n\r", X2); |
Jordan406 | 0:1cd75d83116f | 48 | pc.printf("Position X3 = %d\n\r", X3); |
Jordan406 | 0:1cd75d83116f | 49 | break; |
Jordan406 | 0:1cd75d83116f | 50 | case 2 : |
Jordan406 | 0:1cd75d83116f | 51 | pc.printf("_______________Y positions____________________\n\r"); |
Jordan406 | 0:1cd75d83116f | 52 | Y = Cam1.Pixy2_GetBlock('y',1); |
Jordan406 | 0:1cd75d83116f | 53 | Y2 = Cam1.Pixy2_GetBlock('y',2); |
Jordan406 | 0:1cd75d83116f | 54 | Y3 = Cam1.Pixy2_GetBlock('y',3); |
Jordan406 | 0:1cd75d83116f | 55 | pc.printf("Position Y = %d\n\r", Y); |
Jordan406 | 0:1cd75d83116f | 56 | pc.printf("Position Y2 = %d\n\r", Y2); |
Jordan406 | 0:1cd75d83116f | 57 | pc.printf("Position Y3 = %d\n\r", Y3); |
Jordan406 | 0:1cd75d83116f | 58 | break; |
Jordan406 | 0:1cd75d83116f | 59 | case 3 : |
Jordan406 | 0:1cd75d83116f | 60 | pc.printf("__________________ALL___________________________\n\r"); |
Jordan406 | 0:1cd75d83116f | 61 | X = Cam1.Pixy2_GetBlock('x',1); |
Jordan406 | 0:1cd75d83116f | 62 | Y = Cam1.Pixy2_GetBlock('y',1); |
Jordan406 | 0:1cd75d83116f | 63 | W = Cam1.Pixy2_GetBlock('w',1); |
Jordan406 | 0:1cd75d83116f | 64 | H = Cam1.Pixy2_GetBlock('h',1); |
Jordan406 | 0:1cd75d83116f | 65 | S = Cam1.Pixy2_GetBlock('s',1); |
Jordan406 | 0:1cd75d83116f | 66 | A = Cam1.Pixy2_GetBlock('a',1); |
Jordan406 | 0:1cd75d83116f | 67 | I = Cam1.Pixy2_GetBlock('i',1); |
Jordan406 | 0:1cd75d83116f | 68 | |
Jordan406 | 0:1cd75d83116f | 69 | X2 = Cam1.Pixy2_GetBlock('x',2); |
Jordan406 | 0:1cd75d83116f | 70 | Y2 = Cam1.Pixy2_GetBlock('y',2); |
Jordan406 | 0:1cd75d83116f | 71 | W2 = Cam1.Pixy2_GetBlock('w',2); |
Jordan406 | 0:1cd75d83116f | 72 | H2 = Cam1.Pixy2_GetBlock('h',2); |
Jordan406 | 0:1cd75d83116f | 73 | S2 = Cam1.Pixy2_GetBlock('s',2); |
Jordan406 | 0:1cd75d83116f | 74 | A2 = Cam1.Pixy2_GetBlock('a',2); |
Jordan406 | 0:1cd75d83116f | 75 | I2 = Cam1.Pixy2_GetBlock('i',2); |
Jordan406 | 0:1cd75d83116f | 76 | |
Jordan406 | 0:1cd75d83116f | 77 | X3 = Cam1.Pixy2_GetBlock('x',3); |
Jordan406 | 0:1cd75d83116f | 78 | Y3 = Cam1.Pixy2_GetBlock('y',3); |
Jordan406 | 0:1cd75d83116f | 79 | W3 = Cam1.Pixy2_GetBlock('w',3); |
Jordan406 | 0:1cd75d83116f | 80 | H3 = Cam1.Pixy2_GetBlock('h',3); |
Jordan406 | 0:1cd75d83116f | 81 | S3 = Cam1.Pixy2_GetBlock('s',3); |
Jordan406 | 0:1cd75d83116f | 82 | A3 = Cam1.Pixy2_GetBlock('a',3); |
Jordan406 | 0:1cd75d83116f | 83 | I3 = Cam1.Pixy2_GetBlock('i',3); |
Jordan406 | 0:1cd75d83116f | 84 | |
Jordan406 | 0:1cd75d83116f | 85 | pc.printf("Signature du block = %d\n\r", S); |
Jordan406 | 0:1cd75d83116f | 86 | pc.printf("Position X = %d\n\r", X); |
Jordan406 | 0:1cd75d83116f | 87 | pc.printf("Position Y = %d\n\r", Y); |
Jordan406 | 0:1cd75d83116f | 88 | pc.printf("Largeur = %d\n\r", W); |
Jordan406 | 0:1cd75d83116f | 89 | pc.printf("Hauteur = %d\n\r", H); |
Jordan406 | 0:1cd75d83116f | 90 | pc.printf("Angle code-couleur = %d\n\r", A); |
Jordan406 | 0:1cd75d83116f | 91 | pc.printf("Indice de suivi du block = %d\n\r", I); |
Jordan406 | 0:1cd75d83116f | 92 | |
Jordan406 | 0:1cd75d83116f | 93 | |
Jordan406 | 0:1cd75d83116f | 94 | pc.printf("______________________________\n\r"); |
Jordan406 | 0:1cd75d83116f | 95 | pc.printf("Signature du block 2 = %d\n\r", S2); |
Jordan406 | 0:1cd75d83116f | 96 | pc.printf("Position X2 = %d\n\r", X2); |
Jordan406 | 0:1cd75d83116f | 97 | pc.printf("Position Y2 = %d\n\r", Y2); |
Jordan406 | 0:1cd75d83116f | 98 | pc.printf("Largeur 2 = %d\n\r", W2); |
Jordan406 | 0:1cd75d83116f | 99 | pc.printf("Hauteur 2 = %d\n\r", H2); |
Jordan406 | 0:1cd75d83116f | 100 | pc.printf("Angle code-couleur 2 = %d\n\r", A2); |
Jordan406 | 0:1cd75d83116f | 101 | pc.printf("Indice de suivi du block 2 = %d\n\r", I2); |
Jordan406 | 0:1cd75d83116f | 102 | |
Jordan406 | 0:1cd75d83116f | 103 | |
Jordan406 | 0:1cd75d83116f | 104 | pc.printf("______________________________\n\r"); |
Jordan406 | 0:1cd75d83116f | 105 | pc.printf("Signature du block 3 = %d\n\r", S3); |
Jordan406 | 0:1cd75d83116f | 106 | pc.printf("Position X3 = %d\n\r", X3); |
Jordan406 | 0:1cd75d83116f | 107 | pc.printf("Position Y3 = %d\n\r", Y3); |
Jordan406 | 0:1cd75d83116f | 108 | pc.printf("Largeur 3 = %d\n\r", W3); |
Jordan406 | 0:1cd75d83116f | 109 | pc.printf("Hauteur 3 = %d\n\r", H3); |
Jordan406 | 0:1cd75d83116f | 110 | pc.printf("Angle code-couleur 3 = %d\n\r", A3); |
Jordan406 | 0:1cd75d83116f | 111 | pc.printf("Indice de suivi du block 3 = %d\n\r", I3); |
Jordan406 | 0:1cd75d83116f | 112 | break; |
Jordan406 | 0:1cd75d83116f | 113 | } |
Jordan406 | 0:1cd75d83116f | 114 | |
Jordan406 | 0:1cd75d83116f | 115 | wait(0.5); |
Jordan406 | 0:1cd75d83116f | 116 | } |
Jordan406 | 0:1cd75d83116f | 117 | } |
Jordan406 | 0:1cd75d83116f | 118 |