RTV forum PL | NewsGroups PL

Jak ustalić szybkość transmisji i analizować dane na RS485 z modułem PIC17C42?

podejrzeć RS485 ?

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak ustalić szybkość transmisji i analizować dane na RS485 z modułem PIC17C42?

sundayman
Guest

Fri May 22, 2009 7:54 pm   



Taką mam zagwozdkę... System łączy się z modułami za pomocą RS485. Chciałbym
podejrzeć - co tam jest wysyłane. Nie znam szybkości transmisji, ani
formatu.
Tyle- że na pewno RS485, bo moduły są zbudowane na PIC17C42 + SP483.

No więc zrobiłem sobie konwerter RS232<>RS485, podłaczyłem do PC. Do
poglądania uzywam Docklight V1.6

No - na razie kupa Smile Bo, niezależnie od tego jaką sobie ustawię szybkość,
cały czas mam odbiór Smile
Z podglądu na oscyloskopie, to za cholerę nie mogę ustalić, jaka jest
szybkość - wygląda mi na to, że coś koło 200 kbit....
Oczywiśćie na PC mogę sobie wybrać tylko do 115200...
Oczywiście - jako że zupełnie nie wiem, co tam leci, to tez nie wiem, czy
widzę śmieci, czy też poprawne dane...

Macie pomysł, jak ustalić szybkość transmisji ? Albo inaczej - jak to w
ogole ugryźć ? Czy za pomocą PC + RS232<>RS485 w ogóle to się daje zrobic ?

pozdr.

Zbych
Guest

Fri May 22, 2009 8:30 pm   



sundayman pisze:

Quote:
Z podglądu na oscyloskopie, to za cholerę nie mogę ustalić, jaka jest
szybkość

Macie pomysł, jak ustalić szybkość transmisji ?

Zmierzyć czas najkrótszego impulsu oscyloskopem (cyfrowym). Potem
spróbować wyłapać jakąś przerwę w transmisji i policzyć ilość bitów w
następnym transmitowanym bajcie (może transmisja jest 9-bitowa?).

Quote:
Albo inaczej - jak to w
ogole ugryźć ? Czy za pomocą PC + RS232<>RS485 w ogóle to się daje zrobic ?

Jeśli nie znasz protokołu i nie wiesz co powinno się pokazać na ekranie,
to możesz na początek tak zmieniać prędkość transmisji, żeby się pozbyć
błędów ramki (mtty wyświetla takie błędy).


--
przeciez moje rozumowanie bylo bez skazy,
no sam bym wskoczyl do tego wulkanu,
ale kto by tak pieknie gwizdal...

Mirek
Guest

Fri May 22, 2009 8:33 pm   



sundayman wrote:
Quote:
Czy za pomocą PC + RS232<>RS485 w ogóle to się daje zrobic ?



Daje się. Jak nie wiesz co jest wysyłane i z jakimi parametrami to
troszkę jest problem, ale podłącz minimalną liczbę tych modułów, albo
nawet zobacz jak do niczego nie podłączona centralka próbuje nawoływać
moduły - prędzej coś złapiesz.
Powinno wyjśc coś sensownego - nawet z komunikacji centralka alarmowa
<-> moduły rozszerzeń <-> klawiatury z LCD można co nieco podejrzeć -
większość jest zamotana binarnie, ale np. komunikaty do wyświetlenia na
LCD idą jako znaki ascii.

Mirek.

Jerry1111
Guest

Fri May 22, 2009 8:49 pm   



sundayman wrote:
Quote:
Taką mam zagwozdkę... System łączy się z modułami za pomocą RS485. Chciałbym
podejrzeć - co tam jest wysyłane. Nie znam szybkości transmisji, ani
formatu.
Tyle- że na pewno RS485, bo moduły są zbudowane na PIC17C42 + SP483.

No więc zrobiłem sobie konwerter RS232<>RS485, podłaczyłem do PC. Do
poglądania uzywam Docklight V1.6

Zrob cos na FTDI - tam mozna wybrac (prawie) dowolne predkosci.

Quote:
No - na razie kupa Smile Bo, niezależnie od tego jaką sobie ustawię szybkość,
cały czas mam odbiór Smile
Z podglądu na oscyloskopie, to za cholerę nie mogę ustalić, jaka jest
szybkość - wygląda mi na to, że coś koło 200 kbit....

Nie rozumiem - na oscyloskopie przeciez wszystko widac powinno byc.

Quote:
Oczywiśćie na PC mogę sobie wybrać tylko do 115200...

uzyc ftdi.

Quote:
Oczywiście - jako że zupełnie nie wiem, co tam leci, to tez nie wiem, czy
widzę śmieci, czy też poprawne dane...

i sprawdzic polaryzacje rs485.



--
Jerry1111

Sundayman
Guest

Fri May 22, 2009 9:31 pm   



aaa...no wiedzialem ze mozna liczyc na kolegów Smile
Z tym FTDI to cenna rada jest, zwlaszcza ze mam nawet takie cós pod reka
alem nie wpadl na to Smile
Oscyloskop jaki mialem pod reka to analogowy badziew, wiec ciezko na nim cos
zobaczyc, ale jeszcze spróbuje z drugim nieco lepszym.

To moze jeszcze jakies uwagi co do softu ewentualnie ?

pozdr.

Jerry1111
Guest

Fri May 22, 2009 9:38 pm   



Sundayman wrote:
Quote:
aaa...no wiedzialem ze mozna liczyc na kolegów Smile
Z tym FTDI to cenna rada jest, zwlaszcza ze mam nawet takie cós pod reka
alem nie wpadl na to Smile
Oscyloskop jaki mialem pod reka to analogowy badziew, wiec ciezko na nim cos
zobaczyc, ale jeszcze spróbuje z drugim nieco lepszym.

To moze jeszcze jakies uwagi co do softu ewentualnie ?

ostatnie Putty ma serial port (nareszcie).


--
Jerry1111

Konop
Guest

Fri May 22, 2009 10:21 pm   



Quote:
Oscyloskop jaki mialem pod reka to analogowy badziew, wiec ciezko na nim cos
zobaczyc, ale jeszcze spróbuje z drugim nieco lepszym.

Na analogu też można conieco zobaczyćWink.. pod warunkiem, że uda się
złapać w miarę fajną synchronizację Wink... jak lecą dane jedna za drugą,
to przerwa między kolejnymi słowami wynosi zapewne 1bit, czasem 2,
czasem też 1,5... ale to są raptem 3 możliwości Wink...
Chociaż faktem jest, że zmierzyć to ciężko, ale możesz liczyć na to, że
ktoś nie walnął transmisji z prędkosćią 201,13kbp tylko dał okrągłą
wartość Wink...

Sundayman
Guest

Fri May 22, 2009 11:13 pm   



Quote:
Chociaż faktem jest, że zmierzyć to ciężko, ale możesz liczyć na to, że
ktoś nie walnął transmisji z prędkosćią 201,13kbp tylko dał okrągłą
wartość Wink...

Oby :)

Wg. datasheeta, przy kwarcu 16Mhz te najwyższe szybkosci to :

250 kbit
125 kbit
62.5 kbit
31.25kbit

itp.

w PIC17C42 wzor na szybkosc jest w tym przypadku F / (64*(1+x))
gdzie x może być od 0 do 255, a F=cześtotliwość kwarcu.

no, będę walczył, dzięki za sugestie.

Jerry1111
Guest

Sat May 23, 2009 12:04 am   



Konop wrote:
Quote:
Oscyloskop jaki mialem pod reka to analogowy badziew, wiec ciezko na
nim cos zobaczyc, ale jeszcze spróbuje z drugim nieco lepszym.

Na analogu też można conieco zobaczyćWink.. pod warunkiem, że uda się
złapać w miarę fajną synchronizację Wink... jak lecą dane jedna za drugą,
to przerwa między kolejnymi słowami wynosi zapewne 1bit, czasem 2,
czasem też 1,5... ale to są raptem 3 możliwości Wink...
Chociaż faktem jest, że zmierzyć to ciężko, ale możesz liczyć na to, że
ktoś nie walnął transmisji z prędkosćią 201,13kbp tylko dał okrągłą
wartość Wink...

Walnal. Osobiscie. Wyszlo mi kiedys 125kHz i takie juz w moich laserach
rs485 zostalo.
A okragla wartosc to idzie - ale do podzielnika a nie jako wynikowa
predkosc transmisji ;-)

--
Jerry1111

J.F.
Guest

Sat May 23, 2009 6:16 am   



On Fri, 22 May 2009 20:54:33 +0200, sundayman wrote:
Quote:
Z podglądu na oscyloskopie, to za cholerę nie mogę ustalić, jaka jest
szybkość - wygląda mi na to, że coś koło 200 kbit....

Trzeba zlapac synchronizacje na zboczu, i zobaczyc gdzie sie zmieniaja
bity. Nawet analogiem, jesli tylko w miare liniowy i dobrze
skalibrowany da sie to zrobic.
Jesli jest tam transmisja asynchroniczna z bitem start-stop, to
wystarczy ~5% dokladnosci w pomiarze.

Quote:
Oczywiśćie na PC mogę sobie wybrać tylko do 115200...

Na niektorych chyba jeszcze 230 i 460 .

Quote:
Macie pomysł, jak ustalić szybkość transmisji ? Albo inaczej - jak to w
ogole ugryźć ? Czy za pomocą PC + RS232<>RS485 w ogóle to się daje zrobic ?

Daloby sie o ile przypasuje predkosc.

Jak nie przypasuje .. zostaje oscyloskop cyfrowy z duza ramka, albo
podlaczyc pod LPT - tam sie daje probkowac ~1Mb/s, powinno wystarczyc
do analizy.

A - po ominieciu Windowsa i linie dodatkowe [DSR, CTS, RI, DCD] portu
COM [bo RS232 pisac nie bardzo wypada] daje sie probkowac z podobna
predkoscia.

J.

Verox
Guest

Sat May 23, 2009 7:40 am   



On Sat, 23 May 2009 00:13:45 +0200, Sundayman napisał:
Quote:

Chociaż faktem jest, że zmierzyć to ciężko, ale możesz liczyć na to, że
ktoś nie walnął transmisji z prędkosćią 201,13kbp tylko dał okrągłą
wartość Wink...

Oby :)

Wg. datasheeta, przy kwarcu 16Mhz te najwyższe szybkosci to :

250 kbit
125 kbit
62.5 kbit
31.25kbit

itp.

w PIC17C42 wzor na szybkosc jest w tym przypadku F / (64*(1+x))
gdzie x może być od 0 do 255, a F=cześtotliwość kwarcu.

no, będę walczył, dzięki za sugestie.


Możesz mieć jeszcze jeden problem, często w transmisji RS485 używany jest 9
bit, ale nie do określania parzystości tylko do sygnalizowania adresu np.
Jeśli UART w PC ustawisz na 9 bit będziesz dostawał błędy parzystości (bo w
tym przypadku 9 bit sygnalizuje coś zupełnie innego), a jak na 8 bit oto
oczywiście błędy ramki. Dla swoich potrzeb zrobiłem taki podsłuchiwacz na
PIC'u -> z jednej strony mam RS485 (HW uart) i wypycham to do PC po SW uart.

--
[tomek <at> sikornik <dot> net] vy 73! de SP9UOB
Proud to be 100 percent microsoft free. op. Tomek

elektroda NewsGroups Forum Index - Elektronika Polska - Jak ustalić szybkość transmisji i analizować dane na RS485 z modułem PIC17C42?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map