Adaptuojamės – FTDI USB TTL į RS485

26 10 2013

Gaminu čia viena agregatą kuriam naudosiu RS485 sąsają ir susiduria su tokia problema: Dviems įrenginiams bendraujant tarpusavyje vis per RS485 nuoseklią sąsaja niekaip nepavyksta visų duomenų iš šono debuginti. Situacija labai paprasta – turiu du Arduino kurie bendrauja vienas su kitu: UART duomenis galiu matyti tiesiai kompe per Arduino bet tik tuos kuriuos Arduino siunčia – gaunamu ne. Tie patys siunčiami duomenys taip pat yra tik teoriškai, nes neaišku kas su jais nutinka konvertuojant į RS485 fizinį lygį. Taip jau atsitiko kad projekto eigoje komandą siunčiantis Arduino ją išsiunčia, gavėjas gauna ir lyg tais atsako, bet pirmasis taškas šio atsakymo vis nesulaukia. Blogiausia yra tai kad nežinau ar antrasis Arduino pasiuntė atsakymą į RS485 tinklą, o gal pirmasis kažkaip nemoka jo priimti. Bėda bėda, reikia žiūrėti kaip čia paslampinėjus po RS485. Dabar aprašysiu mažą savo pagaminta įrenginuką kad tai ir galėčiau padaryti. Jį beje jau esu testavęs DMX512 tinklo testavime bet taip ir nebuvau pagaminęs PCB.

Taigi turiu FTDI USB į TTL pirštelį:

kxvn

Jį naudoju daugiausiai Standalone Arduino projektų programavimui ir panašiai. Kuom jis dar geras ir geresnis už pigesnius PL2302 modeliukus – turi DTR signalą. Būtent jo mums reikia RS485 signalui. DTR signalas nurodo RS485 mikroschemai kad dabar mes norime siųsti duomenis. Kuomet DTR yra LOW duomenys priimami. Taigi braižomės schemą bei PCB:

e82c

f9dw

Skaityti pilną įrašą »