vh

Dependencies:   C12832

Revision:
0:d7df74440bf6
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Jun 08 06:58:02 2021 +0000
@@ -0,0 +1,78 @@
+/* Programme centrale d'alarme
+    V1_0
+    Le 16/12/2020
+    Par Simon Delcroix */
+// On ajoute entree    1
+
+#include "mbed.h"
+#include "platform/mbed_thread.h"
+#include "C12832.h"
+
+// Blinking rate in milliseconds
+#define BLINKING_RATE_MS 500
+Serial pc(USBTX,USBRX);
+AnalogIn pot1 (A0);
+C12832 lcd(D11, D13, D12, D7, D10);
+/* fonction qui traite les entrees
+   en entree : valeur de l'entree
+   en sortie : etat entree
+   Cc : Court circuit
+   An : Anomalie
+   Nl : normal
+   Cp : cable coupoe */
+
+#define VNl 1.41 // en dessous pas anomalie
+#define VAn 0.88 // en dessous Anomalie
+#define VCc 0.36   // en dessous cable cc
+// au dessus de VNl Cable coupe
+int resultat;
+PwmOut led (D5);
+PwmOut spkr(D6);
+
+int main()
+{
+    while(true) {
+        float Entree1;
+        float cc = 200;
+        float an = 500;
+        float cp = 800;
+        Entree1 = 5*pot1.read();
+
+        pc.printf("Entree 1 =%f\n\r",Entree1);
+        if (Entree1 < VCc) {
+            lcd.locate(0, 3);
+            lcd.printf("Entree 1 : Court circuit");
+            led.write(0.15);
+            led.period(1);
+            spkr.period(1.0/cc);
+            spkr=0.5;
+            thread_sleep_for(0.2);
+
+        } else if (Entree1 < VAn) {
+            lcd.locate(0, 3);
+            lcd.printf("Entree 1 : Anomalie      ");
+            led.write(0.05);
+            led.period(1);
+            spkr.period(1.0/an);
+            spkr=0.5;
+            thread_sleep_for(0.2);
+
+        } else if (Entree1 < VNl) {
+            lcd.locate(0, 3);
+            lcd.printf("Entree 1 : Etat normal   ");
+            led.write(1);
+            led.period(1);
+            spkr=0.0;
+
+        } else {
+            lcd.locate(0, 3);
+            lcd.printf("Entree 1 : Cable coupe   ");
+            led.write(0.1);
+            led.period(1);
+            spkr.period(1.0/cp);
+            spkr=0.5;
+            thread_sleep_for(0.2);
+        }
+    }
+
+}