Ads_700x200

niedziela, 22 stycznia 2017

SOFT UART czyli programowy RS232 dla AVR

Witam,

Temat programowej realizacji komunikacji RS232 zalega u mnie w sumie od dawna, lecz po ostatniej sporej ilości maili od Was aby w końcu zająć się i poruszyć tę tematykę, uległem i właśnie zaczynamy. Nie ukrywam, że zmotywowało mnie tu także ukazanie się najnowszego modułu DIGI-LION 2, który to właśnie posiada możliwość przekazywania informacji poprzez swój pin TX, czyli poprzez RS232, a tymczasem niezbyt często będziemy rezygnowali we własnych układach ze sprzętowego UARTA, który przydaje się do innych bardziej potrzebnych rzeczy. W takim razie warto przyjrzeć się jak sobie radzić, gdy nie ma już zasobów sprzętowych, albo gdy mamy do czynienia z maleńkim prockiem ATtiny, który zwykle w ogóle nie posiada wbudowanego sprzętowego modułu UART. Z pomocą przychodzi nam tutaj realizacja programowa takiej komunikacji. Można ją zrealizować na wiele różnych sposobów, ja wybrałem tę najprostszą, opartą o wstawki asemblerowe zaś sama komunikacja jest blokująca. Są zatem wady ale także zalety takiego rozwiązania. Jak się za to zabrać? jak podejść? ... co się z tym wiąże i jak dobierać to do naszych potrzeb ? ... Mam nadzieję, że ten poradnik odpowie na wiele tego typu pytań ...




zapraszam do poradnika





;)

7 komentarzy:

  1. Świetne, naprawdę super. Coś takiego marzyło mi się, aby użyć w Attiny25 (jeśli się zmieści :) jako nadajnik, a w Attiny4-10 do odbioru.

    OdpowiedzUsuń
    Odpowiedzi
    1. Dokładnie o to chodzi ;) a zresztą jak mówię w poradniku - procek ATtiny10 w DIGI-LION korzysta właśnie z takiego sposobu jeśli chodzi o wysyłanie danych na temat napięcia i stanu przetwornicy ;)

      Usuń
  2. A można w ten sposób zrobić jednego mastera i wiele slave ?

    OdpowiedzUsuń
    Odpowiedzi
    1. Na 1 linii? a to kolega kiedyś słyszał żeby magistrala rs232 była 1:wielu ? bo ja nie ... chyba że nie rozumiem pytania.

      Usuń
  3. A może kolega dopiero zaczyna i przez to zadaje takie pytania? Mirku, wielki szacun za to co robisz ale też okaż trochę wyrozumiałości początkującym :)

    magistrala rs232 działa tak że komunikuje się 1:1, nie 1:wielu, więc nie da się zrobić inaczej

    OdpowiedzUsuń
    Odpowiedzi
    1. Ale z czym mam niby odpuścić ? A co ja złego napisałem ... no na prawdę bez przesady ... odpowiedziałem na pytanie ... i przyznałem też że być może nie rozumiem pytania ... Więc przepraszam uprzejmie ale zarzut kolegi jest kompletnie nie na miejscu - że co? że ja niby kogoś zjechałem jak to młodzież mówi ? Sorki ale to bez sensu.

      A jako ciekawostkę podpowiem że da się i rs232 zrobić 1:wielu a nie to nie na tym etapie dla początkującego właśnie - żeby sobie nie zawracał tym na razie głowy - tylko żeby porządnie nauczył się rs232

      Usuń
  4. mirek36 na forum obiecałeś kompletne biblioteki do UART. Proszę, jak możesz to podziel się plikami.
    Pozdrawiam

    OdpowiedzUsuń