używajcie kwarców !

Ale w którym miejscu jest synchronizacja*? Przy każdym bicie startu, czy przy pierwszym w "paczce" ? Bo jeżeli na początku paczki to moje błędy też podpadają: kilka początkowych bajtów jest zawsze w porządku, później bywają zjedzone, ale najczęściej już ich po prostu nie ma do końca transmisji. Następna przychodzi przeważnie poprawna. Nie dostałem też ani jednego błędnego bajtu - kontrola parzystości działa.

  • no dobra z tym każdym zboczem to chyba moje pobożne życzenia.
Reply to
Mirek
Loading thread data ...

Standardem jest synchronizacja na pierwszym zboczu każdego bitu startu. Nadajnik może nadawać z dwoma bitami stopu, a odbiornik może być ustawiony na jeden bit stopu i też zadziała. Gdyby synchronizacja była na paczkę to:

- tak by nie działało,

- tolerancja na odchyłki częstotliwości byłaby jeszcze mniejsza niż jest. Czy są rozwiązania niestandardowe - nie mam pojęcia.

A może nadajnik urywa transmisję. P.G.

Reply to
Piotr Gałka

W dniu 2013-11-12 12:09, Piotr Gałka pisze:

No tak, tak jest OK. Myślałem o podwójnych bitach: aabbccdd, a nie o abcd1111. Podoba mi się, tylko trzeba dać dłuższy bit stopu niż jest faktycznie (chyba właśnie jedynki na końcu) - będzie dobrze.

Pozdrawiam

DD

Reply to
Dariusz Dorochowicz

Chyba ubogim standardem. Sam miałem problem kiedyś z taką dziwną parą:

- odbiorca synchronizował na zboczu

- nadawca przed zboczem bitu startu czasami wysyłał szpilkę i było wesoło :(

Prawidłowe implementacje nadpróbkowują np 16x i decyzja op poziomie sygnału zapada na podstawie wartości większości z tych 16-tu próbek.

Reply to
Mirosław Kwaśniak

Użytkownik "Mirosław Kwaśniak" snipped-for-privacy@uv.ikem.pwr.wroc.pl> napisał w wiadomości news:l5tnoe$4fl$ snipped-for-privacy@dont-email.me...

To nie wina standardu tylko nadajnika niezgodnego ze standardem.

Gdy standard powstawał, takie rozwiązanie było chyba ekonomicznie nieuzasadnione. P.G.

Reply to
Piotr Gałka

Prawidłowe implementacje próbkują raz po czasie połowy bitu, czy to faktycznie był bit startu.

Reply to
RoMan Mandziejewicz

SPI używam do czego innego, poza tym ten UART poza komunikacją Atmeg8<>Atmega128 spełnia też rolę połączenia z PC (ten sam port).

Reply to
sundayman

Nie urywa. Podłączyłem równolegle pod komputer i testowało się dobę - na komputerze wszystkie transmisje są prawidłowe. Po stronie linuksa mam kilka pozjadanych bajtów - jak zwykle. Teraz pytanie jak wygląda tam uart - jeśli ma "bufor" jednobajtowy, a reszta odbywa się po stronie sterownika linuksowego to może on gdzieś gubi. Przez przypadek zrobił się też inny test - miałem kiepski zasilacz i dawał na avr 5,6V i zaczęły się pojawiać błędy w transmisji: "A" zamieniało się na "@" , "=" na "<" itp. czyli tutaj pewnie kwarc by pomógł, ale napięcie i tak było dla avr za wysokie.

Reply to
Mirek

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.