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

Atmega32 - jak skomunikować przez RS z komputerem ?

JordanH 30 Lip 2015 15:57 1125 14
  • #1 14886969
    JordanH
    Poziom 11  
    Witam, mam uP atmega32 z dwoma czujnikami. Chciałbym, by móc otrzymywane dane wysyłać przez RS485 do komputera. Nie wiem jak to zacząć, czego potrzebuję jeśli chodzi o sprzęt.

    Posiadam taki układ TTL MAX485 :
    http://electropark.pl/moduly-komunikacji/3165-konwerter-rs485-ttl-max485.html

    Idea działania miałaby być taka, że czujniki działają non stop, a w momencie gdy z komputera (master) wyślę zapytanie ( jakiś krótki kod znakowy np. 'dana' lub '1@1') mój mikrokontroler odpowie wysyłając wyniki pomiarów (slave) do komputera.

    Co potrzebuję dokupić jakiś konwerter RS-> USB ? Ciężko znaleźć coś takiego szczerze mówiąc.
  • #2 14887037
    plumbum22
    Poziom 20  
    A układ FT232?
  • #3 14887189
    BlueDraco
    Specjalista - Mikrokontrolery
    Czy w komputerze masz interfejs RS485?

    Zwykle masz USB, więc potrzebujesz konwertera USB - UART TTL za < 10 zł. Łączysz go do linii TXD i RXD mikrokontrolera i masy.
  • #7 14889392
    JordanH
    Poziom 11  
    Dobra ale jak ja mam to dalej rozwijać. Narazie mam prosty program napisany w C, wgrałem go do uP. Załóżmy, że uda mi się dopisać jakiś kod pod RS, robie to w Eclipse. Jak potem bede chciał np 'odpytac' z pozycji komputera uP o pomiary, to przez co ? Jakiś program terminalowy do tego, coś jest ?
  • #8 14889445
    plumbum22
    Poziom 20  
    Program, z komputera np wysyłasz co jakiś czas (załóżmy 500 ms) pakiet z zapytaniem, mikrokontroler odpowiada itd. Wszystko działa na zasadzie "prośba-już się robi, polecenie-już się robi, podaj wartość z tego i tego bitu rejestru - już przesyłam". Jedno w trybie master drugie w trybie slave. Można i przez terminal.
  • #10 14889505
    JordanH
    Poziom 11  
    Czyli... mam ten MAX485, i to http://www.gotronik.pl/konwerter-usb-rs485-p-1562.html.

    Teraz, z max485 mam A i B podpinam do A i B w tym z 2go linku.
    Moduły są połączone, a teraz chce połączyć max485 z atmegą.
    Na max485 mam DI DE RE RO (? co do atmegi ) z jednej strony z drugiej mam GND A B VCC ( tu wszystko jasne).

    Wiem, tylko, że DE sygnalizuje nadawanie/odbiór to sobie podepne do binarnego pinu jakiegoś na atmedze. A co z danymi, co jeszcze do atmegi podpiąć, Rx Tx z atmegi do ?
  • #11 14895185
    JordanH
    Poziom 11  
    usb-uart-ttl-rs485-ft232 - to nazwa konwertera do którego się przymierzam, dane :


    konwerter USB - RS 232 TTL 5V (TX, RX)
    konwerter USB - RS485

    Zgodny z USB 2.0 (układ FT232RL)
    Automatyczna kontrola przepływu danych, układ samoczynie ustawia się w tryb nadawania lub odbierania danych RS485
    Automatycznie rozpoznawanie prędkości portu szeregowego
    Zakres prędkości transmisji 300-9216000bps
    Możliwość pracy w sieci, max 32 urządzenia
    Obsługiwany w systemach: Windows98/ME/2000/XP/Vista/WIN7 Linux, Mac WinCE
    3 x Diody LED, sygnalizacja linni TX, RX oraz zasilania
    Bezpiecznik (wielokrotny) zabezpieczający port USB komputera


    Znalazłem coś takiego, pytanie do kogoś z doświadczeniem, czy takie coś zadziała ?
    Wygląda to na lepszej jakości moduł oparty na scalaku FT 232 RL. Tylko na aukcji widzę, że od strony rs wychodzą 3 piny, rozumiem, że są to linie A i B oraz GND ?


    Czy to ma poprawnie dopasowane poziomy napięć do MAX 485 ?
  • #12 14895942
    BlueDraco
    Specjalista - Mikrokontrolery
    Czy jest jakiś powód, dla którego chcesz użyć RS485? Normalnie używa się tego przy transmisji do wielu urządzeń lub na duże odległości - na biurku czy w niewielkim pomieszczeniu nie ma to sensu. Jeżeli chcesz użyć jakiegoś standardu transmisji - najpierw poczytaj o zasadach i o działaniu układów. Odpowiedź na pytania o wyprowadzenie układu MAX485 znajdziesz łatwo w karcie katalogowej.
  • #13 14896764
    JordanH
    Poziom 11  
    1. muszę bo docelowo będzie kilka urządzen w ramach rs 485
    2. znma datasheet max485, pytam by nie wydac 50 zl w kosz, kogos, kto sie zna, czy to co podaje ,,dogada sie z max485''





    Ile taka atmega32 moze pobierać maksymalnie prądu ? Powiedzmy, że obsługuje lcd 16x2, kilka ADC, 2 czujniki analogowe, czujnik na I2C, i jeszcze wysyła przez TxD i RxD dane.
  • #14 14897031
    BlueDraco
    Specjalista - Mikrokontrolery
    Pobór prądu każdego z układów znajdziesz łatwo w jego danych technicznych - datasheet. Prawdpopodobnie najbardziej prądożernym elementem będzie nadajnik MAX485, bo typowo musi on wpompować napięcie rzędu 3V w rezystancję linii - 60 Ohm.
    Interfejs USB-RS485 służy, jak nietrudno zgadnąć, do komunikacji w standardzie RS485.
  • #15 14897210
    kamyczek
    Poziom 38  
    Chęci i stwierdzenie muszę tu nie wystarczy , jak to mówią "dobrymi chęciami to jest piekło wybrukowane..."
    Pierwsze od czego kolega powinien rozpocząć to z zapoznaniem się ze standardem RS485 .
    Kolejną wybranie mikrokontrolerów ,które będą użyte do projektu , bo każdy jest troszkę inny i nie każdy posiada wystarczającą liczbę portów czy też i2c . Zadanie nie jest takie zupełnie proste bo trzeba wymyśleć jakiś protokół komunikacyjny który będzie obsługiwał wszystkie urządzenia na magistrali i będzie zrozumiały dla każdego urządzenia . Do tego RS485 nie jest magistralą dwukierunkową i wymaga przełączania między nadawaniem i odbiorem a na tym poległo już sporo amatorów . Bardzo cieszy że ma kolega żyłkę konstruktora ,ale " musi " kolega poprzeć ją żyłką zdobywcy wiedzy , bo bez niej skończy się na muszę lub kolejnym stadium wygody i frustracji "kto mi napisze " ...
REKLAMA