logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[attiny 2313][bascom] prosta komunikacja rs232 z PC

vogis 27 Sty 2010 14:03 3662 8
REKLAMA
  • #1 7600081
    vogis
    Poziom 10  
    Muszę zrobić na szybko możliwie najprostszy układ do wysłania bitu na komputer. Układ w uC ma zsumować sygnały wchodzące na piny portu B, a następnie wysłać bit 1 do PC.

    Bardzo proszę o sprawdzenie schematu elektrycznego i wyjaśnienie błędów, które zrobiłem (pierwszy raz w życiu coś takiego robię).

    Program już mam napisany.

    Bardzo dziękuję za wszelkie wskazówki!
  • REKLAMA
  • Pomocny post
    #2 7600147
    M. S.
    Poziom 34  
    A gdzie konwerter napięć +12/-12V od strony portu RS232? Jeśli chodzi o jeden bit to można go podać bezpośrednio i łatwiej zidentyfikować na porcie LPT jeśli takowy masz. Twój schemat na RXD powinien zadziałać, ale na TXD raczej nie.
  • REKLAMA
  • #3 7600372
    vogis
    Poziom 10  
    Program napisałem zgodnie z książką Pana Piotra Góreckiego i sprawdzałem na płytce testowej ZL11AVR.
    Dokumentacja: http://www.btc.pl/pdf/zl11avr.pdf

    No i transmisja działała w obydwie strony.
    No właśnie nie rozumiem jeszcze jak to się dzieje z dostosowaniem napięć.


    LPT faktycznie by było najlepsze, ale kolega chce koniecznie RS232.


    W czym gorsze jest rozwiązanie bez MAX232 od tego z tym układem?
  • REKLAMA
  • #4 7600402
    M. S.
    Poziom 34  
    No i nie zauważyłeś na podanym schemacie konwertera MAX232.
    MAX to przetwornica napięcia podająca i odbierająca z PC dane w logice -12/+12V. AVR działa w logice TTL 0V/5V. Ot cała tajemnica.
  • #5 7600477
    vogis
    Poziom 10  
    M. S. napisał:
    No i nie zauważyłeś na podanym schemacie konwertera MAX232.
    MAX to przetwornica napięcia podająca i odbierająca z PC dane w logice -12/+12V. AVR działa w logice TTL 0V/5V. Ot cała tajemnica.


    Wyjąłem z płytki układ MAX232, więc nie ma on w tym przypadku wpływu.

    To nie jest tak, że tranzystory dostosowują napięcia?
  • Pomocny post
    #6 7602088
    janbernat
    Poziom 38  
    Standard jest na RS -12/+12v.
    Ale napięcie progowe dla sygnałów nie jest 0V a 1.5V.
    To pozwala na połączenie TTL i RS bez zmiany poziomów.
    Działa kiepsko i tylko przy wolnej transmisji- ale działa.
    RXD procesora trzeba zabezpieczyć opornikiem ok. 10kom
  • #7 7602500
    vogis
    Poziom 10  
    dziękuję za wskazówki.

    A czemu działa kiepsko? Na czym ta kiepskość poza prędkością polega?
  • Pomocny post
    #8 7602781
    janbernat
    Poziom 38  
    Na odporności na zakłócenia.
    Zaindukowane w przewodzie sygnałowym zakłócenie np. 2.5V przy poziomie nominalnalnym 12V nic nie zrobi.
    Ale przy sygnale 0-5V i progu przełączania 1.5V już tak.
    Jak chcesz sprawdzić działanie transmisji z komputerem stojącym w odległości 1m w domu- działa.
    Ale w hali przemysłowej na odległości 10m i wielkości pliku 100kB raczej nie próbuj takich sposobów .
    A zmniejszenie szybkości transmisji jest też jednym ze sposobów zwiększenia odporności na zakłócenia.
    Odbiornik próbkuje sygnał i dopiero jak "uzna" że sygnał jest na tym samym poziomie to jest to dla niego 1 lub 0.
    Jak sygnał dłużej trwa to szansa że zakłocenie będzie też długie jest mniejsza.
    Nie ma w przyrodzie doskonałej transmisji sygnału- problem czy błąd statystycznie pojawia się co 1s czy co 100lat.
  • REKLAMA
  • #9 7603297
    vogis
    Poziom 10  
    bardzo dziękuję za wyczerpującą odpowiedź!

    Pozdrawiam
REKLAMA