Sensor de movimiento con bluetooth

Dependencies:   mbed

Committer:
AndreaC
Date:
Sat Nov 29 20:17:52 2014 +0000
Revision:
0:0a405c6f350d
Child:
1:b0059057fd23
Sensor de movimiento con bluetooth

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AndreaC 0:0a405c6f350d 1 #include "mbed.h"
AndreaC 0:0a405c6f350d 2 Serial pc(USBTX, USBRX);
AndreaC 0:0a405c6f350d 3
AndreaC 0:0a405c6f350d 4 DigitalOut led = (PTC9); // LED que comprueba movimiento
AndreaC 0:0a405c6f350d 5 DigitalIn pinLectura = (PTB0); // Pin de lectura del sensor INPUTPIN
AndreaC 0:0a405c6f350d 6 Timer timer;
AndreaC 0:0a405c6f350d 7 int begin, end;
AndreaC 0:0a405c6f350d 8
AndreaC 0:0a405c6f350d 9 Serial bt(PTE0, PTE1);
AndreaC 0:0a405c6f350d 10
AndreaC 0:0a405c6f350d 11 void f_SensorMovimiento()
AndreaC 0:0a405c6f350d 12 {
AndreaC 0:0a405c6f350d 13 timer.start();
AndreaC 0:0a405c6f350d 14 while(timer <= 3)
AndreaC 0:0a405c6f350d 15 {
AndreaC 0:0a405c6f350d 16 led = 1;
AndreaC 0:0a405c6f350d 17 }
AndreaC 0:0a405c6f350d 18 timer.stop();
AndreaC 0:0a405c6f350d 19 timer.reset();
AndreaC 0:0a405c6f350d 20
AndreaC 0:0a405c6f350d 21 int val2 = pinLectura.read();
AndreaC 0:0a405c6f350d 22
AndreaC 0:0a405c6f350d 23 if(val2 == 0){
AndreaC 0:0a405c6f350d 24 f_SensorMovimiento();
AndreaC 0:0a405c6f350d 25 }
AndreaC 0:0a405c6f350d 26
AndreaC 0:0a405c6f350d 27 else{
AndreaC 0:0a405c6f350d 28 led = 0;
AndreaC 0:0a405c6f350d 29 return;
AndreaC 0:0a405c6f350d 30 }
AndreaC 0:0a405c6f350d 31 }
AndreaC 0:0a405c6f350d 32
AndreaC 0:0a405c6f350d 33 int main()
AndreaC 0:0a405c6f350d 34 {
AndreaC 0:0a405c6f350d 35 bt.baud(9600);
AndreaC 0:0a405c6f350d 36 while(1)
AndreaC 0:0a405c6f350d 37 {
AndreaC 0:0a405c6f350d 38 if(bt.readable()) //establesco la conexion del bluethooth
AndreaC 0:0a405c6f350d 39 {
AndreaC 0:0a405c6f350d 40 char c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable
AndreaC 0:0a405c6f350d 41 //bt.printf("%c\n\r", c);
AndreaC 0:0a405c6f350d 42
AndreaC 0:0a405c6f350d 43 if (c == 'm')
AndreaC 0:0a405c6f350d 44 {
AndreaC 0:0a405c6f350d 45 bt.printf("Iluminacion Automatica Activada\r");
AndreaC 0:0a405c6f350d 46 while(c != 'v'){
AndreaC 0:0a405c6f350d 47
AndreaC 0:0a405c6f350d 48 int val = pinLectura.read();
AndreaC 0:0a405c6f350d 49
AndreaC 0:0a405c6f350d 50 if (val == 0)
AndreaC 0:0a405c6f350d 51 {
AndreaC 0:0a405c6f350d 52 f_SensorMovimiento();
AndreaC 0:0a405c6f350d 53 }
AndreaC 0:0a405c6f350d 54 if(bt.readable())
AndreaC 0:0a405c6f350d 55 { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v')
AndreaC 0:0a405c6f350d 56 c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable
AndreaC 0:0a405c6f350d 57 led = 0; //apaga el led si se sale de este pedaso
AndreaC 0:0a405c6f350d 58 }
AndreaC 0:0a405c6f350d 59 }
AndreaC 0:0a405c6f350d 60 bt.printf("Iluminacion Automatica Desactivada");
AndreaC 0:0a405c6f350d 61 }
AndreaC 0:0a405c6f350d 62 if(c == 'p')
AndreaC 0:0a405c6f350d 63 {
AndreaC 0:0a405c6f350d 64 bt.printf("Prueba");
AndreaC 0:0a405c6f350d 65 }
AndreaC 0:0a405c6f350d 66 }
AndreaC 0:0a405c6f350d 67 }
AndreaC 0:0a405c6f350d 68 }