ParkingMeter

Committer:
williequesada
Date:
Tue Jun 04 16:03:14 2019 +0000
Revision:
0:e5fc6b10744e
compartir a Pablo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
williequesada 0:e5fc6b10744e 1 #include "ParkingMeter.h"
williequesada 0:e5fc6b10744e 2 #include "mbed.h"
williequesada 0:e5fc6b10744e 3
williequesada 0:e5fc6b10744e 4 char AlarmString[6]={'A','A','A','A','A','A'};
williequesada 0:e5fc6b10744e 5 bool AlarmBool=0;
williequesada 0:e5fc6b10744e 6 int Counter_Host=1315;
williequesada 0:e5fc6b10744e 7 int Hostin_Conection=1320;
williequesada 0:e5fc6b10744e 8
williequesada 0:e5fc6b10744e 9 PARKING_METER::PARKING_METER(PinName ManteLed, PinName UserLed, PinName HostLed, PinName Max232): _ManteLed(ManteLed), _UserLed(UserLed), _HostLed(HostLed), _Max232(Max232)
williequesada 0:e5fc6b10744e 10 {
williequesada 0:e5fc6b10744e 11 _HostLed=0;
williequesada 0:e5fc6b10744e 12 _UserLed=0;
williequesada 0:e5fc6b10744e 13 _HostLed=0;
williequesada 0:e5fc6b10744e 14 _Max232=0;
williequesada 0:e5fc6b10744e 15 }
williequesada 0:e5fc6b10744e 16
williequesada 0:e5fc6b10744e 17 void PARKING_METER::AlarmCall(int Device,char State){
williequesada 0:e5fc6b10744e 18
williequesada 0:e5fc6b10744e 19 // Esta funcion permite cambiar los valores de estados que son enviados al hosting.
williequesada 0:e5fc6b10744e 20 // 1 -> Lector
williequesada 0:e5fc6b10744e 21 // 2 -> Impresora
williequesada 0:e5fc6b10744e 22 // 3 -> Papel
williequesada 0:e5fc6b10744e 23 // 4 -> Puerta1
williequesada 0:e5fc6b10744e 24 // 5 -> Puerta2
williequesada 0:e5fc6b10744e 25 // 6 -> Bateria
williequesada 0:e5fc6b10744e 26
williequesada 0:e5fc6b10744e 27 if(AlarmString[Device-1]!=State){
williequesada 0:e5fc6b10744e 28 if(State=='E') {
williequesada 0:e5fc6b10744e 29 printf("Alarmas cambio E");
williequesada 0:e5fc6b10744e 30 AlarmString[Device-1]='E';
williequesada 0:e5fc6b10744e 31 AlarmBool=1;
williequesada 0:e5fc6b10744e 32 } else {
williequesada 0:e5fc6b10744e 33 printf("Alarmas cambio A");
williequesada 0:e5fc6b10744e 34 AlarmString[Device-1]='A';
williequesada 0:e5fc6b10744e 35 AlarmBool=1;
williequesada 0:e5fc6b10744e 36 }
williequesada 0:e5fc6b10744e 37 }
williequesada 0:e5fc6b10744e 38 }
williequesada 0:e5fc6b10744e 39
williequesada 0:e5fc6b10744e 40 bool PARKING_METER::AlarmState(){
williequesada 0:e5fc6b10744e 41 // Nos devuelve un valor true o false en caso de que alguna alarma inicie.
williequesada 0:e5fc6b10744e 42 return AlarmBool;
williequesada 0:e5fc6b10744e 43 }
williequesada 0:e5fc6b10744e 44
williequesada 0:e5fc6b10744e 45 void PARKING_METER::Hosting(){
williequesada 0:e5fc6b10744e 46 Counter_Host++;
williequesada 0:e5fc6b10744e 47 if(Counter_Host>Hostin_Conection) {
williequesada 0:e5fc6b10744e 48 AlarmBool=1;
williequesada 0:e5fc6b10744e 49 Counter_Host=0;
williequesada 0:e5fc6b10744e 50 }
williequesada 0:e5fc6b10744e 51 }
williequesada 0:e5fc6b10744e 52
williequesada 0:e5fc6b10744e 53 char PARKING_METER::HostingOk(){
williequesada 0:e5fc6b10744e 54 AlarmBool=0;
williequesada 0:e5fc6b10744e 55 }
williequesada 0:e5fc6b10744e 56 char PARKING_METER::AlarmReader(){
williequesada 0:e5fc6b10744e 57 return AlarmString[0];
williequesada 0:e5fc6b10744e 58 }
williequesada 0:e5fc6b10744e 59
williequesada 0:e5fc6b10744e 60 char PARKING_METER::AlarmPrinter(){
williequesada 0:e5fc6b10744e 61 return AlarmString[1];
williequesada 0:e5fc6b10744e 62 }
williequesada 0:e5fc6b10744e 63
williequesada 0:e5fc6b10744e 64 char PARKING_METER::AlarmPaper(){
williequesada 0:e5fc6b10744e 65 return AlarmString[2];
williequesada 0:e5fc6b10744e 66 }
williequesada 0:e5fc6b10744e 67
williequesada 0:e5fc6b10744e 68 char PARKING_METER::AlarmDoor1(){
williequesada 0:e5fc6b10744e 69 return AlarmString[3];
williequesada 0:e5fc6b10744e 70 }
williequesada 0:e5fc6b10744e 71
williequesada 0:e5fc6b10744e 72 char PARKING_METER::AlarmDoor2(){
williequesada 0:e5fc6b10744e 73 return AlarmString[4];
williequesada 0:e5fc6b10744e 74 }
williequesada 0:e5fc6b10744e 75
williequesada 0:e5fc6b10744e 76 char PARKING_METER::AlarmBattery(){
williequesada 0:e5fc6b10744e 77 return AlarmString[5];
williequesada 0:e5fc6b10744e 78 }
williequesada 0:e5fc6b10744e 79
williequesada 0:e5fc6b10744e 80 void PARKING_METER::LedMantenimiento(bool StateLed){
williequesada 0:e5fc6b10744e 81 _ManteLed=StateLed;
williequesada 0:e5fc6b10744e 82 }
williequesada 0:e5fc6b10744e 83
williequesada 0:e5fc6b10744e 84 void PARKING_METER::LedHosting(bool StateLed){
williequesada 0:e5fc6b10744e 85 _HostLed=StateLed;
williequesada 0:e5fc6b10744e 86 }
williequesada 0:e5fc6b10744e 87
williequesada 0:e5fc6b10744e 88 void PARKING_METER::LedUsuario(bool StateLed){
williequesada 0:e5fc6b10744e 89 _UserLed=StateLed;
williequesada 0:e5fc6b10744e 90 }
williequesada 0:e5fc6b10744e 91
williequesada 0:e5fc6b10744e 92 void PARKING_METER::Max232(bool StateMax){
williequesada 0:e5fc6b10744e 93 _Max232=StateMax;
williequesada 0:e5fc6b10744e 94 }
williequesada 0:e5fc6b10744e 95
williequesada 0:e5fc6b10744e 96
williequesada 0:e5fc6b10744e 97