RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Wed, 15 Jun 2005 12:25:48 +0200


Witam!

Dłubie po google i nie bardzo mogę znaleźć jasne stwierdzenie, czy można:

Mianowicie zastanawiam się, czy w przypadku obsługi UARTu z poziomu
Windowsa i Linuxa można uzyskac efekt taki, że przed rozpoczęciem bloku
danych linia RTS jest aktywna, a po zakończeniu deaktywuje się.

Robie mały konwerter RS485 i chciałbym, alby kierunek działania drivera
wyjściowego był w miare możliwości sterowny sprzetowo. Jesli miałbym
samoczynnie zmieniać stan lini RTS to mógłbym nie zdążyć. Chciałbym aby
system operacyjny zadbał o odpowienio szybkie wyłączenie RTS po
zakończeniu transmisji.

Czy ktoś z grupowiczów może mi potwierdzić, czy to jest standardowa
funkcjia systemu operacyjnego ?

PS. Interesuje mnie powrót lini RTS do stanu niekatywnego natychmiast po
wysłaniu ostatniego znaku w bloku.

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "SlawekS" <szczotek_at_nospam_vp.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Wed, 15 Jun 2005 13:01:52 +0200



Użytkownik "Sebastian Bialy" <heby_at_nospam_poczta.onet.pl> napisał w wiadomości
news:d8p00s$b4s$1_at_nospam_nemesis.news.tpi.pl...
...
Mianowicie zastanawiam się, czy w przypadku obsługi UARTu z poziomu
Windowsa i Linuxa można uzyskac efekt taki, że przed rozpoczęciem bloku
danych linia RTS jest aktywna, a po zakończeniu deaktywuje się.
...

Może lepiej zrobić lub kupić taki konwerter, który nie wymaga sterowania
nadawaniem

Pozdrawiam
Sławek



Poprzedni Następny
Wiadomość
Spis treści
From: "Kamil K." <kmail_at_nospam_fuck_op.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Wed, 15 Jun 2005 13:09:51 +0200



Użytkownik "SlawekS" <szczotek_at_nospam_vp.pl> napisał w wiadomości
news:d8p1oj$alk$1_at_nospam_opal.futuro.pl...

Użytkownik "Sebastian Bialy" <heby_at_nospam_poczta.onet.pl> napisał w wiadomości
news:d8p00s$b4s$1_at_nospam_nemesis.news.tpi.pl...
...
Mianowicie zastanawiam się, czy w przypadku obsługi UARTu z poziomu
Windowsa i Linuxa można uzyskac efekt taki, że przed rozpoczęciem bloku
danych linia RTS jest aktywna, a po zakończeniu deaktywuje się.
...

Może lepiej zrobić lub kupić taki konwerter, który nie wymaga sterowania
nadawaniem

Lecz wymaga odpowiednio długich przerwa miedzy nadawaniem a odbiorem. Lepiej
zrobic na 4 kavelkach i po kłopocie.



Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Gałka" <piotr.galka_at_nospam_CUTTHISmicromade.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Wed, 15 Jun 2005 13:21:23 +0200



Użytkownik "Kamil K." <kmail_at_nospam_fuck_op.pl> napisał w wiadomości
news:d8p2jt$r9u$1_at_nospam_nemesis.news.tpi.pl...


Może lepiej zrobić lub kupić taki konwerter, który nie wymaga
sterowania
nadawaniem

Lecz wymaga odpowiednio długich przerwa miedzy nadawaniem a
odbiorem.

Jak konwerter zna prędkość transmisji to nie koniecznie.
P.G.



Poprzedni Następny
Wiadomość
Spis treści
From: Marek Michalkiewicz <spamtrap_at_nospam_amelek.gda.pl.invalid>
Subject: Re: RS232->RS485 a sygna? RTS
Date: Wed, 15 Jun 2005 14:27:25 +0200 (CEST)


"Piotr Ga?ka" <piotr.galka_at_nospam_cutthismicromade.pl> wrote:

Jak konwerter zna pr?dko?? transmisji to nie koniecznie.

Widzialem taki "przemyslowy" (cena) firmy Advantech - w srodku generator
kwarcowy, jakas Altera i DIP-switch do ustawiania predkosci. Analogowo
to najprosciej na jakims 555 lub 4538 (lepiej, bo wyzwalany zboczem wiec
awaria polegajaca na ciaglym nadawaniu zera nie blokuje magistrali).

A mam tani firmy Moxa sterowany RTS i dziala to tak sobie - trzeba
odpytywac czy to juz koniec nadawania (UART nie potrafi z tej okazji
wygenerowac przerwania), pod Linuksem - ioctl TIOCSERGETLSR.

Jesli nie zdazymy wylaczyc RTS w pore - tracimy poczatek odpowiedzi.
Protokol transmisji powinien byc odporny na bledy (np. MODBUS RTU).

Marek

Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Gałka" <piotr.galka_at_nospam_CUTTHISmicromade.pl>
Subject: Re: RS232->RS485 a sygna? RTS
Date: Wed, 15 Jun 2005 16:43:05 +0200



Użytkownik "Marek Michalkiewicz" <spamtrap_at_nospam_amelek.gda.pl.invalid>
napisał w wiadomości news:d8p6rd$k84$1_at_nospam_alf.lan.amelek.gda.pl...
"Piotr Ga?ka" <piotr.galka_at_nospam_cutthismicromade.pl> wrote:

Jak konwerter zna pr?dko?? transmisji to nie koniecznie.

Widzialem taki "przemyslowy" (cena) firmy Advantech - w srodku
generator
kwarcowy, jakas Altera i DIP-switch do ustawiania predkosci.
Analogowo
to najprosciej na jakims 555 lub 4538 (lepiej, bo wyzwalany zboczem
wiec
awaria polegajaca na ciaglym nadawaniu zera nie blokuje magistrali).

Pisząc, że zna prędkość rozumiałem, że odmierza czas od bitu startu do
bitu stopu ignorując bity danych.
P.G.



Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Wed, 15 Jun 2005 14:13:09 +0200


SlawekS wrote:
Może lepiej zrobić lub kupić taki konwerter, który nie wymaga sterowania
nadawaniem

W pewnym sensie wolałbym mieć to zabudowane w urządzenie, bo modulik
przy okazji rozprowadza zasilanie do reszty końcówek. Więc i tak musze
to samodzielnie wydłubać.

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: antek <ten_at_nospam_adres.jest.be>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Wed, 15 Jun 2005 13:23:44 +0200


Sebastian Bialy napisał(a):
Witam!

Dłubie po google i nie bardzo mogę znaleźć jasne stwierdzenie, czy można:

Można. Popatrz chociażby na FLIPa Atmela. Transmisja bez kontroli
przepływu + 2 linie RTS i DTR stosowane do resetowania i wprowadzenia
procka w stan programowania. Nie jestem programistą ale z tego co
widziałem w Delphi wygląda to mniej więcej tak: Comm1.SetDTR(False); itp.

Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Wed, 15 Jun 2005 14:12:10 +0200


antek wrote:
Można. Popatrz chociażby na FLIPa Atmela. Transmisja bez kontroli
przepływu + 2 linie RTS i DTR stosowane do resetowania i wprowadzenia
procka w stan programowania. Nie jestem programistą ale z tego co
widziałem w Delphi wygląda to mniej więcej tak: Comm1.SetDTR(False); itp.

Chodzi mi o coś zupełnie odwrotnego - ja nie chce sterować linią RTS,
tylko chcę aby sprzęt nią sterował samoczynnie - sam mogę nie zdązyć po
bloku danych jej wyłaczyc i zgubie bajty przychodzące.

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Marek Dzwonnik" <mdz_at_nospam_WIADOMO_PO_CO_TO.message.pl>
Subject: =?iso-8859-2?Q?Re:_RS232-=3ERS485_a_sygna=B3_RTS?=
Date: Wed, 15 Jun 2005 14:16:53 +0200


Użytkownik "Sebastian Bialy" <heby_at_nospam_poczta.onet.pl> napisał w wiadomości
news:d8p00s$b4s$1_at_nospam_nemesis.news.tpi.pl

Robie mały konwerter RS485 i chciałbym, alby kierunek działania
drivera wyjściowego był w miare możliwości sterowny sprzetowo.

Prosty układ z "555" ?
http://www.embeddedsys.com/subpages/resources/images/documents/microsys_art_RS485.pdf
-> str.23

--
Marek Dzwonnik, GG: #2061027 - zwykle jako 'niewidoczny'
(Uwaga Gadu-Gadulcowicze: Nie odpowiadam na anonimy.)


Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_xnospamx_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Wed, 15 Jun 2005 15:10:54 +0200


On Wed, 15 Jun 2005 14:16:53 +0200, Marek Dzwonnik wrote:
Użytkownik "Sebastian Bialy" <heby_at_nospam_poczta.onet.pl> napisał w wiadomości
Robie mały konwerter RS485 i chciałbym, alby kierunek działania
drivera wyjściowego był w miare możliwości sterowny sprzetowo.

O ile sie orientuje to jest maly problem - oryginalny 8250 nie zglasza
przerwania po zakonczeniu transmisji.
Przerwanie sie pojawia jak zwolni sie miejsce w fifo nadajnika,
jesli nie mamy nic wiecej do wyslania to je gasimy, a kostka
kontynuuje nadawanie nie sygnalizujac juz ze bedzie konczyc.
Niby mozna poczekac az sie zapali odpowiedni bit w rejestrze .. ale w
systemie wielozadaniowym to zbrodnia :-(

Nie wiem czy obecnie uzywane kostki nie umozliwiaja obejscia tego.

Prosty układ z "555" ?
http://www.embeddedsys.com/subpages/resources/images/documents/microsys_art_RS485.pdf
-> str.23

Cos w tym jest, ale czy ten tranceiver jest wystarczajaco szybki ?
No i jesli przypadkiem bedzie wiecej takich ukladow na linii to
sie zrobi klopot..

J.




Poprzedni Następny
Wiadomość
Spis treści
From: "SJ" <korinsj_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Thu, 16 Jun 2005 07:17:09 +0200


Witam,

Mianowicie zastanawiam się, czy w przypadku obsługi UARTu z poziomu
Windowsa i Linuxa można uzyskac efekt taki, że przed rozpoczęciem bloku
danych linia RTS jest aktywna, a po zakończeniu deaktywuje się.

Pod Windowsem da się to zrobić.
Przy otwieraniu portu COM należy ustawić flagę RTS_CONTROL_TOGGLE w
DCB.Flags dla funkcji "SetCommState".
RTS będzie przechodził w stan wysoki w czasie wysyłania danych.

Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Sławek



Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Thu, 16 Jun 2005 12:19:00 +0200


SJ wrote:
Przy otwieraniu portu COM należy ustawić flagę RTS_CONTROL_TOGGLE w
DCB.Flags dla funkcji "SetCommState".
RTS będzie przechodził w stan wysoki w czasie wysyłania danych.

Ale numer, faktycznie działa. Korzystałem z opisu, gdzie nawet nie
wspomnieli to takim polu jak fRtsControl. Dzieki.

Przy okazji, czy ktoś jest zainteresowany klasą w C++ do obsługi portu
szeregowego ? Pytam z ciekawości, bo lubie sobie robić takie małe klasy
załatwiające chore pomysły WinAPI. Gdyby było pare osób zainteresowanych
,to bym to gdzies (po skończeniu) wystawił. Docelowo ma byc taka sama
dla Win i Linux (o ile w linuxie tez jest toggle, ale powinno byc).

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_xnospamx_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a sygnał RTS
Date: Thu, 16 Jun 2005 12:34:54 +0200


On Thu, 16 Jun 2005 12:19:00 +0200, Sebastian Bialy wrote:
SJ wrote:
Przy otwieraniu portu COM należy ustawić flagę RTS_CONTROL_TOGGLE w
DCB.Flags dla funkcji "SetCommState".
RTS będzie przechodził w stan wysoki w czasie wysyłania danych.

Ale numer, faktycznie działa. Korzystałem z opisu, gdzie nawet nie
wspomnieli to takim polu jak fRtsControl. Dzieki.

A jakie jest opoznienie od zakonczenia przesylu danych to wylaczenia
RTS ?


J.


Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Thu, 16 Jun 2005 12:41:37 +0200


J.F. wrote:
A jakie jest opoznienie od zakonczenia przesylu danych to wylaczenia
RTS ?

Tego jeszcze nie wiem, i nie wiem tez, czy bede miał czym sprawdzić
(analizator by się przydał albo choć oscyloskop z pamięcią :/). Od biedy
mozna by zrobic tak, że bit stopu zerował by licznik, a zanik RTS
blokował licznik - po wysłaniu ciągu bajtów powinien dac rade zmierzyć
(czy zalezy od ilości bajtów). Ale to troche szycia i pewno nieprędko to
zrobie.

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl

Poprzedni Następny
Wiadomość
Spis treści
From: Jan Dubiec <jdx_at_nospam_SPAMTRAP.slackware.pl>
Subject: Re: RS232->RS485 a =?iso-8859-2?q?sygna=B3?= RTS
Date: 16 Jun 2005 19:04:40 +0200


On Thu, 16 Jun 2005 12:19:00 +0200, Sebastian Bialy <heby_at_nospam_poczta.onet.pl> wrote:
[.....]
Przy okazji, czy ktoś jest zainteresowany klasą w C++ do obsługi portu
szeregowego ? Pytam z ciekawości, bo lubie sobie robić takie małe
klasy załatwiające chore pomysły WinAPI. Gdyby było pare osób
zainteresowanych ,to bym to gdzies (po skończeniu) wystawił. Docelowo
ma byc taka sama dla Win i Linux (o ile w linuxie tez jest toggle, ale
powinno byc).
Zanim zaczniesz coś pisać, poszukaj w Sieci darmowej klasy CSerialPort.
Windows only. Jeśli chodzi o wieloplatformową klasę do seriala, to
chyba tak łatwo nie będzie. Niby obsługa seriali jest podobna pod
Windows i Linuksem, ale gdy zaczniesz się zagłebiać w szczegóły, ty
wyjdzie na to że tylko interfejs klasy będzie wspólny dla obu systemów.

Regards,
/J.D.
--
Jan Dubiec We're all living in Amerika
jdx#slackware.pl Coca Cola
+48 506 790442 Sometimes war
Amerika by Rammstein

Poprzedni Następny
Wiadomość
Spis treści
From: Sebastian Bialy <heby_at_nospam_poczta.onet.pl>
Subject: Re: RS232->RS485 a =?ISO-8859-2?Q?sygna=B3_RTS?=
Date: Thu, 16 Jun 2005 21:47:05 +0200


Jan Dubiec wrote:
wyjdzie na to że tylko interfejs klasy będzie wspólny dla obu systemów.

O to własnie chodzi.

--
Sebastian Bialy - heby_at_nospam_poczta.onet.pl