![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
06.03.2018
Fork of Alarmsystem_med_matrix_log_funker_ikke by
Diff: main.cpp
- Revision:
- 6:a3b97bf7902b
- Parent:
- 5:045ef3068f21
- Child:
- 10:f0a6d74095d4
--- a/main.cpp Tue Jan 30 10:41:49 2018 +0000 +++ b/main.cpp Wed Feb 07 10:44:44 2018 +0000 @@ -1,61 +1,70 @@ #include "mbed.h" +#include <vector> -#define Feil 0<1 -#define Tilstand1 2.5<2.7 -#define Tilstand2 2.1<2.3 -#define Tilstand3 3.3 -#define Normaldrift 1.8<2.0 -DigitalOut myled2(LED2); +#define Inn 4 +//#define Feil 0<1 +#define Tilstand1 (0.75 > 0.83) +//#define Tilstand2 2.1<2.3 +//#define Tilstand3 3.3 +//#define Normaldrift 1.8<2.0 + +//DigitalOut myled2(LED2); Serial pc(USBTX, USBRX); DigitalOut Driftslys(LED1); -BusOut AlarmUtganger1(p21, p22, p23, p24); -BusOut AlarmUtganger2(p25, p26, p27, p28); +BusOut AlarmUtganger1(p21, p22, p23, p24); //1, 2, 4, 8 +BusOut AlarmUtganger2(p25, p26, p27, p28); //1, 2, 4, 8 DigitalIn Servicebryter(p20); -AnalogIn _Sone1(p15); float Sone1 = _Sone1 * 3.3; -AnalogIn _Sone2(p16); float Sone2 = _Sone2 * 3.3; -AnalogIn _Sone3(p17); float Sone3 = _Sone3 * 3.3; -AnalogIn _Sone4(p19); float Sone4 = _Sone4 * 3.3; - - -Ticker AlarmBlink; //10Hz blinking for alarmfunksjon på lys og telling -int Tid = 0; -volatile int sysclock = 0; +AnalogIn _Sone1(p15); AnalogIn _Sone2(p16); AnalogIn _Sone3(p17); AnalogIn _Sone4(p19); +float Soner[Inn]; -int Utganger1 = AlarmUtganger1; -int Utganger2 = AlarmUtganger2; -int Bryter = Servicebryter; -int Door1_1 = 0, Door1_2 = 0, Door2_1 = 0, Door2_2 = 0, Door3_1 = 0, Door3_2 = 0, Door4_1 = 0, Door4_2 = 0; -float ArrSone[4] = {Sone1, Sone2, Sone3, Sone4}; -int DoorOne[4] = { Door1_1, Door2_1, Door3_1, Door4_1 }; -int DoorTwo[4] = { Door1_2, Door2_2, Door3_2, Door4_2 }; +//Ticker AlarmBlink; //10Hz blinking for alarmfunksjon på lys og telling +//nt Tid = 0; +//volatile int sysclock = 0; -enum {_Feil, _Tilstand1, _Tilstand2, _Tilstand3, _NormalDrift} Tilstand; // Tilstand1 = Bryter1 i Sonen valgt, Tilstand2 = Bryter2 i sonen valgt, Tilstand3 = bryter 1 og 2 i sonen valgt, Normaldrift = alt er optimalt. int Tilstandssjekk(); -void AlarmBlink_Start(void); -volatile int Klokke = 0; +//void AlarmBlink_Start(void); +//volatile int Klokke = 0; int main() { - AlarmBlink.attach(&AlarmBlink_Start, 0.05); + //AlarmBlink.attach(&AlarmBlink_Start, 0.05); while(1) { - if(Servicebryter == 1) { + /*if(Servicebryter == 1) { Utganger1 = 0; Utganger2 = 0; + }*/ + Soner[0] = _Sone1; + //Soner[1] = _Sone2; + //Soner[2] = _Sone3; + //Soner[3] = _Sone4; + for(int i=0; i < Inn; i++) { + pc.printf("%f\n", Soner[i]); + if((Soner[i] > 0.75 )&&( Soner[i] < 0.83)) { //Tilstand1, Dør 1 åpen + pc.printf("Vi er i Tilstand1\n"); + } + if((Soner[i] > 0.55 )&&( Soner[i] < 0.59)) { //Normaldrift + pc.printf("Vi er i Normaldrift\n"); + } + if((Soner[i] > 0.65 )&&( Soner[i] < 0.69)) { //Tilstand 2, Dør 2 åpen + pc.printf("Vi er i tilstand2\n"); + } + if(Soner[i] >= 1) { //Begge dører er åpne + pc.printf("Vi er i tilstand 3, begge doorer er aapne"); + } + wait(1.5); } - Tilstandssjekk(); - float volt = Sone1; - pc.printf("%f\n", volt); - wait(1.0); + //pc.printf("%f\n", Sone1[]); + //Tilstandssjekk(Sone1[]); + //float volt = Sone1[]; + //pc.printf("%f\n", volt); //while(sysclock == 1); //while(sysclock == 0); - Tid++; - - + //Tid++; } } -int Tilstandssjekk() +/*int Tilstandssjekk() { int i = 0; for(i = 0; i < 3; i++) { @@ -89,13 +98,13 @@ } } return 0; -} +} */ -void AlarmBlink_Start(void) +/*void AlarmBlink_Start(void) { sysclock = !sysclock; Driftslys = 1; if(Normaldrift == 1) { sysclock = 1; } -} \ No newline at end of file +}*/ \ No newline at end of file