Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Transmissor da campainha para surdos desenvolvio no estágio
- Autor: Lucas Gabriel Eloi Vieira
- link do cod. do receptor: https://pastebin.com/EfbNG784
- */
- //Incluir as bibíotecas
- #include <SoftwareSerial.h>
- // Definição de pinos/portas do arduino
- SoftwareSerial apc220(6, 7); // Define os pinos usados pelo apc220
- int pino_botao = 4; // Define o pino 12 do arduino para o botão
- int cont =6; // Variável usada para contagem de cliques no botão
- //Variáveis usadas no mecanismo de controlar o tempo de transmissão
- int aux_cont1 = 1, aux_cont2 = 1, aux_cont3 = 1, aux_cont4 = 1, aux_cont5 = 1;
- unsigned long time1 = 0, time2 = 0, time3 = 0;
- void setup()
- {
- Serial.begin(9600);
- apc220.begin(9600);
- pinMode(pino_botao,INPUT);
- }
- void loop()
- {
- // Mecanismo parar acrescentar um valor a cada clique no botão
- if(digitalRead(4)==1) {
- cont++;
- delay(700);
- }
- if(cont==6){cont=1;} // Mecanismo para limitar/resetar os valores acrescentados nos cliques
- // AULA 1 - Ao botão de simulação da sirene ser pressionado , entrará no primeiro looping por 5 segundos
- if(cont==1){
- time1 = millis();
- while (aux_cont1 == 1) {
- apc220.write(10);
- Serial.println(cont);
- time2 = millis();
- delay(10);
- if ((time2 - time1) > 5000)
- aux_cont1 = 0;
- }}
- // AULA 2 - Ao botão de simulação da sirene ser pressionado novamente, entrará no segundo looping por 5 segundos
- if(cont==2){
- time1 = millis();
- while (aux_cont2 == 1) {
- time2 = millis();
- apc220.write(50);
- Serial.println(cont);
- delay(10);
- if ((time2 - time1) > 5000)
- aux_cont2 = 0;
- }}
- // INTERVALO - Ao botão de simulação da sirene ser pressionado novamente, entrará no terceiro looping por 5 segundos
- if(cont==3){
- time1 = millis();
- while (aux_cont3 == 1) {
- apc220.write(100);
- Serial.println(cont);
- time2 = millis();
- delay(10);
- if ((time2 - time1) > 5000)
- aux_cont3 = 0;
- }}
- // AULA 3 - Ao botão de simulação da sirene ser pressionado novamente, entrará no quarto looping por 5 segundos
- if(cont==4){
- time1 = millis();
- while (aux_cont4 == 1) {
- apc220.write("5");
- Serial.println(cont);
- time2 = millis();
- if ((time2 - time1) > 5000)
- aux_cont4 = 0;
- }}
- // SAÍDA - Ao botão de simulação da sirene ser pressionado novamente, entrará no quinto looping por 5 segundos
- if(cont==5){
- time1 = millis();
- while (aux_cont5 == 1) {
- apc220.write("0");
- Serial.println(cont);
- time2 = millis();
- if ((time2 - time1) > 5000)
- aux_cont5 = 0;
- }}
- }
Add Comment
Please, Sign In to add comment