tarea alarma

Dependencies:   mbed

Fork of frdmk64_detach by IPN ESIME ZACATENCO

Committer:
ArlesValdovinos
Date:
Thu Sep 25 19:11:06 2014 +0000
Revision:
0:66eebc209a84
tarea alarma

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ArlesValdovinos 0:66eebc209a84 1 #include "mbed.h"
ArlesValdovinos 0:66eebc209a84 2 Ticker ticker;
ArlesValdovinos 0:66eebc209a84 3 InterruptIn boton1(SW2);
ArlesValdovinos 0:66eebc209a84 4 InterruptIn boton2(SW3);
ArlesValdovinos 0:66eebc209a84 5 DigitalOut led1(LED_GREEN);
ArlesValdovinos 0:66eebc209a84 6 DigitalOut led2(LED_RED);
ArlesValdovinos 0:66eebc209a84 7 Serial pc(USBTX, USBRX);
ArlesValdovinos 0:66eebc209a84 8 int x=0;
ArlesValdovinos 0:66eebc209a84 9
ArlesValdovinos 0:66eebc209a84 10 void tick()
ArlesValdovinos 0:66eebc209a84 11 {
ArlesValdovinos 0:66eebc209a84 12 led1 = !led1;
ArlesValdovinos 0:66eebc209a84 13 }
ArlesValdovinos 0:66eebc209a84 14
ArlesValdovinos 0:66eebc209a84 15 void bot1()
ArlesValdovinos 0:66eebc209a84 16 {
ArlesValdovinos 0:66eebc209a84 17 if (x==0) {
ArlesValdovinos 0:66eebc209a84 18 pc.printf("Alarma!\n");
ArlesValdovinos 0:66eebc209a84 19 led1=1;
ArlesValdovinos 0:66eebc209a84 20 led2=0;
ArlesValdovinos 0:66eebc209a84 21 ticker.detach();
ArlesValdovinos 0:66eebc209a84 22 x=1;
ArlesValdovinos 0:66eebc209a84 23 }
ArlesValdovinos 0:66eebc209a84 24 }
ArlesValdovinos 0:66eebc209a84 25
ArlesValdovinos 0:66eebc209a84 26 void bot2()
ArlesValdovinos 0:66eebc209a84 27 {
ArlesValdovinos 0:66eebc209a84 28 if(x==1) {
ArlesValdovinos 0:66eebc209a84 29 led2=1;
ArlesValdovinos 0:66eebc209a84 30 ticker.attach(&tick,0.4);
ArlesValdovinos 0:66eebc209a84 31 pc.printf("De vuelta a la normalidad!\n");
ArlesValdovinos 0:66eebc209a84 32 x=0;
ArlesValdovinos 0:66eebc209a84 33 }
ArlesValdovinos 0:66eebc209a84 34 }
ArlesValdovinos 0:66eebc209a84 35
ArlesValdovinos 0:66eebc209a84 36 int main()
ArlesValdovinos 0:66eebc209a84 37 {
ArlesValdovinos 0:66eebc209a84 38 led1 = 1;
ArlesValdovinos 0:66eebc209a84 39 led2 = 1;
ArlesValdovinos 0:66eebc209a84 40 ticker.attach(&tick, 0.4);
ArlesValdovinos 0:66eebc209a84 41 pc.printf("Estado normal!\n");
ArlesValdovinos 0:66eebc209a84 42 boton1.rise(&bot1);
ArlesValdovinos 0:66eebc209a84 43 boton2.rise(&bot2);
ArlesValdovinos 0:66eebc209a84 44 while(1) {
ArlesValdovinos 0:66eebc209a84 45
ArlesValdovinos 0:66eebc209a84 46 }
ArlesValdovinos 0:66eebc209a84 47 }