bluetooth met hc05

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 44
Geregistreerd: 02 Aug 2015, 21:22

bluetooth met hc05

Berichtdoor bruu » 27 Dec 2016, 22:42

nano_hc05_lcd3 (4).jpg
nano_hc05_lcd3 (4).jpg (18.76 KiB) 4084 keer bekeken
nano_hc05_lcd3-(2).jpg
nano_hc05_lcd3-(2).jpg (19.8 KiB) 4084 keer bekeken
nano_hc05_lcd3 (3).jpg
nano_hc05_lcd3 (3).jpg (19.5 KiB) 4084 keer bekeken
Beste forumleden,

Ik ben wat aan het experimenteren met bluetooth, daarvoor heb ik een opstelling gemaakt met nano, levelshifter, hc05 en een ldr en deze ingesteld als master. Een 2e opstelling met nano, levelshifter, hc05, i2c module en lcd display is ingesteld als slave.
De master zendt de waarde van de ldr naar de slave die deze waarde op het display zet.
Voor de master gebruik ik het volgende programma:
Code: Alles selecteren
/* hc05 master waarde A5 versturen
*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(4, 5); // RX, TX
int sensorpin = A5;
int sensorvalue = 0;

void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
}

void loop() {

  sensorvalue = analogRead(sensorpin);//lees waarde a5
  {
    //converteer waarde naar getal tussen 0 en 255
    sensorvalue = map(sensorvalue, 0, 1023, 0, 255);
    //verstuur tekst waarde naar slave
    mySerial.print ( "waarde ");
    // verstuur getal waarde
    mySerial.println(sensorvalue);
    delay(1000);
  }
}


en voor de slave:

Code: Alles selecteren
/*
   hc05 slave i2c lcd display
*/
// include libraries:
#include <SoftwareSerial.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
SoftwareSerial mySerial(4, 5); // RX, TX
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
void setup() {
  Serial.begin(9600); // seriele monitor
  // lcd 16 posities 2 regels
  lcd.begin(16, 2);
  mySerial.begin(9600); // baudrate van de hc05
  lcd.setCursor(0, 0); // plaats cursor op pos 0 van regel 1
  lcd.print("bru_hc05_1");
  lcd.setCursor(0, 1); // plaats cursor op pos 0, regel 2
  lcd.print("hc05-i2cLCD");
}
void loop() {
  if (mySerial.available()) {
    delay(100);
    // maak scherm schoon
    lcd.clear();
    // plaats cursor
    lcd.setCursor(0, 0);
     lcd.print("nano-hc05-i2clcd");
    lcd.setCursor(0, 1);
    // lees ontvangen data
    while (mySerial.available() > 0) {
      // zet alle karakters op scherm
      lcd.write(mySerial.read());
    }
  }
}



Op het display worden naast de waarde ook nog 5 streepjes gezet, ook als ik het display zonder i2c module gebruik.
Als ik de slave koppel aan m'n android tablet waarop een (eigengemaakte) app draait en ik stuur een tekst naar de slave dan verschijnt die tekst op het scherm zonder de streepjes.
Mijn vraag : heeft iemand een idee waardoor de streepjes veroorzaakt worden?

Henk

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: bluetooth met hc05

Berichtdoor nicoverduin » 27 Dec 2016, 23:04

De laatste 2 tekens zijn niet printbare tekens. Die komen van de app af. Dus ligt het niet aan de arduino. Doe je een printpn soms of een return aan het einde?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 44
Geregistreerd: 02 Aug 2015, 21:22

Re: bluetooth met hc05

Berichtdoor bruu » 28 Dec 2016, 10:59

Bedankt voor jouw reactie Nico.
Ik zie dat ik een belangrijk deel van mijn vraag niet ingetoetst had nl. "hoe raak ik de streepjes kwijt bij de master-slave combinatie.
Jouw opmerking over niet printbare tekens ga ik uitproberen door in het programma van de master of van de slave een regel toe te voegen om een aantal spaties te printen om zo van de streepjes af te komen.
Groet,
Henk

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: bluetooth met hc05

Berichtdoor nicoverduin » 28 Dec 2016, 13:03

In de master doe je in de laatste regel println(). Bij een println wordt er aan het einde een CR en LF (0x0D en 0x0A) toegevoegd. Maak er een print van het jouw probleem is opgelost.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 44
Geregistreerd: 02 Aug 2015, 21:22

Re: bluetooth met hc05

Berichtdoor bruu » 28 Dec 2016, 21:34

Ik heb jouw advies opgevolgd Nico en bij de master de regel mySerial.println aangepast en er mySerial.print(sensorvalue); van gemaakt.
En jahoor,geen streepjes meer op het lcd display.
Bedankt Nico.
Groet,
Henk

nano_hc05_lcd3-(5).jpg
nano_hc05_lcd3-(5).jpg (21.34 KiB) 4044 keer bekeken

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 14 gasten