Zitat von
jo_gammler:
Ich hab mir gedacht es ist einfacher wenn ich die zahl in nem string sende könnte ich das evtl so lösen?
Einfacher ist in diesem Fall relativ. Erstmal empfehle ich Dir, dass Du einfach mal die Hilfe zu TComPort runterlädst und Dir anschaust. Da findest Du dann den Eintrag TComPort.WriteStr, rate mal was der macht
Jedenfalls ist nur das verschicken des Strings einfacher. Auf der Seite des Empfängers hast Du ein Problem mehr, dein AT Mega muss nun einen String in eine Zahl umwandeln. Gerade bei solchen CPUs, die meistens nicht gerade überdimensionierte Rechenleistung besitzen und von denen gerne Teile zum Energiesparen abgeschaltet werden, sollte man nicht mit unnötigen Berechnungen belasten. Möglich ist es, die Frage ist aber ob es Sinnvoll ist (Du verschiebst die Arbeit dorthin, wo sie nur schwerer ist).
Überträgst Du einen 32 Bit Wert, so kannst Du den auf der anderen Seite ganz einfach durch Shiften und addieren (oder logisches Oder), zusammensetzen. Die Umwandlung eines Strings in eine Zahl ist da schon aufwendiger. Kommst Du mit den Zahlen 0..255 aus, so kannst Du natürlich auch auf Seiten von Delphi ein einzelnes Byte verschicken, entsprechend wählst Du aber auch als Datentyp nicht Integer, sondern Byte. In dem Fall musst Du dann auf der Empfängerseite auch nichts beachten.