Déclenchez l'alarme au-delà de 20°
Arduino C++Le code de départ lit l'inclinaison et l'affiche, mais rien n'avertit personne. Quand le roulis dépasse 20° d'un côté ou de l'autre, mettez D13 à HIGH et jouez une tonalité de 2 kHz sur le buzzer (D8) ; sinon, D13 à LOW et noTone(). La carte est d'abord à plat, inclinée de 35° à 2 s, revenue à -10° à 3,5 s et inclinée de -40° à 5 s.
Vérifications
- Pas encore lancéTourne
- Pas encore lancéÀ plat : D13 à LOW
- Pas encore lancéInclinée de 35° : D13 à HIGH
- Pas encore lancéInclinée de 35° : le buzzer sonne à environ 2 kHz
- Pas encore lancéRevenue à -10° : D13 de nouveau à LOW
- Pas encore lancéInclinée de -40° : D13 à HIGH
- Pas encore lancéInclinée de -40° : le buzzer sonne
Indices
- abs(roll) > 20 couvre les deux sens.
- tone(BUZZER, 2000) continue de jouer jusqu'à noTone(BUZZER).
- digitalWrite(13, alarm ? HIGH : LOW); règle la LED en une ligne.