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

[BASCOM] 3x atmega jak połączyć - najtaniej

grafiksaba 12 Sie 2008 21:40 2780 7
REKLAMA
  • #1 5433487
    grafiksaba
    Poziom 11  
    Witam,

    Po nieudanych próbach programowania w BASCOMIE komunikacji pomiędzy mikroprocesorami poprzez SPI(bascom sobie nie radzi, tzn ja sobie w basomie z tym nie poradziłem, a po licznych nieudanych próbach i po braku odpowiedzi, sugesti na ten watek wnioskuje że chyba to jest niewykonywalne w bascomie, a przykładów bardzo skąpo) jak również i2c (twi) wymagana płatna biblioteka (na sieci nic nie znalazłem, wujek google nie pomógł, więc nie ruszyłem zagadnienia), najbardziej niezawodna okazała sie transmisja poprzez rs232. Prosta i skuteczna. Działa wyśmienicie, jaką dana wysyłam poprzez printbin tak i odbieram poprzez inputbin bez żadnych problemów. Linie RX i TX połączyłem na krzyż z RX i TX w 2 atmedze bez MAX232. Wszystko jest extra, jeżeli są 2 mikroprocesory
    a co jeśli chcem wymienić przez RS dane pomiędzy 3 mikroprocesorami?
    Jestem początkującym, więc proszę o pomoc jak podejść do tematu? Od razu zaznaczę że ważne są koszty, więc najlepiej jeśli dało by się jakoś połączyć 3xatmega8 :) ale czy to możliwe? Ewentualnie jaka jest najtańsza atmega avr z 2 uartami. Wtedy metoda łańcuszkową dojdę do danych z 1procka poprzez 2 do trzeciego:)
    PS. Do czego służy MAX232, dlaczego do komunikacji między mikroprocesorami mogę sobie go pominąć?
  • REKLAMA
  • #2 5433675
    zdzichu6969
    Poziom 23  
    grafiksaba napisał:
    PS. Do czego służy MAX232, dlaczego do komunikacji między mikroprocesorami mogę sobie go pominąć?


    http://focus.ti.com/lit/ds/symlink/max232.pdf

    A w praktyce są one do komunikacji np dekodera SAT, poprzez RS232
  • REKLAMA
  • #3 5434228
    tprzemko
    Poziom 22  
    Witam
    Zamiast rs232 użyj magistrali 485. Podłączysz sobie wszystkie procki do tego, jednego zrobisz masterem, reszta będzie miała przypisane swoje numerki, napiszesz program tak że master będzie komunikował się z poszczególnymi prockami. Układ 232 służy do konwersji poziomu napięcia do standardu RS232. Jeżeli procesorki będą niedaleko siebie możesz wyeliminować wszystkie układy. Ważne żebyś opracował sobie protokół komunikacji między procesorkami.
    Pozdrawiam
  • #4 5434239
    gothye
    Poziom 33  
    skoro wykorzystana przez kolege była próbowana magistrala SPI wiec znaczy że chciał to zrobic lokalnie :>

    może spróbuj na I2C ale bascom mizernie sie do tego nadaje ,w C szybciej by Ci sie to udało
  • #5 5436322
    grafiksaba
    Poziom 11  
    Faktycznie 485 wydaje się być lepszym rozwiązaniem, ma ktoś schemat ideowy jak połączyć 3 atmegi8 i maxa 485 - bo to chyba jest ta magistrala 485? Nie mogę znaleźć dokumentacji a w moim poradniku była tylko informacja o rs232.
  • REKLAMA
  • #6 5438204
    tprzemko
    Poziom 22  
    Witam
    Czego nie możesz znaleźć ? Maxy podpinasz do portu szeregowego procka i dodatkowo linie nadawanie lub odbiór (jeżeli masz wolną w procesorze). Poszukaj też w "klocki rs485" tylko nie pamiętam EP czy EdW, tam podpatrzysz jak to rozwiązane.
    Pozdrawiam
  • REKLAMA
  • #7 5438383
    grafiksaba
    Poziom 11  
    poszukam, chodzi o podłączenia, może jakiś kondesatory gdzieś trzeba wcisnąć albo coś takiego, swoja fascynującą przygodę z elektroniką zaczynam od atmegi8 mimo że nie mam zielonego pojęcia o elektronice analogowej, dlatego potrzebuje schematu ideowego. Dziękuję za namiary, na pewno przekopie ich zasoby internetowe.
  • #8 5487386
    J_Bravo
    Poziom 27  
    grafiksaba napisał:
    Ewentualnie jaka jest najtańsza atmega avr z 2 uartami.


    Wykorzystaj UART programowy.
    Albo zepnij wszystkie procesory a jeden z nich wykorzystaj jako zarządzający transmisją
REKLAMA