quentin godbert
/
t2-stm32-lift
interrupt géré compil ok sans isr
Fork of T2_STM32 by
main.cpp@9:d3dcad0c7d57, 2018-02-06 (annotated)
- Committer:
- ketingue
- Date:
- Tue Feb 06 11:04:00 2018 +0000
- Revision:
- 9:d3dcad0c7d57
- Parent:
- 6:6291f032e996
lift avec interruption sans isr
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ketingue | 6:6291f032e996 | 1 | |
Tioneb | 0:c365c76c11c3 | 2 | |
Tioneb | 2:ab0ccf9bb38c | 3 | // Modification dans variant.h de la variable PWM_FREQUENCY afin de changer la fréquence par défaut du PWM |
Tioneb | 2:ab0ccf9bb38c | 4 | |
Tioneb | 5:d6484db1ec5c | 5 | #include "config.h" // Bibliothéque Configuration |
Tioneb | 5:d6484db1ec5c | 6 | #include "lift.h" // Classe Ascenseur |
ketingue | 6:6291f032e996 | 7 | __enable_irq(); |
Tioneb | 5:d6484db1ec5c | 8 | |
ketingue | 6:6291f032e996 | 9 | //Lift Lift(Lift_StepPin, Lift_DirPin, Lift_CurrentSensor); //Appel de l'objet ascenseur |
ketingue | 6:6291f032e996 | 10 | Lift Lift(); |
Tioneb | 5:d6484db1ec5c | 11 | Serial.begin(115200); // Port série pour communication avec Raspberry |
Tioneb | 0:c365c76c11c3 | 12 | |
Tioneb | 5:d6484db1ec5c | 13 | pinMode(Carriage_OriginSensor, INPUT_PULLUP); |
Tioneb | 5:d6484db1ec5c | 14 | pinMode(Buzzer_Output, OUTPUT); |
Tioneb | 5:d6484db1ec5c | 15 | pinMode(Cylinder_EnablePin, INPUT); |
Tioneb | 5:d6484db1ec5c | 16 | digitalWrite(Cylinder_DirPin, LOW); |
Tioneb | 5:d6484db1ec5c | 17 | Cylinder.Origin(Cylinder_OriginSensor); |
Tioneb | 2:ab0ccf9bb38c | 18 | |
Tioneb | 2:ab0ccf9bb38c | 19 | void loop() { |
Tioneb | 0:c365c76c11c3 | 20 | |
Tioneb | 2:ab0ccf9bb38c | 21 | // Remise à zéro des variables de communications à chaque boucle |
Tioneb | 2:ab0ccf9bb38c | 22 | Address = 0; |
Tioneb | 2:ab0ccf9bb38c | 23 | Command = 0; |
Tioneb | 2:ab0ccf9bb38c | 24 | State = 0; |
Tioneb | 2:ab0ccf9bb38c | 25 | |
Tioneb | 2:ab0ccf9bb38c | 26 | ReadSerial(); // Lecture série |
Tioneb | 2:ab0ccf9bb38c | 27 | |
Tioneb | 2:ab0ccf9bb38c | 28 | Address = RxdBuffer[0]; |
Tioneb | 2:ab0ccf9bb38c | 29 | Command = RxdBuffer[1]; |
Tioneb | 0:c365c76c11c3 | 30 | |
Tioneb | 2:ab0ccf9bb38c | 31 | Check_serial_is_OK = 0; |
Tioneb | 2:ab0ccf9bb38c | 32 | // Tester la trame recu |
Tioneb | 2:ab0ccf9bb38c | 33 | if ((Address != Start_Command) && (Command != Start_Command)){ // si la trame est correct (pas de 9 dans la commande ou l'adresse) |
Tioneb | 2:ab0ccf9bb38c | 34 | Check_serial_is_OK = 1; |
Tioneb | 2:ab0ccf9bb38c | 35 | } |
Tioneb | 2:ab0ccf9bb38c | 36 | else{ // si la trame est mauvaise, ou identique, ne rien faire dans le switch/case |
Tioneb | 2:ab0ccf9bb38c | 37 | Address = 0; |
Tioneb | 2:ab0ccf9bb38c | 38 | } |
Tioneb | 2:ab0ccf9bb38c | 39 | |
Tioneb | 2:ab0ccf9bb38c | 40 | //////////////////////////////////// DEV: Affichage de la trame reçue //////////////////////////////////// |
Tioneb | 2:ab0ccf9bb38c | 41 | Serial3.print("Reception : "); |
Tioneb | 2:ab0ccf9bb38c | 42 | Serial3.print(Start_Command); |
Tioneb | 2:ab0ccf9bb38c | 43 | Serial3.print(RxdBuffer[0]); |
Tioneb | 2:ab0ccf9bb38c | 44 | Serial3.println(RxdBuffer[1]); |
Tioneb | 2:ab0ccf9bb38c | 45 | |
Tioneb | 2:ab0ccf9bb38c | 46 | digitalWrite(Buzzer_Output, HIGH); |
Tioneb | 2:ab0ccf9bb38c | 47 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 48 | digitalWrite(Buzzer_Output, LOW); |
Tioneb | 2:ab0ccf9bb38c | 49 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 50 | digitalWrite(Buzzer_Output, HIGH); |
Tioneb | 2:ab0ccf9bb38c | 51 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 52 | digitalWrite(Buzzer_Output, LOW); |
Tioneb | 2:ab0ccf9bb38c | 53 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 54 | digitalWrite(Buzzer_Output, HIGH); |
Tioneb | 2:ab0ccf9bb38c | 55 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 56 | digitalWrite(Buzzer_Output, LOW); |
Tioneb | 2:ab0ccf9bb38c | 57 | delay(500); |
Tioneb | 2:ab0ccf9bb38c | 58 | |
Tioneb | 2:ab0ccf9bb38c | 59 | } |