Andrea Coronado
/
Movimiento
Sensor de movimiento con bluetooth
Embed:
(wiki syntax)
Show/hide line numbers
movimiento.cpp
00001 #include "mbed.h" 00002 Serial pc(USBTX, USBRX); 00003 00004 DigitalOut led = (PTC9); // LED que comprueba movimiento 00005 DigitalIn pinLectura = (PTB0); // Pin de lectura del sensor INPUTPIN 00006 Timer timer; 00007 int begin, end; 00008 00009 PwmOut buzzer_valor(PTB2); 00010 00011 Serial bt(PTE0, PTE1); 00012 00013 void fBuzzer() 00014 { // funcion del buzzer 00015 bt.baud(9600); 00016 buzzer_valor.period_ms(1); // set PWM period 00017 bt.printf("INTRUSO!"); 00018 while(1) 00019 { 00020 if(bt.readable()) 00021 { 00022 //valorDIP = switchSistemaSeguridad.read(); 00023 buzzer_valor = 0.5; //set duty cycle 00024 wait(0.3); //hold for beat period 00025 buzzer_valor = 0; 00026 wait(0.3); 00027 00028 /*ledsPrincipales = 1; //set duty cycle 00029 wait(0.3); //hold for beat period 00030 ledsPrincipales = 0; 00031 wait(0.3);*/ 00032 00033 int blue = bt.getc(); 00034 if (blue == 'd'){ 00035 bt.printf("Sistema Desactivado"); 00036 return; 00037 } 00038 } 00039 } 00040 } 00041 00042 void f_SensorMovimiento() 00043 { 00044 timer.start(); 00045 while(timer <= 3) 00046 { 00047 led = 1; 00048 } 00049 timer.stop(); 00050 timer.reset(); 00051 00052 int val2 = pinLectura.read(); 00053 00054 if(val2 == 0){ 00055 f_SensorMovimiento(); 00056 } 00057 00058 else{ 00059 led = 0; 00060 return; 00061 } 00062 } 00063 00064 int main() 00065 { 00066 bt.baud(9600); 00067 while(1) 00068 { 00069 00070 int val = pinLectura.read(); 00071 00072 if(bt.readable()) //establesco la conexion del bluethooth 00073 { 00074 char c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable 00075 //bt.printf("%c\n\r", c); 00076 00077 if(c == 's') 00078 { 00079 bt.printf("Sistema Activado"); 00080 if(val == 0) 00081 { 00082 fBuzzer(); 00083 } 00084 } 00085 00086 if (c == 'm') 00087 { 00088 bt.printf("Iluminacion Automatica Activada\r"); 00089 while(c != 'v'){ 00090 00091 if (val == 0) 00092 { 00093 f_SensorMovimiento(); 00094 } 00095 if(bt.readable()) 00096 { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') 00097 c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable 00098 led = 0; //apaga el led si se sale de este pedaso 00099 } 00100 } 00101 bt.printf("Iluminacion Automatica Desactivada"); 00102 } 00103 if(c == 'p') 00104 { 00105 bt.printf("Prueba"); 00106 } 00107 } 00108 } 00109 }
Generated on Sat Jul 16 2022 20:39:01 by 1.7.2