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

Jak połączyć Atmega8 i Atmega16 w sieć 1-wire bez pasożytniczego zasilania?

Kvasir 26 Lis 2007 17:30 2424 10
REKLAMA
  • #1 4523143
    Kvasir
    Poziom 12  
    Posty: 54
    Pomógł: 1
    Ocena: 1
    Witam,

    no i znowu przeszukalem forum i nie moge nic znalezc o tym... Chcialbym podlaczyc kilka AVRkow (narazie 2) w siec, przy 1-wire to sie bodajze microLAN nazywa... chcialbym to zrobic za pomoca wlasnie tej magistrali ale nie mam zielonego pojecia jak oprogramowac oba uklady. Mam Atmege 8 i atmege 16 , lacze je za pomoca jednej linii 1-wire, bez pasozytniczego zasilania, maja wlasne. dajmy na to ze mega16 jest masterem, a m8 slavem, na 16 transmisja wyglada podobnie jak przy kontakotwaniu sie z ds18b20 na przyklad.... ale co z mega8 ? Na internecie nie moge znalezc zadnego przykladowego kodu do tego... na forum to samo, jezeli ktos ma przyklad bylbym wdzieczny, jezyk programowania, AVR-GCC, ewentualnie bascom..... ASMa nie trawie, ale jak ktos ma zrodelko w ASMie to niech tez bedzie :) Dzieki wielkie. (pewnie ktorys mod znowu sie przyczepi do braku polskich literek i interpunkcji ? ....)
    Pozdrawiam
    Krzysztof "Kvasir" Chudzicki
  • REKLAMA
  • #2 4525349
    asembler
    Poziom 32  
    Posty: 2099
    Pomógł: 123
    Ocena: 11
    Jezeli dobrze zrozumialem to chcesz poprostu połączyc dwa procesory ze sobą?
    Czemu nie zrobisz to za pomocą UART tez mozna tak połaczyze bedzie tylko jeden przewód a dodatkowo mozna podłaczyc wiele takich procesorów. Mam dzialającą taką sieć w samochodzie na 6 prockach
    Pozdrawaim
  • #3 4527204
    Kvasir
    Poziom 12  
    Posty: 54
    Pomógł: 1
    Ocena: 1
    Witam , no tak tylko glowne pytanie, czy przy takim polaczeniu przy kazdym z prockow trzeba dac maxa232 ? :] Moglbys podeslac na maila kchudzicki(at)msr-okartowo.pl schemacik oraz ewentualnie wsad do np. 2 prockow ? , sterujacego i jednego "slave'a" ? Bylbym bardzo dzwieczny :) Chcialem wlasnie do samochodu wpakowac takie cudo, glowna jednostka sterujaca(odbieranie danych z innych ukladow, ukladanie tego w ludzki sposob i wypluwanie na LCD)... myslalem najpierw o TWI , ale boje sie troche o zaklocenia tej magistrali, za to 1-wire wraz z kontrola CRC wydawal mi sie dobrym pomyslem, chociaz troche przerostu formy nad trescia.... UART bylby fajny, od razu mozna by wyrzucac dane na komputerek podpiety jako kolejny slave, ale chcialbym zeby "jednostka sterujaca zajmowala sie TYLKO odbieraniem danych i wysylaniem na LCD , ewentualnie komputer. A dla przykladu jednym z ukladow czujnikow bylby attiny13 z podpietymi dwoma , czy czteroma DS18B20 ... Pakowanie do tego jeszcze maxa mi sie nie usmiecha ..... (attiny13 tylko jako przyklad, nie pamietam czy ma hardwarowy serial, jak nie to atmega8 :P )

    Pozdrawiam
    Krzysztof "Kvasir" Chudzicki
  • REKLAMA
  • #4 4527818
    snow
    Poziom 31  
    Posty: 1825
    Pomógł: 178
    Ocena: 201
    Cytat:
    czy przy takim polaczeniu przy kazdym z prockow trzeba dac maxa232


    Nie trzeba jeżeli będą zasilane z takiego samego napięcia. MAX służy do zmiany poziomów napieć z 5V na 15V akceptowane przez RS232 w komputerze.
  • REKLAMA
  • #6 4527910
    snow
    Poziom 31  
    Posty: 1825
    Pomógł: 178
    Ocena: 201
    Tyle że kolega nie podał jakie to odległości, bo w obrębie jednej płytki czy jednego pudełka to RS232 wystarczy ;)
  • REKLAMA
  • #7 4528509
    Kvasir
    Poziom 12  
    Posty: 54
    Pomógł: 1
    Ocena: 1
    No tak, w sumie zapomnialem o tym drobnym info jak odleglosc w 1 poscie, ale w drugim w pewnym sensie jest podane " Chcialem wlasnie do samochodu wpakowac takie cudo". Pokazcie mi samochod o dlugosci ponad kilometra :) :) :) :) wiem ze rs485 jest odporniejszy na zaklocenia, ale z racji ze samochod to diesel(maly dostawczak), zaklocen jest duzo mniej (moim zdaniem), poza tym dobrze zaekranowany uklad + porzadna skretka ekranowana powinna pomoc... Jak chodzi o zaklocenia to jedyne czego sie boje i to obojetnie jaka magistrale wybiore to CB-Radio .... wysokie czestotliwosci moga nie wplynac dobrze na prace ukladu (chyba...)

    Edit: "Normalni ludzie staraja sie robic to na rs485 " ------> Dzieki :P :P Dajmy na to ze zdecydowalbym sie na RS485 (w sumie ta magistrala byla w pierwotnym planie (nie zebym byl normalny......)) Na ile trzeba by zmienic uklad, ewentualnie co dodac zeby to dzialalo ? na kazdym z dajmy na to 4 albo 6 "modulach" konwerter rs485<->rs232 ? ..... atmega->RS232/RS485->1000 metrow kabla ->RS485/RS232->druga atmega ? ....
  • #8 4528760
    asembler
    Poziom 32  
    Posty: 2099
    Pomógł: 123
    Ocena: 11
    U mnie chodzi to na jednym przewodzie jako pętla prądowa. Potrzebne całe 5 elementów przy kazdym procku a dokladnie tranzystor PNP jako nadajnik NPN jako odbiornik oczywiscie porniki(2) na bazy i opornik rzedu 100 do 1000 ohm jako obciazenie linii do masy. Robiłem próby chodzilo na kilka kilometrów. Co do programu Kwasir to raczej ci sie nie przyda, gdyz programuje procesory w aseblerze stosując własne nazwy komend wiec prawdopodobnie nie byłbys wstanie tego skompilowac nie posiadajac mojego kompilatora.
  • #10 4528815
    snow
    Poziom 31  
    Posty: 1825
    Pomógł: 178
    Ocena: 201
    W motoryzacji popularniejszy od RS485 jest CAN
  • #11 4654045
    koval_s
    Poziom 18  
    Posty: 253
    Pomógł: 3
    Ocena: 20
    O ile dobrze kojarzę, CAN to protokół, a nie specyfikacja techniczna, która jednak opiera się na RS485/422, ale rzeczywiście stosowana jest chętniej w motoryzacji, niż inne protokoły, pozdrówka...

Podsumowanie tematu

✨ Dyskusja dotyczy połączenia mikrokontrolerów Atmega8 i Atmega16 w sieć 1-wire bez pasożytniczego zasilania, gdzie Atmega16 pełni rolę mastera, a Atmega8 slave'a. Autor poszukuje przykładów oprogramowania w AVR-GCC lub Bascom, unikając asemblera. W odpowiedziach sugerowano alternatywne rozwiązania komunikacji między mikrokontrolerami, takie jak UART (z możliwością podłączenia wielu urządzeń na jednej linii), RS485 (ze względu na odporność na zakłócenia i dłuższy zasięg do 1200 m) oraz CAN, popularny w motoryzacji. Poruszono kwestie konieczności stosowania konwerterów poziomów, np. MAX232 dla RS232, oraz elementów do budowy pętli prądowej z tranzystorami PNP i NPN. Zwrócono uwagę, że przy zasilaniu z tego samego napięcia konwertery poziomów mogą być zbędne. Dyskusja obejmuje także obawy dotyczące zakłóceń elektromagnetycznych w środowisku samochodowym, zwłaszcza od CB-radia. Wskazano, że 1-wire (microLAN) może być trudny do implementacji bez pasożytniczego zasilania i brak jest dostępnych przykładów kodu dla Atmegi8. Propozycje alternatyw obejmują użycie magistrali RS485 lub CAN z odpowiednimi konwerterami, co jest bardziej standardowym i odpornym na zakłócenia rozwiązaniem w motoryzacji.
Wygenerowane przez model językowy.
REKLAMA