Skocz do zawartości

Modułem bluetooth - zachowanie po odłączeniu telefonu


Pomocna odpowiedź

(edytowany)

Bo brakuje Ci nawiasow😜 (tylko nie powtarzaj juz if(serial.available)..)

Edytowano przez farmaceuta
  • Lubię! 1
Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

#include <avr/io.h> 
#define MOTOR1_PWM 6  //D6
#define MOTOR1_PWM_COR 0
#define MOTOR1_IN1 14 //A0
#define MOTOR1_IN2 15 //A1
#define MOTOR2_PWM 5  //D5
#define MOTOR2_PWM_COR 0
#define MOTOR2_IN1 16 //A2
#define MOTOR2_IN2 17 //A3
#define diodaright 11 //D11
#define diodaleft 12 //D12

char lastCode = ' ';
int pwmSpeed = 0;

void setup() {
  Serial.begin(9600);
  
TCCR0A = _BV(WGM01) | _BV(WGM00);
TCCR0B = _BV(CS01) | _BV(CS00);

OCR0A = 100; 
OCR0B = 100;
  
  pinMode(MOTOR1_PWM, OUTPUT);
  digitalWrite(MOTOR1_PWM, HIGH);

  pinMode(MOTOR1_IN1, OUTPUT);
  pinMode(MOTOR1_IN2, OUTPUT);

  pinMode(MOTOR2_PWM, OUTPUT);
  digitalWrite(MOTOR2_PWM, HIGH);

  pinMode(MOTOR2_IN1, OUTPUT);
  pinMode(MOTOR2_IN2, OUTPUT);
  lightOff();
  stop();
}

void loop() {
  analogWrite(MOTOR1_PWM, pwmSpeed);
  analogWrite(MOTOR2_PWM, pwmSpeed);

  if (Serial.available() > 0) {
    char code = Serial.read();
  if (code == 'P') { 
   while (Serial.available()) { 
   char x = Serial.read();
     delay(5); 
   }
     }
    if (code == 'F') {
      front();
    } else if (code == 'L') {
      left();
    } else if (code == 'R') {
      right();
    } else if (code == 'B') {
      back();
    }
    else if (code == 'S') {
      stop();
    }
    else if (code == '0') {
      setSpeed(0);
    }
    else if (code == '1') {
      setSpeed(1);
    }
    else if (code == '2') {
      setSpeed(2);
    }
    else if (code == '3') {
      setSpeed(3);
    }
    else if (code == '4') {
      setSpeed(4);
    }
    else if (code == '5') {
      setSpeed(5);
    }
    else if (code == '6') {
      setSpeed(6);
    }
    else if (code == '7') {
      setSpeed(7);
    }
    else if (code == '8') {
      setSpeed(8);
    }
    else if (code == '9') {
      setSpeed(9);
    }
    else if (code == 'q') {
      setSpeed(10);
    }
    else if (code == 'W') {
      lightOn();
    }
    else if (code == 'w'){
      lightOff();
    }
    lastCode = code;

    Serial.print("LastCode: ");
    Serial.println(lastCode);
  }

  if(lastCode == ' ') {
    stop();
  }
}

void right() {
  Serial.println("left");
        
  digitalWrite(MOTOR1_IN1, LOW);
  digitalWrite(MOTOR1_IN2, HIGH);

  digitalWrite(MOTOR2_IN1, HIGH);
  digitalWrite(MOTOR2_IN2, LOW);
}

void left() {
  Serial.println("righ");
        
  digitalWrite(MOTOR2_IN1, LOW);
  digitalWrite(MOTOR2_IN2, HIGH);

  digitalWrite(MOTOR1_IN1, HIGH);
  digitalWrite(MOTOR1_IN2, LOW);
}

void back() {
  Serial.println("back");
  
  digitalWrite(MOTOR1_IN1, HIGH);
  digitalWrite(MOTOR1_IN2, LOW);

  digitalWrite(MOTOR2_IN1, HIGH);
  digitalWrite(MOTOR2_IN2, LOW);
}

void front() {
  Serial.println("front");
  
  digitalWrite(MOTOR2_IN1, LOW);
  digitalWrite(MOTOR2_IN2, HIGH);

  digitalWrite(MOTOR1_IN1, LOW);
  digitalWrite(MOTOR1_IN2, HIGH);
}

void stop() {
  Serial.println("stop");
  
  digitalWrite(MOTOR2_IN1, LOW);
  digitalWrite(MOTOR2_IN2, LOW);

  digitalWrite(MOTOR1_IN1, LOW);
  digitalWrite(MOTOR1_IN2, LOW);
}

void setSpeed(int speed) {
  pwmSpeed =      100 + speed * 15 ;
}


void lightOff() {
 light1(LOW);
 light2(LOW);
}

void lightOn() {
 light1(HIGH);
 light2(HIGH);
}

void light1(int status){
 pinMode(diodaleft, OUTPUT);
 digitalWrite(diodaleft, status);

}

 void light2(int status){

  pinMode(diodaright, OUTPUT);
  digitalWrite(diodaright, status);
  
 }

 

Link to post
Share on other sites
58 minut temu, farmaceuta napisał:

No to chyba to jest zwykly komunikat modulu ze zerwano lacze/ze jest gotowy do polaczenia "pairable" ...no to albo zastosujesz male litery (to rozwiaze twoj problem) lub cos pokombinowac ze jesli odczytasz "P" to kolejnych 7 znakow odrzucasz (czyli cala ta wiadomosc)

chyba tak zrobię

 

Link to post
Share on other sites
(edytowany)

Czyli to wczesniej chyba nie byl caly komunikat..😉 

Wlacz to, otworz monitor zeby wywalilo caly komunikat

Edytowano przez farmaceuta
  • Lubię! 1
Link to post
Share on other sites
Przed chwilą, farmaceuta napisał:

Czyli to wczesniej chyba nie byl caly komunikat..😉 

Wlacz to, otworz monitor zeby wywalilo caly komunikat

czyli odczekać chwilę?

Link to post
Share on other sites
Przed chwilą, kiker212 napisał:

czyli odczekać chwilę?

Nie...poprostu podlacz wszystko, otworz monitor i rozlacz polaczenie blue 

  • Lubię! 1
Link to post
Share on other sites
Przed chwilą, farmaceuta napisał:

Nie...poprostu podlacz wszystko, otworz monitor i rozlacz polaczenie blue 

no właśnie to zrobiłem i to wyskoczyło 😛

Link to post
Share on other sites
  • Gieneq zmienił tytuł na: Modułem bluetooth - zachowanie po odłączeniu telefonu

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.