- LiTime Speicher und Akkus         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 15 von 15

Thema: Unverständliches Verhalten bei Bluetooth-Verbindung

  1. #11
    Erfahrener Benutzer Robotik Einstein Avatar von inka
    Registriert seit
    29.10.2006
    Ort
    nahe Dresden
    Alter
    76
    Beiträge
    2.180
    Anzeige

    Praxistest und DIY Projekte
    leider nein, ich kenne den app-inventor nicht, aber das verhalten wird schon ein anderes sein als bei Ardroid...
    gruß inka

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo fredyxx,
    Zitat Zitat von fredyxx Beitrag anzeigen
    Aber du kannst mir wohl auch nicht sagen, wie man einen Sendebefehl, anders als oben gezeigt, ausführen kann, damit er wie bei der App "Ardroid" wirkt.
    Das ist jetzt halt der Unterschied zwischen der Klötzchen-Programmierung und einer Programmiersprache!

    Logisch machen beide Varianten das Selbe, die Wege sind aber unterschiedlich.

    Über eine Programmiersprache kann man alles steuern und hat auch die Übersicht, was unmittelbar zusammengehört. Man kann also in deinem Fall die Teil-Texte zuerst in einem Puffer zusammensetzen und dann den gesamten Puffer ausgeben. Man weiss, dass zwischen dem ersten und dem zweiten Teil nicht etwa 10 Sekunden noch etwas anderes gemacht werden muss.

    Bei der Klötzchen-Programmierung braucht man definierte Zustände, wenn so ein Klötzchen abgearbeitet ist. Dazu gehört halt auch, dass Sendepuffer sofort geschrieben werden. So ein einzelnes Klötzchen weiss nicht, wie es nach ihm weiter geht.
    Ein weiterer Punkt ist noch, dass die Klötzchen-Geschichte langsam ist. Da ist für jedes Klötzchen zuerst einiges vorzubereiten und nach Beendigung wieder aufzuräumen. Zudem ist das meistens ein Interpreter.

    In beiden Varianten muss zwischen den beiden Teil-String noch etwas gerechnet werden. Bei den Klötzchen fällt die Rechenzeit halt auf. Vermutlich ist bei beiden Varianten bei der Ausgabe eine Pause dazwischen, aber 1/10 Sekunde fällt nicht wirklich auf.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  3. #13
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.03.2013
    Beiträge
    242
    Hallo,

    endlich habe ich die Ursache gefunden, die nichts mit AppInventor oder Klötzchen-Programmierung zu tun hat, und wenn man die Lösung kennt, primitiv ist!

    In meiner ersten Frage seht ihr, dass ich beim Einlesen eines empfangenen Telegramms als Endezeichen ein \n erwarte.

    Vom Tablet hatte ich gesendet:

    Klicke auf die Grafik für eine größere Ansicht

Name:	send v_APP.jpg
Hits:	10
Größe:	44,9 KB
ID:	32445

    Richtig ist aber:

    Klicke auf die Grafik für eine größere Ansicht

Name:	send v_APP2.jpg
Hits:	11
Größe:	45,7 KB
ID:	32446

    Damit klappt nun alles super schnell und ich bin happy.

    Trotzdem danke für eure Hilfeversuche.

    vG

    fredyxx

  4. #14
    HaWe
    Gast
    Immerhin hat es sich bestätigt, dass es ursächlich nicht, wie ursprünglich von dir vermutet, am Empfänger/dem Arduino liegt, sondern Sender-seitig.
    Dass es der Sender-Programmiercode war, ist sicher gut, da solche Fehler beseitigt werden können.
    (y)
    Geändert von HaWe (27.02.2017 um 23:02 Uhr)

  5. #15
    HaWe
    Gast
    noch ein Hinweis zu der Klötzchen-Programmierung :
    Diese bauen (fast) ausschließlich auf Interpretern auf, die einen mehr oder weniger vorverarbeiteten Zwischencode (oft Bytecode) erst noch während der Laufzeit in ausführbaren Code übersetzen müssen, bevor er dann ausgeführt werden kann.
    Ich habe einmal verschiedene Benchmark-Tests zu diesen IDEs durchgeführt. Dabei hat sich bestätigt, dass viele(!) dieser Interpreter-Systeme (Klötzchen oder auch Text-Basiert) bis zu 100x langsamer sind als native Executables (per GCC oder clang).
    Es gibt aber auch sehr viele Interpreter, die schlauer sind, z.B. der JIT-compiler ("Just-In-Time") von Java (C# Mono macht es ähnlich) - vereinfacht ausgedrückt: hier übersetzt der Compiler während des Interpreter-Betriebs häufig benutzte Teile des Codes in Executables, die dann genau so schnell sind wie C-compilierte executables.
    Und tatsächlich haben Java-JIT- und C#-basierte Interpreter fast genaus so schnell abgeschnitten wie native Executables, wenn der Code öfter ausgeführt wurde - beim ersten Mal waren sie nur 1/10 so schnell.
    Ältere oder einfachere Java-Compiler waren dagegen immer deutlich langsamer (1/20).

    Gerade auf Androids laufen viele Apps per Java, auch mit JIT-Compilern.
    Und gerade Klötzchen-Programmierung setzt ot auf Java auf, und daher kann es durchaus sein, dass nach ein paar Sekunden dein Klötzchen-Code schon ähnlich schnell ist wie "richtig" compilierter - dennoch muss man den Intepreter kennen bzw. testen, denn er kann möglicherweise auch dauerhaft z.B. nur 1/100 der erreichbaren Geschwindigkeit bringen.

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Bluetooth Verbindung "verlängern"
    Von meddie im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 9
    Letzter Beitrag: 28.06.2016, 18:28
  2. RP6 - Bluetooth keine Verbindung!?!
    Von Philsuro im Forum Robby RP6
    Antworten: 4
    Letzter Beitrag: 18.01.2011, 22:52
  3. Antworten: 2
    Letzter Beitrag: 02.05.2010, 15:51
  4. Bluetooth-Verbindung auf LCD
    Von otis im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 20.08.2007, 11:54
  5. Antworten: 1
    Letzter Beitrag: 21.09.2006, 18:45

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test