Как объединить две программы Arduino по Bluetooth и Fingerprint? - PullRequest
0 голосов
/ 22 октября 2019

Bluetooth и отпечаток пальца не отвечают одновременно.

Bluetooth используется для управления «Найди меня тревогу», а отпечаток пальца используется для управления двигателями открытия и закрытия.

Bluetooth используется длявызвать зуммер, чтобы издать жужжание. Отпечаток пальца используется для управления четырьмя двигателями, которые используются для открывания и закрывания двери

Как объединить эти две программы?

Отпечаток пальца:

#include <FPS_GT511C3.h>
#include <SoftwareSerial.h>
FPS_GT511C3 fps(5, 4);
int buttonstate = 0;                             
void setup()
{
  Serial.begin(9600);          
  delay(100);
  fps.Open();
  fps.SetLED(true);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(13,INPUT);
  pinMode(16,OUTPUT);
  pinMode(17,OUTPUT);
  pinMode(18,OUTPUT);
  pinMode(19,OUTPUT);
}

void loop()
{
  buttonstate=digitalRead(13);
  if (fps.IsPressFinger())
  {
    fps.CaptureFinger(false);
    int id = fps.Identify1_N();
    if (id <200)
    {
      Serial.print("Verified ID:");
      Serial.println(id);

        digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  digitalWrite(10,HIGH);
  digitalWrite(11,LOW);
  delay(1000);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  digitalWrite(10,LOW);
  digitalWrite(11,LOW); 
  delay(100);
  digitalWrite(16,HIGH);
  digitalWrite(17,LOW);
  digitalWrite(18,HIGH);
  digitalWrite(19,LOW);

    }
    else
    {
      Serial.println("Finger not found");
    }
  }
  else
  {
    Serial.println("Please press finger");
  }
  if(buttonstate == HIGH)
  {
    digitalWrite(8,LOW);
  digitalWrite(9,HIGH);
  digitalWrite(10,LOW);
  digitalWrite(11,HIGH);
  delay(1000);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  digitalWrite(10,LOW);
  digitalWrite(11,LOW);
  delay(100);
  digitalWrite(16,LOW);
  digitalWrite(17,LOW);
  digitalWrite(18,LOW);
  digitalWrite(19,LOW);
  }
  delay(100);
}

Bluetooth:

#include<SoftwareSerial.h>
SoftwareSerial BT(14,15);
String readdatta;
void setup() {
BT.begin(9600);
Serial.begin(9600);
pinMode(12,OUTPUT);
}

void loop() {

     char ch;
     while(ch!=0)
     {
      ch=BT.read();
      delay(100);

      if(ch == '1')
      {
        digitalWrite(12,HIGH);
       }
       else 
       {
        digitalWrite(12,HIGH);
       }

        }
       ch = ' ';
        }
...