Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 28 mar 2024, o 17:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
 Tytuł: RS 232 baud
PostNapisane: 9 lut 2018, o 22:33 
Offline
Użytkownik

Dołączył(a): 01 lis 2015
Posty: 129
Pomógł: 0

Mam pytanie odnośnie prędkości portu szeregowego. Podaje się go w bodach.
Np.: 9600 bodów. Wyczytałem, że 9600 bodów oznacza 9600 zmian na sekundę. Zmian z 0 na 1 i zmian 1 na 0?
Jak przesyłam w jednej ramce np.: 10 bitów to mając 9600 bodów ile mogę tych bitów wysłać?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 10 lut 2018, o 00:44 
Offline
Nowy

Dołączył(a): 16 cze 2014
Posty: 21
Lokalizacja: Wrocław
Pomógł: 3

Nie ma żadnego ograniczenia co do wysyłania bitów, zapewne chodzi Ci o czas?
Wystarczy poczytać trochę (google -> wikipedia) i dużo się rozjaśni:
https://pl.wikipedia.org/wiki/Bod



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 lut 2018, o 14:56 
Offline
Użytkownik

Dołączył(a): 01 lis 2015
Posty: 129
Pomógł: 0

Tak czytałem to, czyli 9600 x 10 bitów?
Wydaje mi się, że jest coś nie tak



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 lut 2018, o 15:27 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

I dobrze Ci się wydaje ;)
Ponieważ nie stosujesz modulacji, musisz podzielić prędkość przez długość ramki+narzut związany z obsługą samej transmisji (bity start/stop, parzystość).

Wysłane ze srajfona

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 lut 2018, o 19:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Tak czytałem to, czyli 9600 x 10 bitów?
Wydaje mi się, że jest coś nie tak
9600 to baud-y (body dla purystów językowych) czyli liczba bitów na sekundę. I tyle jesteś teoretycznie w stanie wysłać bitów w czasie jednej sekundy. Ale jak masz ustawioną ramkę 8N1, to wysyłasz bit startu, 8 bitów danych i 1 jeden bit stopu, czyli 10 bitów. Czyli 2 z 10 bitów nie niosą danych a są bitami "protokołu", czyli masz już 20% mniej przesyłanych danych. Do tego między znakami bywa pewien czas zwłoki związany z obsługą nadawania i często bity jednej ramki nie są wysyłane natychmiast po jej skończeniu.

Podsumowując, przy prędkości 9600 bps możesz maksymalnie przesłać 960 bajtów (7680 bitów) danych.

--
Pozdrawiam,
Robert

------------------------ [ Dodano po: 3 minutach ]

Oczywiście jak wybierzesz format 8E2, to już masz ramkę 12 bitów (1 bit startu, 8 bitów danych, 1 bit parzystości i 2 bity stopu). I tutaj narzut protokołu to 4/12 (czyli 33%), więc maksymalnie prześlesz przy 9600 bps tylko 800 bajtów (6400 bitów).


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 25 lut 2018, o 00:20 
Offline
Użytkownik

Dołączył(a): 01 lis 2015
Posty: 129
Pomógł: 0

rskup napisał(a):

Podsumowując, przy prędkości 9600 bps możesz maksymalnie przesłać 960 bajtów (7680 bitów) danych.

--
Pozdrawiam,
Robert


Czyli 9600 bps to 9600 bodów. To nie powinno być 9600bps = 9600 bitów = 1200 bajtów? Oczywiście chodzi mi o max transmisję.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 25 lut 2018, o 22:49 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

Tak, ale to jest transmisja protokołu, a pasmo dla danych jest mniejsze.

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 26 lut 2018, o 12:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

elektronikq napisał(a):
Czyli 9600 bps to 9600 bodów. To nie powinno być 9600bps = 9600 bitów = 1200 bajtów? Oczywiście chodzi mi o max transmisję.
To jak z taksówką - masz pojazd 5 osobowy a pojechać może tylko 4 pasażerów. I tak prędkością na RSie, gdzie podajesz dla wszystkich bitów (włączenie z dodatkowymi bitami protokołu) a tych twoich danych jest przesyłanych mniej.

--
Pozdrawiam,
Robert


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 26 lut 2018, o 14:04 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27212
Lokalizacja: Szczecin
Pomógł: 1041

rskup napisał(a):
To jak z taksówką - masz pojazd 5 osobowy a pojechać może tylko 4 pasażerów.

:) ŚLICZNE porównanie ;) muszę zapamiętać!

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 10 mar 2018, o 23:00 
Offline
Użytkownik

Dołączył(a): 01 lis 2015
Posty: 129
Pomógł: 0

Ok rozumiem czyli przy ramce 8N1 mam - 20% mniej przesyłu danych. Ale np.: jeśli chcę wykorzystać port szeregowy do wysyłania impulsów, chodzi mi o zbocza narastające, czyli 0 -> 1. To przy 9600 bodach to mam 9600 bitów na sekundę?
A że chodzi mi o zbocza to maksymalnie mogę wysłać 4800 impulsów (impuls = zbocze)? Chcę wykorzystać bit startu i stopu na zmianę stanu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 mar 2018, o 00:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Coś strasznie kombinujesz :(
elektronikq napisał(a):
To przy 9600 bodach to mam 9600 bitów na sekundę?
Tak. Przy 9600 bodach masz maksymalnie 9600 bitów na sekundę, ale aby mieć te 9600 bitów musisz mieć ciągłą transmisję.

elektronikq napisał(a):
chodzi mi o zbocza narastające, czyli 0 -> 1
Ze zboczami to nie tak jednoznacznie, bo one zależą jakie wartości wysyłasz, z czego 2 na 10 są to narzucone wartości bitów (start i stop).

elektronikq napisał(a):
A że chodzi mi o zbocza to maksymalnie mogę wysłać 4800 impulsów (impuls = zbocze)?
Jak będziesz wysyłał bajt o wartości 0xAA (binarnie 10101010) to w jednej ramce będzie 5 zboczy 0->1.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Pamiętaj tylko, że nie masz gwarancji w systemach komputerowych, że zaraz po skończeniu bitu stopu wysłanie zostanie kolejny bit startu. Może być przez pewien czas "cisza". W AVRach gdzie masz podwójne buforowanie i przerwania, możesz to sobie zapewnić. Ale wysyłanie impulsów poprzez sprzętowy RS232 to jakiś bardzo dziwny pomysł :shock: .

--
Pozdrawiam,
Robert

PS. Obowiązkowo pooglądaj Mirkowy poradnik: https://www.youtube.com/watch?v=IrtEPz0ftz0


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 kwi 2018, o 13:41 
Offline
Użytkownik

Dołączył(a): 01 lis 2015
Posty: 129
Pomógł: 0

Poradniki oglądam Pana Mirosława bo to podstawa, książki kupuje i czytam. Ogólnie to widzę różnicę między 2014 jak zaczynałem a teraz. Bardzo Pan Mirosław zalatany ale prężnie działa. :)

Wiem, że dziwny bo mogę sobie te impulsy wygenerować przez uC. Tak z ciekawości się pytam. Jak zobaczyłem na ramkę RS232 to mi trochę sygnał PTO przypomniało i tak zacząłem się interesować.
Bit startu to 0 a stopu to 1 więc można wykorzystać je jako "połówkę" zbocza.
Ogólnie jak mam 9600 bodów =9600 bitów na sekundę.
Podsumowując, przy prędkości 9600 bps możesz maksymalnie przesłać 960 bajtów (7680 bitów) danych.

To zdanie bardzo mi pomogło zrozumieć. Natomiast ja nie będę wysyłał jakiś danych tylko chciałbym wykorzystać i bit startu i stopu aby brały udział w zboczu i generowaniu sygnału. Teoretyznie mogę przy 9600 bodów mieć 4800 zboczy na sekundę?

Dziękuje RSKUP za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: RS 232 baud
PostNapisane: 11 kwi 2018, o 15:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

elektronikq napisał(a):
Teoretyznie mogę przy 9600 bodów mieć 4800 zboczy na sekundę?
Zboczy to możesz mieć maksymalnie 9600, z czego 4800 narastających (0 -> 1) i 4800 opadających (1 -> 0).

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Google [Bot] i 9 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO