polaczenie rs-232 (co uzyc)

Aug 24, 2004 1 Replies

Witam serdecznie. Jest bardzo początkującym elektronikiem. Szczerze powiedzawszy to informatykiem, któremu zlecono zaprojektowanie i wykonanie pewnego układu. Niestety nie idzie mi to zbyt dobrze i potrzebuję pilnie pomocy.



Ma być to mały układzik współpracujący z komputerem, który posiada



- 1 wejście RS-232



- 12 wyjść 24V



A) Główny problem:



- czego należy użyć, aby przyłączyć kabel rs-232 i odebrać te kilka bitów a następnie wysłać je na demultiplekser i inne elementy. (proosiłbym o dokładne wskazówki) ?



B) inne problemy b.1) jakie elementy podłączyć do wyjść Q przerzutników ? b.2) jaki użyć transformator do zasilania układu i wyjść? b.3) o czym jeszcze powinienem pomyśleć?



Ponizej opisuje dokladniej projekt: (C) Sposób kodowania: bit 0: określa stan danego wyjścia (czy ma na nim pojawić się napięcie czy nie) bity 1-4: numer wyjścia (liczba binarna) bit 5: zerowanie (wyłączenie) wszytkich wyjść albo nie



(D) Według mnie układ powinien zawierać następujące części d.1) część odbierające dane z kabla szeregowego d.2) demultiplekser dekodujący numer wyjścia (kazde wyjście z demuxa podłączone do zegara innego zprzerzutnika D) d.3) przerzutniki D pełniące rolę pamięci d.4) styczniki albo inne elementy, które po podaniu wysokiego stanu logicznego na wejscie spowoduja pojawienie sie napięcia 24V na wyjściu.



(E) Połączenia: e.1) bit 0 podłączyć równolegle pod wejścia danych we wszystkich przerzutnikach e.2) bity 1-4 podpiąć do wejścia demultipleksera e.3) kolejne wyjścia demultipleksera podłączyć do kolejnych przerzutników D (wejście zegara) uprzednio przechodząc przez dodatkowe bramki NAND. e.4) bit 5 podłączyć równolegle do wszystkich wejść reset przerzutników oraz dołączyć do wszystkich drugich nóżek 12 bramek NAND.



(F) Plan działania układu f.1) odebrać z komputera interesujące nas bity f.2) bit 0 zostaje zapodany na wejscia danych wszystkich przerzutnikow f.3) bity 1-4 przesyłane do multipleksera f.4) multiplekser dekoduje numer wyjscia i umieszcza na odpowiednim logiczną 1. f.5) umieszczenie 1 na wyjsciue demuxa powoduje pojawienie sie jej na wejściu CLK jednego z 12 przerzutników. f.6) w związku ze zmianą zegara zmienia się stan pamiętany przez dany przerzutnik


- jeżeli bit 5 będzie w stanie 1 to pojawi się 1 na wszystkich wejsciach resetujących przerzutniki oraz na wejściach zegarowych (poprzez połączenie przez bramki NAND)


Z góry dziękuję za pomoc.



Pozdrawiam. Przemysław Kukawka



Zastosuj dowolny mikrokontroler z potrzebna liczba wyjsc, nie ma sensu bawic sie w robienie tego na licznikach, demultiplekserach itp. Potrzebujesz np. procesor ATmega8515 (kosztuje okolo 20 zl). Do tego kazde wyjscie uzbrajasz w tranzystor i juz mozna wlaczac te 24V. Do wspolpracy przez RS232 z komputerem trzeba zastosowac bufor MAX232 lub odpowiednik (ST232, HIN232).

Alez namieszane. Chyba prosciej i szybciej bedzie to napisac w postaci programu dla procesora, np. w jezyku C. :) Z samym odbieraniem danych "na piechote" juz mialbys problem (bity startu i stopu, taktowanie).

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required