Skocz do zawartości

LPT - jakie są jego możliwości? USB? COM?


klucha

Pomocna odpowiedź

Witam

Mam parę pytań;]

Tak więc..

Chciałbym np. obsłużyć 1 silnik napędzający 12[v] i np.9 serw 5[v] łącznie [10 wyjść] i 6 czujników łączenie [6 wejść]. Ma to być na bazie laptopa lub stacjonarki.

Jakie porty użyć aby obsłużyć tyle wejść i wyjść? LPT? COM? USB? Bardzo byłbym wdzięczny gdyby ktoś uzasadnił np. pod względem łatwości programowania itd. [znam delphi].

Myślałem o LPT. Lecz nie wiem jaki układ zrobić itd.

Napiszę ktoś parę słów:)

Z góry dziękuję

Link do komentarza
Share on other sites

W Delphi łatwo obsłużysz rs232 (komponent cport), czyli rs232 i komunikacja z jakimś avr'em który dalej będzie zarządzał silnikami, lub jeszcze można dać przejściówkę usbrs232, aby całość działała na nowszym sprzęcie (nowych PC'tach i laptopach, które nie mają rs232).

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Tak więc przez port komputera wysyłam sygnał 0 lub 1 do np atmegi a ona załącza np silnik? Ale jak to zrobić przecież każda nóżka nie może odpowiadać każdemu wejściu i wyjściu bo nóżek za braknie rs232 czy to trzeba wysyłać w jakiś pakietach? Proszę o wytłumaczenie..

Link do komentarza
Share on other sites

Rs232 jest w tym przypadku nośnikiem informacji do układu wykonawczego jakim może być mikro kontroler który wydaje rozkazy serwom. Jeśli chcesz wykonać to na LPT to musisz na wyjścia dać najlepiej bufory ( 2 razy bramkę not) a z buforem sterować tranzystorem który przejdzie już na napięcie zasilania serw. Z tym, że z lpt nie obsłużysz tej ilości urządzeń we/wy. Tak więc prostym rozwiązaniem będzie wysyłanie informacji po np rs232, do mikrokontrolera a on zajmuje się wykonywanie reszty, bądź, zastosowanie lpt z rejestrem szeregowo-równoległym który umożliwi rozszerzenia wy do tylu ilu chcesz, podłączanym miedzy buforem a tranzystorem, program w tym przypadku jest banalny bo pisany tylko na PC.

Link do komentarza
Share on other sites

Wytłumaczę Ci podstawy rs232, bo chyba jej nie pojmujesz. Do transmisji nie używasz wszystkich pinów tego portu tylko dwa: RXD i TXD, jeden służy do wysyłaniu danych drugi to odbierania. Przez nie wysyłasz sobie dane w taki sposób jaki sobie to zaprojektujesz (jak zaprojektujesz ramki danych).

  • Lubię! 1
Link do komentarza
Share on other sites

Czyli wysyłam np iloś bajtów i podąża ona do bramki która wychwyci dany pakiet? Rozumiem że wyszłam z np. Poziomu delphi a bramki napisane są np w bascomie i i umieszczone np w atemedze? Ciężko napisać takie bramki w bascomie? Dziękuję za zainteresowanie i przydatne info.🙂

Link do komentarza
Share on other sites

w art. znalazłem

" Niestety nie doświadczeni pewnie będą próbować podłączać mikrokontroler do wejścia RS-232 w komputerze a niestety trzeba wiedzieć że trzeba zastosować konwerter napieć aby transmisja się dokonała." o co dokładniej chodzi? 😳

Niektóre "osobniki" z grupy mikrokontrolerów AVR posiadają bardzo przydatną rzecz,[.]

.. moduł UART, "

Atemegi posiadają ten moduł? mam atmega 8 ale chce kupić coś lepszego,.

[.]Komenda baud umożliwia ustalenie dokładności przesyłu (wartość zależy od utawionego kwarcu). [.] ... to tylko kwarc przy atmedze?

Link do komentarza
Share on other sites

Konwerterem napięć jest właśnie układ MAX232. Jeśli wszystko dobrze podłączysz to nic się nie spali i komunikacja odbędzie się. Zamiast atmegi 8 możesz zastosować atmege 32 lub 16. No i trzeba zastosować kwarc z odpowiednią konfiguracją fuse bitów.

  • Lubię! 1
Link do komentarza
Share on other sites

Dzięki wam!🙂

Na razie wszystko rozumiem poza jednym.. "No i trzeba zastosować kwarc z odpowiednią konfiguracją fuse bitów."

z odp. fuse bitów? nie rozumiem..

np. znalazłem takie coś:

1. 0000 = częstotliwość z zewnętrznego generatora,
2. 0001 = oscylator w wewnątrz procesora o częstotliwości 1MHz,
3. 0010 = wewnętrzny oscylator 2MHz,
4. 0011 = wewnętrzny oscylator 4MHz,
5. 0100 = wewnętrzny oscylator 8MHz,
6. 0101 = zewnętrzny oscylator RC 1MHz,
7. 0110 = zewnętrzny oscylator RC 2MHz,
8. 0111 = zewnętrzny oscylator RC 4MHz,
9. 1000 = zewnętrzny oscylator RC 8MHz,
10. 1001 = zewnętrzny kwarc z kondensatorami 2MHz,
11. 1010 = zewnętrzny kwarc z kondensatorami 2-4MHz,
12. 1011 = zewnętrzny kwarc z kondensatorami 4-6MHz,
13. 1100 = zewnętrzny kwarc z kondensatorami 6-8MHz,
14. 1101 = zewnętrzny kwarc z kondensatorami 8-10MHz,
15. 1110 = zewnętrzny kwarc z kondensatorami 10-16MHz.

Czyli np. jeżeli przy mojej atmedze będzie kwarc dajmy 14Mhz wtedy mam zaprogramować go na 1110 w bascomie?

Link do komentarza
Share on other sites

Owszem, chociaż uważam, że najlepiej użyć do tego celu burn-o-mat'a - ustawianie fusów jest tam bajecznie proste - nie podajemy, które bity mają być zaprogramowane, tylko z listy wybieramy źródło taktowania, a wbudowany kalkulator przelicza nam to.

  • Lubię! 1
Link do komentarza
Share on other sites

Teraz się troszkę pogubiłem.

Przecież jak mam kwarc 14Mhz to ustawiam na 1110. i po co jakieś kalkulatory?

Kurde nie mogę załapać właśnie czytam o tym burn-o-mat ale nie rozumiem .. jeśli przecież ustawię to po co się męczyć kalk.?

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.