• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Problem z projektem, ilość znaków po przecinku
#1
Cześć Wszystkim,

potrzebuje pomocy z jedną małą rzeczą, chodzi tutaj dokładnie o lokalizacje.

czyli

w konsoli pokazuje mi dobre parametry a dokładnie:

Cytat:Serial.println(gps.location.lat(), 10);  = 00.000000000

Serial.println(gps.location.lng(), 10); = 00.000000000

potem chcę aby wyniki były wysyłane poprzez modul GSM do bazy danych czyli string url:
Cytat:String url = "AT+HTTPPARA=\"URL\",\"http://****.****.pl/index.php?";
url.concat("1=");
url.concat("00001");
url.concat("&2=");
url.concat(gps.location.lat());
url.concat("&3=");
url.concat(gps.location.lng());
url.concat("&4=");
url.concat(gps.speed.kmph());
url.concat("&5=");
url.concat(gps.altitude.meters());
url.concat("&6=");
url.concat(gps.time.value());
url.concat("&7=");
url.concat(gps.date.value());
url.concat("\"");

problem polega tutaj ponieważ teraz wyniki są następujące: 
Cytat:url.concat("&2=");
url.concat(gps.location.lat()); = 00.00
url.concat("&3=");
url.concat(gps.location.lng()); = 00.00

a potrzebuje żeby było min 7 znaków po przecinku, jeżeli dodam ", 7" to wywala błąd:

Cytat:no matching function for call to 'String::concat(double, int)'

co mogę zrobić w takim wypadku?

Pozdrawiam.
 
Odpowiedź
#2
To ci powinno pomóc , nie wysyłaj danych jak int tylko string i możesz przesłać nawet chińskie znaczki

Kod:
String gpsstring = "00.0000000000";

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

void loop() {
    
String reportString = gpsstring ;
  
  Serial.println(reportString);
  delay(1000);
  
}
Ważne aby robić co się lubi albo lubić co się robi .
Arduino UNO, TINY, PRO MINI
Pomoc nagradzamy punktami reputacji Wink
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości