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

ATmega/ATtiny - Jak zrealizować komunikację 1wire z użyciem max. 2 I/O?

m.biruta 07 Sty 2013 08:51 2655 13
  • #1 11753641
    m.biruta
    Poziom 16  
    Witam,
    Potrzebuję stworzyć komunikację 1wire pomiędzy dwoma układami. Atmega <-> Atmega nie ma problemu, pytanie czy da się to zrobić pomiędzy dwoma Attiny lub Atmega <-> Attiny? Nigdy nic nie robiłem na Attiny, więc nie znam ich możliwości. Dodatkowo potrzebuję max. 2 I/O.
  • #2 11753684
    BlueDraco
    Specjalista - Mikrokontrolery
    ATtiny to tylko trochę odchudzony mega. Timery też ma podobne, a głównie tego potrzebujesz do OW. Z czym konkretnie masz problem?
  • #4 11753883
    m.biruta
    Poziom 16  
    Nie mam jeszcze nic. Potrzebuję tego typu komunikacji:

    - uC2 -> uC1: HELLO
    - uC1 -> uC2: HI
    - uC2 -> uC1: WANT230V
    - uC1 -> uC2: OK
    - uC1 -> uC2: PING
    - uC2 -> uC1: PONG
    - uC1 -> uC2: PING
    - uC2 -> uC1: PONG
    (...)
  • #5 11754012
    BlueDraco
    Specjalista - Mikrokontrolery
    A ja się zastanawiam, czemu uparłeś się na OW. Przecież możesz puścić dwukierunkową komunikację przy użyciu UART po jednym drucie (plus masa powrotna oczywiście). Obsługa będzie o niebo prostsza niż OW.
  • #6 11754036
    m.biruta
    Poziom 16  
    Nie uparłem się na 1Wire, z komunikacją UART nie miałem styczności (natomiast z I2C i owszem). Fakt jest natomiast taki, że muszę mieć komunikację na jednym, max 2 przewodach.
  • Pomocny post
    #7 11754219
    BlueDraco
    Specjalista - Mikrokontrolery
    Dotychczas w mojej karierze zawodowej nie spotkałem się z techniką przesyłania prądu elektrycznego bez sygnału powrotnego, czyli po jednym przewodzie bez chociażby ziemi lub wody jako powrotu.

    UART - to jest coś, co masz w 99% mirokontrolerów i czego obsługa programowa składa się z kilku instrukcji. Nie bardzo wiem, jak mogłeś nie mieć styczności z UART, bo to najpowszechniejszy standard/format szeregowej transmisji danych. Proponuję jednak użyć UARTa, który jest znacznie prostszy i od OW i od I2C.
  • #8 11754621
    m.biruta
    Poziom 16  
    BlueDraco napisał:
    Dotychczas w mojej karierze zawodowej nie spotkałem się z techniką przesyłania prądu elektrycznego bez sygnału powrotnego, czyli po jednym przewodzie bez chociażby ziemi lub wody jako powrotu.

    Wiadomo :) Przy tym połączeniu mam 5V, GND 5V, DATA, 230V, GNS 230V, więc mógłbym układ podłączyć pod GND linii sieciowej. i zyskać 2 przewód data.

    BlueDraco napisał:
    UART - to jest coś, co masz w 99% mirokontrolerów i czego obsługa programowa składa się z kilku instrukcji. Nie bardzo wiem, jak mogłeś nie mieć styczności z UART, bo to najpowszechniejszy standard/format szeregowej transmisji danych. Proponuję jednak użyć UARTa, który jest znacznie prostszy i od OW i od I2C.

    Styczność z komunikacją UART miałem tyle, co programowanie układów, ale nie przesyłanie danych pomiędzy układami.
  • Pomocny post
    #9 11754662
    BlueDraco
    Specjalista - Mikrokontrolery
    Możesz dane przesyłać w obie strony po jednej linii DATA przez odpowiednio oprogramowany UART. To oprogramowanie zajmie pewnie nie więcej niż kilkanaście linii kodu (wraz z przełączaniem kierunku transmisji).
  • #10 11754679
    m.biruta
    Poziom 16  
    BlueDraco napisał:
    Możesz dane przesyłać w obie strony po jednej linii DATA przez odpowiednio oprogramowany UART. To oprogramowanie zajmie pewnie nie więcej niż kilkanaście linii kodu (wraz z przełączaniem kierunku transmisji).

    Czy jesteś mi w stanie podesłać link do jakiegoś przykładu?
  • #11 11754705
    BlueDraco
    Specjalista - Mikrokontrolery
    Wiesz, nie tak łatwo znaleźć przykład na ATmega, w którym NIE MA komunikacji po UART (np. RS232 i połączenie z PC). Pozostaje dorzucić wyłączenie wyjścia po wysłaniu bajtu i oczekiwanie na odpowiedź po stronie MASTER i komplementarny kod po stronie SLAVE (czekamy na daną z master, wyłączamy odbiór, włączamy nadawanie, nadajemy, wyłączamy nadawanie i włączamy odbiór).
  • #12 11754770
    m.biruta
    Poziom 16  
    BlueDraco napisał:
    Wiesz, nie tak łatwo znaleźć przykład na ATmega, w którym NIE MA komunikacji po UART (np. RS232 i połączenie z PC).

    A attiny<->attiny?
  • #13 11754790
    BlueDraco
    Specjalista - Mikrokontrolery
    Jeśli masz na myśli uC bez sprzęTowego UARTa, to Google: attiny software uart
REKLAMA