vers 2
Dependencies: Affichagesp2 C12832 LM75B WifiEsp8266 Acquisitionentreesp2
main.cpp@2:6dc5c193940c, 2021-06-06 (annotated)
- Committer:
- schnf30
- Date:
- Sun Jun 06 18:08:33 2021 +0000
- Revision:
- 2:6dc5c193940c
- Parent:
- 1:c7890e7c361e
3
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
schnf30 | 0:7b66b529c674 | 1 | // acquerir la temperature avec le LM75B |
schnf30 | 0:7b66b529c674 | 2 | #include "mbed.h" |
schnf30 | 0:7b66b529c674 | 3 | #include "platform/mbed_thread.h" |
schnf30 | 0:7b66b529c674 | 4 | #include "LM75B.h" |
schnf30 | 0:7b66b529c674 | 5 | #include "acquisition.h" |
schnf30 | 2:6dc5c193940c | 6 | #include "affichagesp2.h" |
schnf30 | 0:7b66b529c674 | 7 | #include "wifiesp8266.h" |
schnf30 | 0:7b66b529c674 | 8 | |
schnf30 | 1:c7890e7c361e | 9 | float VitFluxAir = 0; |
schnf30 | 1:c7890e7c361e | 10 | float pression[8] = {0,0,0,0,0,0,0,0}; |
schnf30 | 1:c7890e7c361e | 11 | float Fx = 0; |
schnf30 | 1:c7890e7c361e | 12 | float Fz = 0; |
schnf30 | 1:c7890e7c361e | 13 | float Aim = 0; |
schnf30 | 1:c7890e7c361e | 14 | float Aic = 0; |
schnf30 | 1:c7890e7c361e | 15 | |
schnf30 | 0:7b66b529c674 | 16 | RawSerial PC(USBTX, USBRX); |
schnf30 | 2:6dc5c193940c | 17 | WifiEsp8266 Wifi(PA_11,PA_12); // WifiEsp8266(PinName Txd, PinName Rxd,float _timeout); |
schnf30 | 1:c7890e7c361e | 18 | DigitalOut En(PC_11); |
schnf30 | 0:7b66b529c674 | 19 | LM75B sensor(D14,D15); |
schnf30 | 0:7b66b529c674 | 20 | |
schnf30 | 0:7b66b529c674 | 21 | Ticker test1; |
schnf30 | 0:7b66b529c674 | 22 | bool Drticker1 = false; |
schnf30 | 0:7b66b529c674 | 23 | void event1() |
schnf30 | 0:7b66b529c674 | 24 | { |
schnf30 | 0:7b66b529c674 | 25 | Drticker1 = true; |
schnf30 | 0:7b66b529c674 | 26 | } |
schnf30 | 0:7b66b529c674 | 27 | |
schnf30 | 0:7b66b529c674 | 28 | int main() |
schnf30 | 0:7b66b529c674 | 29 | { |
schnf30 | 1:c7890e7c361e | 30 | En.write(1); |
schnf30 | 1:c7890e7c361e | 31 | char WifiPhrase[maxdata]; |
schnf30 | 0:7b66b529c674 | 32 | bool ecranchange=false; |
schnf30 | 1:c7890e7c361e | 33 | AnalogIn Pot1(A0); |
schnf30 | 1:c7890e7c361e | 34 | AnalogIn Pot2(A1); |
schnf30 | 2:6dc5c193940c | 35 | AffichageEcransp2(); |
schnf30 | 0:7b66b529c674 | 36 | PC.baud(921600); |
schnf30 | 0:7b66b529c674 | 37 | PC.printf("Hello je suis SP2\r\n"); |
schnf30 | 0:7b66b529c674 | 38 | test1.attach(&event1,1); |
schnf30 | 0:7b66b529c674 | 39 | while (true) { |
schnf30 | 0:7b66b529c674 | 40 | if (Wifi.dataready()) { |
schnf30 | 0:7b66b529c674 | 41 | strcpy(WifiPhrase,Wifi.read()); |
schnf30 | 1:c7890e7c361e | 42 | // PC.printf("%s\r\n",WifiPhrase); |
schnf30 | 0:7b66b529c674 | 43 | switch (WifiPhrase[1]) { |
schnf30 | 1:c7890e7c361e | 44 | case 'A': |
schnf30 | 1:c7890e7c361e | 45 | VitFluxAir= atof(WifiPhrase+2); |
schnf30 | 1:c7890e7c361e | 46 | ecranchange=true; |
schnf30 | 1:c7890e7c361e | 47 | break; |
schnf30 | 0:7b66b529c674 | 48 | case 'm': |
schnf30 | 1:c7890e7c361e | 49 | Aic=Aic+1; |
schnf30 | 1:c7890e7c361e | 50 | Wifi.printf("$l%0.0f\r\n",Aic); |
schnf30 | 0:7b66b529c674 | 51 | ecranchange=true; |
schnf30 | 0:7b66b529c674 | 52 | break; |
schnf30 | 0:7b66b529c674 | 53 | case 'n' : |
schnf30 | 1:c7890e7c361e | 54 | Aic=Aic-1; |
schnf30 | 1:c7890e7c361e | 55 | Wifi.printf("$l%0.0f\r\n",Aic); |
schnf30 | 0:7b66b529c674 | 56 | ecranchange=true; |
schnf30 | 0:7b66b529c674 | 57 | break; |
schnf30 | 0:7b66b529c674 | 58 | default : |
schnf30 | 1:c7890e7c361e | 59 | ; |
schnf30 | 0:7b66b529c674 | 60 | } |
schnf30 | 0:7b66b529c674 | 61 | |
schnf30 | 0:7b66b529c674 | 62 | } |
schnf30 | 1:c7890e7c361e | 63 | |
schnf30 | 0:7b66b529c674 | 64 | if (Drticker1) { |
schnf30 | 0:7b66b529c674 | 65 | Drticker1 = false; |
schnf30 | 1:c7890e7c361e | 66 | pression[0] = Pot2.read()*100*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 67 | pression[1] = Pot2.read()*300*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 68 | pression[2] = Pot2.read()*600*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 69 | pression[3] = Pot2.read()*700*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 70 | pression[4] = Pot2.read()*700*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 71 | pression[5] = Pot2.read()*600*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 72 | pression[6] = Pot2.read()*300*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 73 | pression[7] = Pot2.read()*100*VitFluxAir/72; //equivaut a mesure pression |
schnf30 | 1:c7890e7c361e | 74 | Fx = Pot1.read() * 5; |
schnf30 | 1:c7890e7c361e | 75 | Fz = Pot1.read() * 5; |
schnf30 | 1:c7890e7c361e | 76 | Aim = Pot1.read() * 40 - 20; |
schnf30 | 1:c7890e7c361e | 77 | Wifi.printf("$z,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f,%0.0f\r\n",pression[0],pression[1],pression[2],pression[3],pression[4],pression[5],pression[6],pression[7],Fx,Fz,Aim); |
schnf30 | 0:7b66b529c674 | 78 | ecranchange=true; |
schnf30 | 1:c7890e7c361e | 79 | } |
schnf30 | 0:7b66b529c674 | 80 | if (ecranchange) { |
schnf30 | 2:6dc5c193940c | 81 | AffichageEcransp2(); |
schnf30 | 0:7b66b529c674 | 82 | ecranchange=false; |
schnf30 | 0:7b66b529c674 | 83 | } |
schnf30 | 0:7b66b529c674 | 84 | } |
schnf30 | 0:7b66b529c674 | 85 | } |
schnf30 | 0:7b66b529c674 | 86 |