carte esclave pompe 2020 V1

Dependencies:   mbed ident_crac

Committer:
kyxstark
Date:
Wed May 22 09:52:47 2019 +0000
Revision:
8:a25a9c22ba91
Parent:
5:176e7353ba1c
Child:
12:2491a5b0f90b
merge PR GR

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marwanesaich 0:84a8c24e29ae 1 #ifndef CLASS_VENTOUSE_H
marwanesaich 0:84a8c24e29ae 2 #define CLASS_VENTOUSE_H
marwanesaich 0:84a8c24e29ae 3
marwanesaich 0:84a8c24e29ae 4 #include "mbed.h"
kyxstark 8:a25a9c22ba91 5 #include "ident_crac.h"
kyxstark 8:a25a9c22ba91 6
kyxstark 8:a25a9c22ba91 7
kyxstark 8:a25a9c22ba91 8 #ifdef ROBOT_SMALL
kyxstark 8:a25a9c22ba91 9 #define NB_VENTOUSES 8
kyxstark 8:a25a9c22ba91 10 #endif
kyxstark 8:a25a9c22ba91 11
kyxstark 8:a25a9c22ba91 12 #ifdef ROBOT_BIG
kyxstark 8:a25a9c22ba91 13 #define NB_VENTOUSES 3
kyxstark 8:a25a9c22ba91 14 #endif
marwanesaich 0:84a8c24e29ae 15
marwanesaich 2:4cc8fa2f64be 16 typedef enum {Attente, Attraper, Attraper_ok, Relacher, Relacher_ok} type_etat ;
marwanesaich 0:84a8c24e29ae 17
marwanesaich 0:84a8c24e29ae 18 class Ventouse
marwanesaich 0:84a8c24e29ae 19 {
marwanesaich 0:84a8c24e29ae 20 public:
marwanesaich 5:176e7353ba1c 21 Ventouse(PinName pinPompe, PinName pinCapteurPression, char index);
marwanesaich 2:4cc8fa2f64be 22 Ventouse(PinName pinPompe, PinName pinElectrovanne, PinName pinCapteurPression, char index);
marwanesaich 0:84a8c24e29ae 23
marwanesaich 2:4cc8fa2f64be 24 void automate();
marwanesaich 2:4cc8fa2f64be 25 void action(bool action);
marwanesaich 0:84a8c24e29ae 26 void attraper();
marwanesaich 0:84a8c24e29ae 27 void relacher();
marwanesaich 0:84a8c24e29ae 28
marwanesaich 2:4cc8fa2f64be 29 bool getPression();
marwanesaich 2:4cc8fa2f64be 30 bool getPompe();
marwanesaich 0:84a8c24e29ae 31
marwanesaich 0:84a8c24e29ae 32
marwanesaich 0:84a8c24e29ae 33 void setPompe(float val);
kyxstark 8:a25a9c22ba91 34 void setElectrovanne(int val);
marwanesaich 0:84a8c24e29ae 35
marwanesaich 0:84a8c24e29ae 36
marwanesaich 0:84a8c24e29ae 37
marwanesaich 0:84a8c24e29ae 38
marwanesaich 0:84a8c24e29ae 39 private:
marwanesaich 0:84a8c24e29ae 40 PwmOut* m_pompe;
kyxstark 8:a25a9c22ba91 41 //PwmOut* m_electrovanne;
kyxstark 8:a25a9c22ba91 42 DigitalOut* m_electrovanne;
marwanesaich 0:84a8c24e29ae 43 AnalogIn* m_pression;
marwanesaich 0:84a8c24e29ae 44
marwanesaich 5:176e7353ba1c 45 bool flag_electrovanne;
marwanesaich 2:4cc8fa2f64be 46 bool flag_attraper;
marwanesaich 2:4cc8fa2f64be 47 bool flag_relacher;
marwanesaich 2:4cc8fa2f64be 48 type_etat etat;
marwanesaich 2:4cc8fa2f64be 49 char m_index;
marwanesaich 2:4cc8fa2f64be 50 char m_ack;
marwanesaich 5:176e7353ba1c 51
marwanesaich 0:84a8c24e29ae 52 PinName m_pinPompe, m_pinElectrovanne, m_pinCapteurPression;
marwanesaich 0:84a8c24e29ae 53
marwanesaich 0:84a8c24e29ae 54
marwanesaich 0:84a8c24e29ae 55 };
marwanesaich 0:84a8c24e29ae 56
marwanesaich 0:84a8c24e29ae 57 #endif //CLASS_VENTOUSE_H
marwanesaich 0:84a8c24e29ae 58