hmm sobald ich es vergleiche läuft er endlos weiter egal wie oft ich ihm um seine eigene Achse drehe ...
Vielleicht zu Erklärung bzw. So wie ich es gemacht habe.
currentPosition bekommt die Werte direkt vom baering aus diesem Code :
currentPosition und newPosition habe ich deklariert mitCode:///////////////////////////////////////////////////////////// // Kompass Modul Abfrage und senden der Daten /// //////////////////////////////////////////////////////////// byte byteHigh, byteLow; // byteHigh / byteLow für Bearing char pitch, roll; // Pitch und Roll int bearing; // Bearing Wire.beginTransmission(CMPS10Addr); // Kommunikation mit CMPS10 Wire.write(2); // Start Register (2) Wire.endTransmission(); Wire.requestFrom(CMPS10Addr , 4); // Abfrage von 4 Bytes vom CMPS10 while (Wire.available() < 4); // Warten, bis 4 Bytes verfügbar byteHigh = Wire.read(); // High-Byte für Bearing speichern byteLow = Wire.read(); // Low-Byte für Bearing speichern pitch = Wire.read(); // Byte für Pitch speichern roll = Wire.read(); // Byte für Roll speichern bearing = ((byteHigh << 8) + byteLow) / 10; // Bearing berechnen sendData(bearing, pitch, roll); // Daten versenden void sendData(int bearing, int pitch, int roll) { String data = String(bearing) + ";" + String(pitch) + ";" + String(roll); lcd.setCursor(0,0); lcd.print("bear-pitch-roll"); lcd.setCursor(0,1); lcd.print(data); // Serial.println(data); delay (100); }
int currentPosition;
int newPosition;
in dem Fall ist newPosition = 0 ? oder
wie übergebe ich nur für diese Anweisung die Werte von currentPosition an newPosition ?
denn wenn ich das nach der Initialisierung mache mit newposition=currentposition dann ist doch new Position gleich wie current ,wenn ich dann vergleiche dann wird dieser Zustand, weil er ja dauernd übergeben wird nie erfüllt sein oder ?????
???







Zitieren

Lesezeichen