Ot blin, ne ten parašiau :D Norėjau į o.software, ten Jamieson L kažkaip gerai ant kelio praeitą kartą užvedė. Kraustomės į ten su viskuo kas čia parašyta plius papildyta. Taigis, Dėl Gržžžššš... Pšššš... Maul Halten :D (tas serialas tikrai geras :D ) - Pamiegu, nes RS232 ant 9600 bodų yra lėtas, ypač jei daugiau duomenų tai nespėja suvaikščiot. RS232 be papildomų fyčiurų, tik TX, RX. Toliau pasakoju iš naujo, po Grzegorz'o atsakymu. "Grzegorz Brzęczyszczykiewicz" parašė naujienų news:rqljop$lo4$1@news.omnitel.net... 2020-12-07 17:29, Shadowed rašė: > serialPort1.Write(new byte[] { 0x50, 0x00, 0xEF, 0x00}, 0, 4); > // Rašomi duomenys > > Thread.Sleep(250); // Palaukiu, kad spėtų suvaikščiot O nereikia paragint kad iškakotų į serial'ą? ..flush ar panašiai? Ir nemiegok - blogo tono požymis miegoti darbe if (serialPort1.BytesToRead) {...} ar panašiai. Ir jeigu tai paleisi atskiru thread'u - mažiau skaudės galvą. > int Bytes_To_Read = > serialPort1.BytesToRead; // Suskaičiuoja kiek baitų > gauta teisingai, parodo 4 > > > // ---- O va čia turėtų būti kažkas, kas tuos gautus duomenis parašytų į > textbox'ą. Nu blemba, kiek variantų išbandžiau - nesigauna. Iš įdomesnių > - parašo tik duomenų kiekį (4) arba kažkodėl parašo raidė P. parodyk nuaskaitymą. -- Grzegorz Chrząszczyrzewoszyce, powiat Łękołody // ------------------------------------------------------------------------------ Nuo čia :) Nemažai pasistūmiau su savo programikės rašymu, bet užstrigau ties tokia kvaila vieta, kur atrodo ir pavyzdukų daug yra, bet vis tiek veikia ne taip, kaip noriu. Papasakokit dar truputį apie teisingą duomenų gavimą iš RS232... Tikslas - rašau į serialPort1, po to tą patį noriu nuskaityti. RX su TX fižiškai užtrumpintas. Čia daug maž visa rašanti ir skaitanti programėlė public void Write_Read_Test() { serialPort1.Write(new byte[] { 0x50, 0x00, 0xEF, 0x00, 0x03, 0x00, 0x00, 0x0B }, 0, 8); Thread.Sleep(250); int Bytes_To_Read = serialPort1.BytesToRead; tBox_Raw_Data.Text += "Bytes to read: " + Bytes_To_Read + Environment.NewLine; tBox_Raw_Data.Text += serialPort1.ReadExisting() + Environment.NewLine; // -- Nei šitas, nei ReadLine nesuveikia. Bet kodėl neveikia lyg ir suprantu. O va teisingą gavimą dar noriu pasiaiškinti :). Bandžiau dar keletą būdų, bet ten buvo savo kūrybos (berods tas kur P rašė), tai jau nebeatgaminsiu jaučiu tiksliai kaip ten buvo. serialPort1.DiscardInBuffer(); // Išsivalom buferius serialPort1.DiscardOutBuffer(); // Išsivalom buferius }