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.
Fork of bluetooth by
Revision 1:4262d6cea937, committed 2014-12-01
- Comitter:
- AndreaC
- Date:
- Mon Dec 01 13:38:09 2014 +0000
- Parent:
- 0:6c63cd34de2d
- Commit message:
- Final de Informatica
Changed in this revision
Final_Informatica.cpp | Show annotated file Show diff for this revision Revisions of this file |
main.cpp | Show diff for this revision Revisions of this file |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Final_Informatica.cpp Mon Dec 01 13:38:09 2014 +0000 @@ -0,0 +1,171 @@ +#include "mbed.h" //libreria de mbed lol XD +#include "Servo.h" // libreria del servo, es para controlar el servo + +Serial bt(PTE0, PTE1); // establese puentos que comunican con el bluethoot, establese una varialbe llamada "bt" para estos puertos +Serial pc(USBTX,USBRX); // comunicacion serial con la computadora +PwmOut servo(PTA5); // esptablece una variable Pwm llamada "servo" +PwmOut buzzer_valor(PTB1); // establece una variable Pwm llamada "buzzer_valor" +PwmOut led_foto(PTC8); //establece una variable pwm llamada "led" +AnalogIn fotoresistencia_valor(PTB3); //establece una variable Analogica llamada "fotoresistencia_valor", esta variable la resive la freedom, +DigitalOut led_sensorm(PTC9); +DigitalIn pinLectura = (PTB0); // Pin de lectura del sensor INPUTPIN +Timer timer; + +int valorReedSwitch = 0; +DigitalIn reedSwitch(PTA13); + +void f_SensorMovimiento() +{ + timer.start(); + while(timer <= 3) + { + led_sensorm = 1; + } + timer.stop(); + timer.reset(); + led_sensorm=0; +} + +void fotoresistencia() +{ // funcion de la fotoresistencia + float valor=fotoresistencia_valor.read(); // lee es lavor de la fotoresistencia y la asigna a una variable flotante llamada "valor" + wait(.025); // timer se .025s + valor=((fotoresistencia_valor -(.039))*(-10)); // funcion que recorre los valores de la freedom + //valor=((1)-(valor)); // nada + if(valor<0) + { // si el valor es menor a cero + valor=0; // iguala el valor a 0 + } + if(valor>1) + { //si el valor es mayor a cero + valor=1; // iguala el valor a 1 + } + led_foto=valor; // enciende el led con una intencidad = al valor +} + + void buzzer() + { // funcion del buzzer + bt.printf("Alarma Activada\n\r"); //imprime un string como respuesta, ay comnicacion y la funcion esta siendo corrida + buzzer_valor.period_ms(1); // set PWM period + timer.start(); + while(timer <= 5) + { + buzzer_valor = 0.5; //set duty cycle + led_sensorm = 1; + wait(0.3); //hold for beat period + buzzer_valor = 0; + led_sensorm = 0; + wait(0.3); + } + timer.stop(); + timer.reset(); + } // termina la funcion + +int main() +{ // inicia el programa + + bt.baud(9600); // establese la comunicacion serial entre la freedom y el bluethooth + servo.period_ms(20); // esta linea asigna un periodo en milisegundos, este periodo es asignado para pode usar es servo + + while(1) // esta parte del programa se repite infinitamente + { + if(bt.readable()) //establesco la conexion del bluethooth + { + char c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable char + + bt.printf("%c\n\r",c); // como respuesta para verificar que la informacion mandada aya llegado a la freedom + // la imprime en la terminal del usuario + + if (c == 'w') + { //checa si el caracter mandado por el usuario es una "w" + + servo.pulsewidth_us(1700);// move servo to 180° position + bt.printf("serbou\n\r"); // imprime en la terminal del usuario un string"servoa" + + } + if (c == 's') + { //checa si el caracter mandado por el usuario es una "s" + + servo.pulsewidth_us(1000);//move servo to 0 degrees + bt.printf("servob\n\r"); //imprime en la terminal del usuario un string "servob" + } + + if( c == 'p') + {//checa si el caracter mandado por el usuario es una "p" + buzzer(); //manda llamar la funcion del buzzer + } + + if( c == 'r') + {//checa si el caracter mandado por el usuario es una "p" + while(c != 'v') + { + valorReedSwitch = reedSwitch.read(); + if(valorReedSwitch == 1); + buzzer(); + } + } + + if (c == 'm') + { + + bt.printf("Iluminacion Automatica Activada\r"); + while(c != 'v') + { + int val = pinLectura.read(); + if (val == 0) + { + f_SensorMovimiento(); + } + if(bt.readable()) + { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') + c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable + led_sensorm = 0; //apaga el led si se sale de este pedaso + } + } + bt.printf("Iluminacion Automatica Desactivada"); + } + + if (c == 'a') + { + bt.printf("Sistema de Seguridad Activado\r"); + while(c != 'v') + { + int val = pinLectura.read(); + if (val == 0) + { + bt.printf("INTRUSO!"); + while (c != 'e'){ + buzzer(); + if(bt.readable()) + { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') + c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable + led_sensorm = 0; //apaga el led si se sale de este pedaso + } + } + } + if(bt.readable()) + { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') + c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable + led_sensorm = 0; //apaga el led si se sale de este pedaso + } + } + bt.printf("Alarma Desactivada"); + } + + if(c =='f') + { // checa si el caracter mandado por el usuario es una "v" + bt.printf("Fotoresistencia Activada\r"); + while(c != 'v') + { // la siguiente parte del programa se va a repetir infinitamente hasta que c no sea igual a "v" + fotoresistencia(); //manda llamar la funcion de la resistencia + if(bt.readable()) + { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') + c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable char + led_foto=0; //apaga el led si se sale de este pedaso + }//comunicacion + }//cierra el while( c!=v) + bt.printf("fotoresistencia DESACTIVADA\n\r"); //imprime en la terminal que se desactivo la resistnecia + } //cierra el if de(c=='f') + }//cierra el if de la comunicacion + }// cierra el while (1) +}// ciera el int main \ No newline at end of file
--- a/main.cpp Sun Nov 30 01:22:09 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,111 +0,0 @@ -#include "mbed.h" //libreria de mbed lol XD -#include "Servo.h" // libreria del servo, es para controlar el servo -Serial bt(PTE0, PTE1); // establese puentos que comunican con el bluethoot, establese una varialbe llamada "bt" para estos puertos -Serial pc(USBTX,USBRX); // comunicacion serial con la computadora -PwmOut servo(PTA5); // esptablece una variable Pwm llamada "servo" -PwmOut buzzer_valor(PTB1); // establece una variable Pwm llamada "buzzer_valor" -PwmOut led_foto(PTC8); //establece una variable pwm llamada "led" -AnalogIn fotoresistencia_valor(PTB3); //establece una variable Analogica llamada "fotoresistencia_valor", esta variable la resive la freedom, -DigitalOut led_sensorm(PTC9); -DigitalIn pinLectura = (PTB0); // Pin de lectura del sensor INPUTPIN -Timer timer; - -void f_SensorMovimiento(){ - timer.start(); - while(timer <= 3) - { - led_sensorm = 1; - } - timer.stop(); - timer.reset(); - led_sensorm=0; - } - - void fotoresistencia(){ // funcion de la fotoresistencia - float valor=fotoresistencia_valor.read(); // lee es lavor de la fotoresistencia y la asigna a una variable flotante llamada "valor" - wait(.025); // timer se .025s - valor=((fotoresistencia_valor -(.039))*(-10)); // funcion que recorre los valores de la freedom - //valor=((1)-(valor)); // nada - if(valor<0){ // si el valor es menor a cero - valor=0; // iguala el valor a 0 - } - if(valor>1){ //si el valor es mayor a cero - - valor=1; // iguala el valor a 1 - } - led_foto=valor; // enciende el led con una intencidad = al valor - } - - void buzzer(){ // funcion del buzzer - bt.printf("piiiiii\n\r"); //imprime un string como respuesta, ay comnicacion y la funcion esta siendo corrida - buzzer_valor.period_ms(1); // set PWM period - buzzer_valor=0.5; //set duty cycle - wait(0.5); //hold for beat period - } // termina la funcion - -int main(){ // inicia el programa - - bt.baud(9600); // establese la comunicacion serial entre la freedom y el bluethooth - servo.period_ms(20); // esta linea asigna un periodo en milisegundos, este periodo es asignado para pode usar es servo - - while(1) // esta parte del programa se repite infinitamente - { - if(bt.readable()) //establesco la conexion del bluethooth - { - char c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable char - - bt.printf("%c\n\r",c); // como respuesta para verificar que la informacion mandada aya llegado a la freedom - // la imprime en la terminal del usuario - - if (c == 'w'){ //checa si el caracter mandado por el usuario es una "w" - - servo.pulsewidth_us(1700);// move servo to 180° position - bt.printf("serbou\n\r"); // imprime en la terminal del usuario un string"servoa" - - } - if (c == 's'){ //checa si el caracter mandado por el usuario es una "s" - - servo.pulsewidth_us(1000);//move servo to 0 degrees - bt.printf("servob\n\r"); //imprime en la terminal del usuario un string "servob" - } - - if( c == 'p'){ //checa si el caracter mandado por el usuario es una "p" - - buzzer(); //manda llamar la funcion del buzzer - } - if (c == 'm') - { - - bt.printf("Iluminacion Automatica Activada\r"); - while(c != 'v'){ - - int val = pinLectura.read(); - pc.printf("%f",val); - if (val == 0) - { - f_SensorMovimiento(); - buzzer(); - } - if(bt.readable()) - { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') - c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable - led_sensorm = 0; //apaga el led si se sale de este pedaso - } - } - bt.printf("Iluminacion Automatica Desactivada"); - } - if(c =='f'){ // checa si el caracter mandado por el usuario es una "v" - - while(c != 'v'){ // la siguiente parte del programa se va a repetir infinitamente hasta que c no sea igual a "v" - fotoresistencia(); //manda llamar la funcion de la resistencia - if(bt.readable()) { // reestablese la conexcion del bluethooth para solisitar o checar si se vumple la opcion para salir del while(c!=='v') - c = bt.getc(); //resive un caracter via bluethoth y lo asigna a una variable char - led_foto=0; //apaga el led si se sale de este pedaso - }//comunicacion - }//cierra el while( c!=v) - bt.printf("fotoresistencia DESACTIVADA\n\r"); //imprime en la terminal que se desactivo la resistnecia - - } //cierra el if de(c=='f') - }//cierra el if de la comunicacion - }// cierra el while (1) -}// ciera el int main