Lazarus 2.0.8 (2020.04.16.)
Letöltés

lightbulb Soros port kezelés

  • nagylakas
  • nagylakas profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 1
  • Köszönetek: 0

nagylakas válaszolt a témára: Válasz:Soros port kezelés

Üdv!

Nekem is hasonló feladatom lenne, leszámítva, hogy nekem csak olvasnom kellene soros portról, a küldőt már ASM-ben megírtam (Célhardverről jön az adat, DOS-t futtat). Az érdekesség, hogy a wiki.lazarus.freepascal.org/Hardware_Access oldalon található példaprogrammal tökéletesen fut a program, látom a bejövő adatokat. Viszont amint egy grafikus felületű alkalmazásba próbálom beilleszteni a kódot, ami olvasna, máris hibát dob, méghozzá a Synaser könyvtrában a CreateLockfile() függvény hibát dob a Rewrite(f); sorran ("RunErrror(5)").
Van valakinek bármi ötlete, hogy mi lehet a hiba? Jogosultsága van a lock fájlhoz, még rootként is futtattam a biztonság kedvéért....
#477

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Üdv!

Nos, megoldás született a problémámra, mert bár a ComPort Library továbra sem kommunikál helyesen a modememmel, a Synaser unit segítségével írt progi azonban tökéletesen végzi a feladatát. Kicsit egyszerűbb módon, de sokkal barátságosaban kezelhető számomra. A segítséget köszönöm.
#476

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Szia!

Bocsi ha nagyon amatőr vagyok, de a visszahurkolást ugye nem hardveresen érted, mert ez egy szabvány modem szabvány csatlakozóval a Com1-en.:blush:
#466

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Az biztos, ha beküldesz egy AT-t, akkor válaszként OK-t kell kapjál. Ha nem így van, nem a modemmel beszélgetsz.
Nem lehet hogy visszahurkoltad az adást a vételhez?
#465

  • dfeher
  • dfeher profilkép
  • Moderátor
  • Moderátor
  • Hozzászólások: 26
  • Köszönetek: 0

dfeher válaszolt a témára: Válasz:Soros port kezelés

Sajnos akkor nem tudok többet segíteni. :( Esetleg megpróbálnám egy másik programmal is a kommunikációt...
#464

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Üdv!

Igen, az ATQ0V1E0 utasítással kezdtem, de a helyzet változatlan. Nincs véletlen valakinek egy egyszerű kis példa kódja, vagy arra mutató link amit értelmezhetnék?
#463

  • dfeher
  • dfeher profilkép
  • Moderátor
  • Moderátor
  • Hozzászólások: 26
  • Köszönetek: 0

dfeher válaszolt a témára: Válasz:Soros port kezelés

Nem tudom, de gondolom az E0 parancsot próbáltad már, ami kikapcsolja az echo-t.
#461

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Üdv!

Igazad lehet a kódolással, így most ASCII kódokat küldök ki, amit azonban most is ugyanúgy visszakapok. Sajnos nem ismerem jól a ComPort komponenst. Lehet, hogy az alapértelmezett beállításain állítani kell, hogy egy mezei modemmel kommunikálni tudjon (DataBit, Parity, StopBits, TimeOuts)?
#460

  • dfeher
  • dfeher profilkép
  • Moderátor
  • Moderátor
  • Hozzászólások: 26
  • Köszönetek: 0

dfeher válaszolt a témára: Válasz:Soros port kezelés

Szia!

Nem próbáltál inkább valami string konstanst küldeni TEdit.Text helyett? Mert arra gondolok, hogy a kódolása nem jó annak a string-nek, amit a TEdit visszaad (pl. unicode ascii helyett, stb...), és emiatt nem értelmezi a parancsokat a modem, hanem csak visszaküldi.
Egyébként a kódban szerintem sincs hiba.
#459

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Sziasztok!

Nos úgy tűnik valami nagyon nem esik le nekem. A ComPort Lybrary-t használom és egy analóg modemmel kísérletezek. AT parancsokat küldök neki, amire tudomásom szerint válaszokat kellene kapnom. Ezzel szemben a kiküldött parancsot olvasom vissza az OnRxChar eseményben, de miért is? Légyszi segítsetek egy kis útmutatással.

Parancs ki:

procedure TForm1.Button1Click(Sender: TObject);
var Operation1: PAsync;
begin

InitAsync(Operation1);
try
ComPort1.WriteStrAsync(Edit1.Text, Operation1);
ComPort1.WaitForAsync(Operation1);
finally
DoneAsync(Operation1);
end;

end;

Olvasás be:

procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var Str: String;
begin
ComPort1.ReadStr(Str, Count);
Memo1.Lines.Add(Str);
if ComPort1.TriggersOnRxChar then Memo1.Lines.Add('RxChar_Event=OK') else Memo1.Lines.Add('RxBuff_Event=OK');
end;
#458

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Sziasztok!

Úgylátom mindkét úton elindulhatok ezér nagyon köszönöm a segítségeket. Lelkesen nekilátok a soros port tanulmányozásnak :woohoo: .
#455

  • dfeher
  • dfeher profilkép
  • Moderátor
  • Moderátor
  • Hozzászólások: 26
  • Köszönetek: 0

dfeher válaszolt a témára: Válasz:Soros port kezelés

#454

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Szia!

Nem te vagy tudatlan, valóban nem lehet az új verzió alá a CPortLaz komponenset telepíteni. Az én projektjeimhez is használom, ezért módosítottam, és így már jó. A letöltőközpontban megtalálod.

Üdv: Athomas
#453

  • szeti
  • szeti profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Karma: 1
  • Köszönetek: 1

szeti válaszolt a témára: Válasz:Soros port kezelés

Üdv Mindenkinek!

Bocsi a tudatlanságomért, de meg kellene oldanom egy digitális mérleg (RS-232) és az én kis programom kommunikációját egyenlőre win32 alatt. Sajnos a nulláról kezdem, így egyenlőre kicsi útmutatásra lenne szükségem.

Létezik a letöltések között egy CPortLaz.zip csomag, melyet sajnos nem tudtam telepíteni, mert valami CTL3D-t hiányol. Valójában erre van szükségem, vagy a fentebb tárgyalt Synaser könyvtár is megoldja a problémámat? Amennyiben a CPort csomag szükséges, akkor azt hogyan lehet a 0.9.28.2 verzió alá bevarázsolni?
#452

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

H'ja! Az objektumorientáltság...
#19

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

Athomas!
Köszönök szépen minden fáradozást, segítséget.
Sikerült amit szerettem volna.
Ott rontottam el hogy csak simán SendString()-et hívtam, a ser.SendString() helyet...
No mind1 :)

Lényeg hogy most van egy bomba biztos alapom, amire építem reményeim szerint a progit.

Még1szer köszi, üdv: Petya

petya@debian:-$ lazarus
#18

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Nos én is debian alatt fordítottam a progit, és mint látod a com1-et com1-nek írtam. És jó! Ráakasztottam egy gsm telót, és az válaszolt.
Mivel én sosem használtam ezt a könyvtárat, ezért azt tudom javasolni, hogy írd be hogy ser. és a felbukkanó kódablakban válogass a küldési lehetőségek között. Úgy láttam sok van. pl.: Byte, string,stb. Nem látom bonyolultnak, csak el kell mélyedni benne. Jó munkát. Azért ha elakadsz írjál nyugodtan.
#16

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

Na, ismét én,bocsánat, csak kicsit belezavarodtam..

Szóval, Linux alatt dolgozok.
Itt ugye az eszköz az "/dev/ttys0"? (COM1)

Namármost, ha egy stringet, teszem azt, egy W betűt akarok a soros portra küldeni az hogyan van?
Bocsánat hogy ennyit, meg hogy ilyet, de linux alatt totál megzavar hogy máshogy kezelem a soros portot.

Ez van ugye megy:
procedure TForm1.Button1Click(Sender: TObject);
var
  ser:TBlockSerial;
  Buffer: string;
begin
  ser:=TBlockserial.Create;
  try
    ser.RaiseExcept:=True;
    ser.Connect('/dev/ttyS0');
    ser.Config(19200,8,'N',0,false,false);
    Buffer:= ser.ATCommand('AT'); // küldi a parancsot, és fogadja a választ
    Memo1.Text:= Memo1.Text+Buffer;
  finally
    ser.Free;
  end;
end;

Üdv: Petya

petya@debian:-$ lazarus
#15

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

Athomas! Nagyon szépen köszönöm.
Megkaptam, kicsomagoltam, megnyitottam. és futtatás.
és megy frankón.

Viszont az nem tudom hogy jelenthet-e valamit, 9997-es timeout van amikor elindítom a küldést?
(Lazarus, debian)

Üdv: Petya

petya@debian:-$ lazarus
#14

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Megírtam a példaprogramot.B) Debianom van, a program com1-en kiküld egy AT-t, a választ kiírja egy memo-ba. Átküldtem az emiledre.
#13

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Ok, csak most van egy kis munkám, este foglalkozok vele.
#12

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

igazából arra várnám a rávezető utat, hogy példának okáért, lenne egy gomb, ha azt megnyomom, akkor küldjön a com1-portra egy megadott karaktert pl.

petya@debian:-$ lazarus
#11

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

azt megköszönöm nagyon!

petya@debian:-$ lazarus
#10

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Én még nem használtam, de ránézek.
#9

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

Ok, köszönöm, bennem lehet a hiba, de nem bírom működésre bírni.

Nincs véletlen egy Lazarusos grafikus felületű programod ami használja ezt példának? :S Sry hogy .. de ez most télleg nem megy..

petya@debian:-$ lazarus
#8

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Ez egy könyvtár, nem kell telepíteni, csak bemásolni, és a uses szekcióba beírni. A projectfelügyelőben add hozzá a programodhoz szükséges csomagként.
#7

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya válaszolt a témára: Válasz:Soros port kezelés

Hi!
Igen, ezt megtaláltam, de nem siekrült működésre bírnom, hogyan telepítem fel a lazarushoz?
grafikus felületű programhoz kéne.

petya@debian:-$ lazarus
#6

  • Athomas
  • Athomas profilkép
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0

Athomas válaszolt a témára: Válasz:Soros port kezelés

Van egy Synaser nevű könyvtár, ami win, és linux alatt is megy, keress rá a google-n.

Üdv.: Athomas
#5

  • petya
  • petya profilkép
  • Új fórumozó
  • Új fórumozó
  • Hozzászólások: 9
  • Köszönetek: 0

petya létrehozta a témát: Soros port kezelés

Sziasztok!
Lazarus alatt, (linux) hogyan lehetséges a soros port kezelése?

Üdv: Petya:dry:

petya@debian:-$ lazarus
#4