Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:f42f18c56a88, 2013-11-16 (annotated)
- Committer:
- pcolla
- Date:
- Sat Nov 16 00:48:19 2013 +0000
- Revision:
- 0:f42f18c56a88
alarma VyV
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pcolla | 0:f42f18c56a88 | 1 | #include "mbed.h" |
pcolla | 0:f42f18c56a88 | 2 | #include "alarma.h" |
pcolla | 0:f42f18c56a88 | 3 | |
pcolla | 0:f42f18c56a88 | 4 | AnalogIn Ref(p19); //Pot 1 |
pcolla | 0:f42f18c56a88 | 5 | DigitalIn Pulsador(p14); //Joystick Center |
pcolla | 0:f42f18c56a88 | 6 | DigitalOut Buzzer(p29); //Sirena |
pcolla | 0:f42f18c56a88 | 7 | AnalogIn Valor(p20); //Pot 2 (Sensor Analogo) |
pcolla | 0:f42f18c56a88 | 8 | DigitalOut Alive(LED2); //KeepAlive signal |
pcolla | 0:f42f18c56a88 | 9 | DigitalOut Indicador(LED1); //LED de encendido |
pcolla | 0:f42f18c56a88 | 10 | DigitalOut Luz(p23); //RGB red |
pcolla | 0:f42f18c56a88 | 11 | DigitalIn Estado(p21); //Sensor Digital |
pcolla | 0:f42f18c56a88 | 12 | |
pcolla | 0:f42f18c56a88 | 13 | int i=0; |
pcolla | 0:f42f18c56a88 | 14 | int Titila = 1; |
pcolla | 0:f42f18c56a88 | 15 | int On = 2; |
pcolla | 0:f42f18c56a88 | 16 | int Off = 3; |
pcolla | 0:f42f18c56a88 | 17 | bool check = true; |
pcolla | 0:f42f18c56a88 | 18 | bool testResult = false; |
pcolla | 0:f42f18c56a88 | 19 | int delaySirena = 1; //Factory configuration. |
pcolla | 0:f42f18c56a88 | 20 | int testSirena = 1; |
pcolla | 0:f42f18c56a88 | 21 | int delayLuz = 1; //Factory configuration. |
pcolla | 0:f42f18c56a88 | 22 | int delayFactory = 2; //Factory configuration. |
pcolla | 0:f42f18c56a88 | 23 | int AStatus = 0; |
pcolla | 0:f42f18c56a88 | 24 | int DStatus = 0; |
pcolla | 0:f42f18c56a88 | 25 | int An = 0; |
pcolla | 0:f42f18c56a88 | 26 | int Di = 0; |
pcolla | 0:f42f18c56a88 | 27 | int Prog; |
pcolla | 0:f42f18c56a88 | 28 | int Auto = 1; //Armado automático al encender. |
pcolla | 0:f42f18c56a88 | 29 | |
pcolla | 0:f42f18c56a88 | 30 | int main() { |
pcolla | 0:f42f18c56a88 | 31 | Luz = 1; |
pcolla | 0:f42f18c56a88 | 32 | Prog = 1; |
pcolla | 0:f42f18c56a88 | 33 | Auto = 1; |
pcolla | 0:f42f18c56a88 | 34 | while(true){ |
pcolla | 0:f42f18c56a88 | 35 | if(check == true) |
pcolla | 0:f42f18c56a88 | 36 | testResult = Test(); |
pcolla | 0:f42f18c56a88 | 37 | while(testResult == 0){ |
pcolla | 0:f42f18c56a88 | 38 | Luz = 1; |
pcolla | 0:f42f18c56a88 | 39 | LED(Titila); |
pcolla | 0:f42f18c56a88 | 40 | KeepAlive(); |
pcolla | 0:f42f18c56a88 | 41 | if(Pulsador == true){ |
pcolla | 0:f42f18c56a88 | 42 | wait(5); |
pcolla | 0:f42f18c56a88 | 43 | if(Pulsador == true){ |
pcolla | 0:f42f18c56a88 | 44 | check = 1; //Test habilitado. |
pcolla | 0:f42f18c56a88 | 45 | break; |
pcolla | 0:f42f18c56a88 | 46 | } |
pcolla | 0:f42f18c56a88 | 47 | } |
pcolla | 0:f42f18c56a88 | 48 | } |
pcolla | 0:f42f18c56a88 | 49 | while(testResult){ |
pcolla | 0:f42f18c56a88 | 50 | Luz = 1; |
pcolla | 0:f42f18c56a88 | 51 | if(Pulsador == true){ |
pcolla | 0:f42f18c56a88 | 52 | wait(5); |
pcolla | 0:f42f18c56a88 | 53 | if(Pulsador == true){ |
pcolla | 0:f42f18c56a88 | 54 | Config(); //Modo programación en Fábrica. |
pcolla | 0:f42f18c56a88 | 55 | } |
pcolla | 0:f42f18c56a88 | 56 | } |
pcolla | 0:f42f18c56a88 | 57 | Prog = 0; //Deshabilito modo programación hasta resetear. |
pcolla | 0:f42f18c56a88 | 58 | LED(On); |
pcolla | 0:f42f18c56a88 | 59 | while((Pulsador == false)&&(Auto != 1)){ //Esperando armado. |
pcolla | 0:f42f18c56a88 | 60 | KeepAlive(); |
pcolla | 0:f42f18c56a88 | 61 | } |
pcolla | 0:f42f18c56a88 | 62 | Auto = 0; |
pcolla | 0:f42f18c56a88 | 63 | wait(0.05); |
pcolla | 0:f42f18c56a88 | 64 | for(i=0;i<10;i++){ //Pulsador presionado > 5s => Test(). |
pcolla | 0:f42f18c56a88 | 65 | if(Pulsador){ |
pcolla | 0:f42f18c56a88 | 66 | wait(0.5); |
pcolla | 0:f42f18c56a88 | 67 | check = true; //Test habilitado. |
pcolla | 0:f42f18c56a88 | 68 | } |
pcolla | 0:f42f18c56a88 | 69 | else { |
pcolla | 0:f42f18c56a88 | 70 | check = false; |
pcolla | 0:f42f18c56a88 | 71 | Armar(); |
pcolla | 0:f42f18c56a88 | 72 | break; |
pcolla | 0:f42f18c56a88 | 73 | } |
pcolla | 0:f42f18c56a88 | 74 | } |
pcolla | 0:f42f18c56a88 | 75 | if(check == true) |
pcolla | 0:f42f18c56a88 | 76 | break; //Go to Test. |
pcolla | 0:f42f18c56a88 | 77 | } |
pcolla | 0:f42f18c56a88 | 78 | } |
pcolla | 0:f42f18c56a88 | 79 | } |