Ich benutze die Komponente TComPort
nicht. Trotzdem hatte ich nach fünf Minuten (inclusive Goggle Suche und Download) diese Information in der Hilfedatei gefunden:
Zitat:
Call Read function to read Count bytes into Buffer variable. The function does not return until Count bytes are read or timeout elapses.
Ein Integer besteht aber aus 4 Bytes. Damit landen die empfangenen 6 Bytes im ersten und zur Hälfte im zweiten Integer Deines Arrays. Der Rest ist mit irgendwelchen zufälligen Werten belegt, da Du das Array nicht initialisierst. Und da wunderst Du Dich, daß Du nicht die erwarteten Werte angezeigt bekommst?
Korrekt wäre ein
array[0..x] of Byte
. Mal ganz abgesehen davon, daß von Dir der Parameter
Count völlig ignoriert wird...
Weshalb ist es nur so schwer, mal in eine Dokumentation hineinzuschauen?
P.S.:
Du schreibst von
5 einzulesenden Bytes, nimmst aber ein Array mit
6 Elementen ([
0..
5]) und versuchst auch,
6 Bytes zu lesen (Read(...,
6)).
Also was denn nun:
5 oder
6?