Hallo,
1. Welche Displays vergleichst du da?
2. Seriell (SPI, IIC), 4-Bit und 8Bit sind nun mal unterschiedlich schnell.
3. Welche Bibliotheken verwendest du? Universelle Bibliotheken sind auf das langsamste Display auf dem Markt zugeschnitten, soll ja mit allen auf Anhieb funktionieren.
Wenn du den NXT/NXC mit dem Arduino Due vergleichst ist der Due beim Rechnen 500-1'000 mal schneller. Auch wenn die Bibliothek hundsmiserabel codiert ist, können die Algorithmen gar nicht so langsam sein. Bleibt also nur das Interface, und dessen Code, welches bremst.
Grundsätzlich gibt es zwei grundlegende Varianten einen Treiber aufzubauen:
1. Man macht zuerst alle Berechnung und legt die Daten ans Display in einem Buffer ab, dann wird der Buffer ans Display gesendet.
2. Man gibt die einzelnen Zwischenresultate gleich ans Display aus.
Bei einem langsamen Prozessor und einem langsamen Display kann man mit 2., im Idealfall, die Ausgabezeit nahezu halbieren.
Ach einen grossen Unterschied macht die Implementierung des Display-Interfaces aus.
Bevor man Daten ans Display senden kann, muss man erst abfragen, ob das Display noch busy ist, also noch irgendeinen Befahl abarbeitet.
Dazu hat man auf Low-Level zwei Möglichkeiten:
1.
Warten bis nicht Busy
Befehl oder Daten ausgeben
2.
Befehl oder Daten ausgeben
Warten bis nicht Busy
Bei 2. verliert man unnötig Zeit, denn Display und Prozessor könnten parallel weiter rechnen!
Beim NXT verwendest du vermutlich immer die selbe Hardware, ebenso bei den EV3.
Da vergleichst du also nur die Software, zumindest innerhalb der Gruppe.
Bei den Arduinos hast du andere Hardware. Die Rechentests sind vergleichbar mit den Anderen CPUs.
Beim Displaytest müsstest du aber unterschiedliche Displays mit den passenden Bibliotheken vergleichen. Möglicherweise hast du nur die lahmste Variante auf dem Markt ergattert. Das sagt also nichts über den Arduino selbst aus!
Dein Display Test besagt nur, dass das Verwendete Display mit der verwendeten Bibliothek, ne lahme Ente ist.
Der Unterschied zwischen NXT/NXC NXT/leJOS bei der Graphik liegt rein an der Software. Lustigerweise ist der leJOS bei Graphik viel langsamer und bei Text einiges schneller.
Die grundsätzliche Frage ist WAS du vergleichen willst?
Out of the Box Systeme oder was sich, mit etwas Optimierung (z.B. bessere Bibliotheken), aus der Hardware rausholen lässt?
MfG Peter(TOO)
Lesezeichen