napięcie na portach COM A, COM B, LTP

0

Mam problem chodzę doszkoły elektronicznej ichcę skonstrułować jakieś urządzenie ale potrzebuje wiedzieć jak regulować napięcie na portach COM A, COM B, LTP. Bardzo proszę o wysłanie mi gotowych kodach źródłowych lub chociaż adres strony WWW, z góry dziękuje.

0

Jaki jezyk programowania? bo np. w TP to Port[Adres]:=Wartosc :), w Basicu tez jest łatwo, a w Delphi trzeba wstawke ASM dać, albo poszukac gotowego komponentu na np. www.torry.net :)--W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi.

0

mario napisał:
w delphi

0

mario wlasnie o to chodzi ze napisales to w drugim watku !!!! ktory wlasnie usunalem

ec_mike dnia 19.11.2002 20:43 w tym usunietym watku napisal:
Że jak?. Z poziomu programu możesz co najwyżej wystawiać 0 lub 1 na portach a nie sterować napięciami. O co dokładnie ci chodzi.

mario nie powtarzaj postow :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

&gtec_mike dnia 19.11.2002 20:43 w tym usunietym watku napisal:
&gtŻe jak?. Z poziomu programu możesz co najwyżej wystawiać 0 lub 1 na portach a nie sterować napięciami. O co dokładnie ci chodzi.

Czyli sterowac napieciami zmieniajac je z 0 na 5V i z powrotem:))). A jak to robic: instrukcja out asemblera, numery portow znajdz na forum, bylo nie raz. Pod Win NT/2000/XP musisz uzyc kompnentu, nie mozesz bezposrednio odwolac sie do portow.--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

Napisałeś:
Czyli sterowac napieciami zmieniajac je z 0 na 5V i z powrotem

Ale od kiedy port szeregowy ma 0V lub 5V?

0

Niestety w wypadku szeregowego -12 i 12
--Pzdr.
W.

0

gavi napisał:
Niestety w wypadku szeregowego -12 i 12

[stuk] Czy tu mowa o RS-232 i o napięciach na nóżce TxD (DB25 - złącze 2; DB9 - złącze 3)??--W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi.

0

Dokładnie tak. Dlatego najczęściej jako bufor trzeba stosowac np.MAX232 który wytwarza za pomoca pompy ładunkowej napięcie ujemne. Czasem port daje się sterować napięciami +5V i - 5V, ale minus obowiązkowy.--Pzdr.
W.

0

Bartek napisał:
Napisałeś:
&gtCzyli sterowac napieciami zmieniajac je z 0 na 5V i z powrotem
&gt
&gtAle od kiedy port szeregowy ma 0V lub 5V?
&gt

Sorry, pisalem o LPT--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

Specyfikacja portu podaje dopuszczalne napięcia:
Dla logicznej 1 od -15 do -3 ( niektóre układy UART rozumieją 0V)
dla logicznego 0 od +3 do +15.
Nie ma znaczenia czy to jest TxD czy RI czy inne steryjące.
Oprócz masy oczywiście, hehehe

0

Wszyscy piszecie o zmianach stanu na na poszczególnych nóżkach w portach z niskiego na wysoki (nieważne, czy jest to -12..12 czy 0..5), a mario wyraźnie napisał, że potrzebuje regulować napięcie - ja to rozumiem jako płynną regulację tego napięcia. Również jestem po Elektroniku i coś niecoś na ten temat wiem. A więc:

W obroty węzmę port LPT.
Jest możliwość płynnej modyfikacji napięcia w zakresie od 0V do 5V, jednak jest wymagana bardzo prosta przystawka. (mario i tak napisał, że chce dołączyć do portu urządzenie, więc nie ma problemu). Tą przystawką jest układ całkujący dobrany do odpowiedniej częstotliwości. Natomiast na port trzeba wysyłać sygnał o tej właśnie częstotliwości, ale z różnym wypełnieniem. I teraz zmieniając płynnie wypełnienie na wyjściu układu całkującego otrzymamy płynną zmianę napięcia od 0V do 5V.

Przykład:
Jeśli przez 200us podajemy zero, a następnie przez 300us jedynkę i tak w kółko, to częstotliwość tego sygnału to 2kHz (układ całkujący powinien być policzony dla tej właśnie częstotliwości), a wypełnienie to 60%. Wynika z tego, że na wyjściu otrzymamy napięcie 5V * 60/100 = 3V.

Myślę, że wszystko jest jasne.
Pozdrawiam!--"Imagination is more important than knowledge." - A. Einstein

0

To się nazywa PWM. Nie wiem czy na jakiejś stronce nie ma do tego komponentów
--Pzdr.
W.

0

Marooned napisał:
&gtMyślę, że wszystko jest jasne.

Jasne. Mozna jeszcze podlaczyc D/A do portu, wtedy przy 8 liniach out mamy 256 poziomow napieciu, czyli calkiem plynnie :)))--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

gavi napisał:
To się nazywa PWM.

A co to jest PWM [???]

pq napisał:
Jasne. Mozna jeszcze podlaczyc D/A do portu, wtedy przy 8 liniach out mamy 256 poziomow napieciu, czyli calkiem plynnie :)))

No tak, ale ten układ jest jakieś 27 razy droższy, potrzebuje dodatkowego zasilania, a jego poziomy są rozróżnialne podczas gdu u mnie są to dwa elementy za jakieś 50 groszy, a regulacja jest całkowicie płynna. :-)

--
"Imagination is more important than knowledge." - A. Einstein

0

[b]PWM[/b] - skrót od [b]Pulse Width Modulation [/b]. Metoda bardzo często stosowana do sterowania silników przez mikrokontrolery.Polega tak jak napisał Marooned ( i określa nazwa) na zmianie szerokości impusów wysyłąnych ze stałą częstotliwością. W ten sposób zmienia się wartość średnia przebiegu - wystarczy przepuścic przez filtr dolnoprzepustowy ( całkujący) Układ bardzo popularny bo tani. Niektóre procesory mają od razu zaimplementowane gotowe procedury i odpowiednio skonfigurowany hardware. :-)

--
Pzdr.
W.

0

pq napisał:
Jasne. Mozna jeszcze podlaczyc D/A do portu, wtedy przy 8 liniach out mamy 256 poziomow napieciu, czyli calkiem plynnie :)))

No tak, ale ten układ jest jakieś 27 razy droższy, potrzebuje dodatkowego zasilania, a jego poziomy są rozróżnialne podczas gdu u mnie są to dwa elementy za jakieś 50 groszy, a regulacja jest całkowicie płynna. :-)

--
</quote>

Nie koniecznie jest droższy.
Może byc 7 razy tańszy...
Bo najprostszy przetwornik D/A to w tym przypadku 8 rezystorów o różnych (odpowiednich wartościach) lub 16 rezystorów o tej samej wartości.
He, he, he

0

Ciekaw jestem czy pod Windows da sie ustawiac wartosci portu z wystarczajaca precyzja czasowa, zeby uzyskac PWM

--
Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

Wszyscy piszecie o zmianach stanu na na poszczególnych nóżkach w portach z niskiego na wysoki (nieważne, czy jest to -12..12 czy 0..5), a mario wyraźnie napisał, że potrzebuje regulować napięcie - ja to rozumiem jako płynną regulację tego napięcia. Również jestem po Elektroniku i coś niecoś na ten temat wiem. A więc:

W obroty węzmę port LPT.
Jest możliwość płynnej modyfikacji napięcia w zakresie od 0V do 5V, jednak jest wymagana bardzo prosta przystawka. (mario i tak napisał, że chce dołączyć do portu urządzenie, więc nie ma problemu). Tą przystawką jest układ całkujący dobrany do odpowiedniej częstotliwości. Natomiast na port trzeba wysyłać sygnał o tej właśnie częstotliwości, ale z różnym wypełnieniem. I teraz zmieniając płynnie wypełnienie na wyjściu układu całkującego otrzymamy płynną zmianę napięcia od 0V do 5V.

Przykład:
Jeśli przez 200us podajemy zero, a następnie przez 300us jedynkę i tak w kółko, to częstotliwość tego sygnału to 2kHz (układ całkujący powinien być policzony dla tej właśnie częstotliwości), a wypełnienie to 60%. Wynika z tego, że na wyjściu otrzymamy napięcie 5V * 60/100 = 3V.

Ooo, tu mnie zaciekawiłeś. Mógłbyś sypnąć jakimś prostym schematem? No i jeszcze, czy ktoś może wie, w jaki sposób uzyskać tak mały odstęp czasowy, aby w odpowiednim czasie wystawić na jakiś pin 0 lub 1?

--

Delphi 6

Pozdrówka

0

No i jeszcze, czy ktoś może wie, w jaki sposób uzyskać tak mały odstęp czasowy, aby w odpowiednim czasie wystawić na jakiś pin 0 lub 1?

No wlasnie, zwlaszcza pod kochana Winda ktora potrafi spedzic kilka sekund na zajmowaniu sie sama soba (czyli na masturbacji??? :))), a programy czekaja...

--
Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

No wlasnie, zwlaszcza pod kochana Winda ktora potrafi spedzic kilka sekund na zajmowaniu sie sama soba (czyli na masturbacji??? :))), a programy czekaja...

--
Pawel {Delphi 6 Personal}

No właśnie tu jest problem. Dlatego w większosci zastosowań wykorzystuje się jako końcówkę mikrokontrolery typu 8051 czy PIC sterowane z PC-ta.
Jesli jednak zależy na taniości , stosuje się rozwiązania z bezpośrednim sterowaniem z portów. Typowym zastosowaniem są tanie programatory procesorów jednoukładowych lub EEPromów, sterowane bezposrednio z portu. Ponieważ zależnosci czasowe są tam dość krytyczne, to mimo wielu zabiegów programowych programatory te są dość zawodne , ich działanie zależy bardzo często zarówno od wersji windy jak i typu maszyny na której jest ona uruchomiona. Bliższe dane na te tematy np na grupie avt.ep.elektronika

--
Pzdr.
W.

0

BartekG napisał:
Nie koniecznie jest droższy.
Może byc 7 razy tańszy...
Bo najprostszy przetwornik D/A to w tym przypadku 8 rezystorów o różnych (odpowiednich wartościach) lub 16 rezystorów o tej samej wartości.
He, he, he

He, he, he, a mój układ (rzekomo droższy), to nie 8 czy 16 rezystorów a 1 opornik + 1 kondensator.

thenkles napisał:
Ooo, tu mnie zaciekawiłeś. Mógłbyś sypnąć jakimś prostym schematem? No i jeszcze, czy ktoś może wie, w jaki sposób uzyskać tak mały odstęp czasowy, aby w odpowiednim czasie wystawić na jakiś pin 0 lub 1?

Schemat układu całkującego na rezystorze i kondensatorze (bo są jeszcze np. na wzmacniaczu operacyjnym) wygląda następująco:

o---[ R ]---+----o
|
---
we C wy
---
|
o-----------+----o

R - rezystor
C - kondensator

--
"Imagination is more important than knowledge." - A. Einstein

0

Jezeli chcesz sterowac portem LPT to wystarczy na googlach wpisac hasla z nim zwiazane. Jak chcesz miec port o jeszcze wiekszych mozliwosciach to poszukaj o porcie LPT EPP lub enhaced parrel port. Co do COM'ów to poszukaj informacji o przerwaniu 14h biosu, mozesz kupic sobie takze baardzo dobrą ksiązke "szeregowe interfejsy cyfrowe" wy. Helion (jest w niej wszystko opisane).

--
Pozdrawia CEPA ;] !!!
C/C++ ASM

0

Schemat układu całkującego na rezystorze i kondensatorze (bo są jeszcze np. na wzmacniaczu operacyjnym) wygląda następująco:

No a gdybyś podał jeszcze, jakie z grubsza te elementy powinny mieć wartości, to byłoby super :)

--

Delphi 6

Pozdrówka

0

No a gdybyś podał jeszcze, jakie z grubsza te elementy powinny mieć wartości, to byłoby super :)

Wartości elementów zależne są od obranej częstotliwości. Stała czasowa jest równa iloczynowi wartości rezystancji R i pojemności C. t=RC, a częstotliwość to f=1/(RC). Mając daną częstotliwość i np. rezystancję obliczysz pojemność. Wychodzi z tego, że istnieje bardzo dużo par wartości tych elementów dla jednej częstotliwości, jednak jakich najlepiej użyć tego nie pamiętam. :-( Sorry

--
"Imagination is more important than knowledge." - A. Einstein

0

Chyba sie niedokładnie rozumiemy. Mówiąc o koszcie i komplikacji układu nie myslałem o układzie zamieniającym PWM na wartość średnią - jasne ,ze do tego starczy zwykły filtr dolnoprzepustowy - w najprostszym przypadku kondensator i opornik. Problem jest z drugiej strony - jak zamienić sygnał analogowy , sterujacy na wartość PWM. Jak już wcześniej ktos zauważył Winda nie bardzo do tego się nadaje. Nawet stosowanie wątków o najwyższym priorytecie nie rozwiązuje problemu . Stąd najczęściej dodatki hardwarowe i większe koszty. Natomiast do demonstracji zasdy działania - w sam raz

--
Pzdr.
W.

0

Chyba sie niedokładnie rozumiemy. Mówiąc o koszcie i komplikacji układu nie myslałem o układzie zamieniającym PWM na wartość średnią - jasne ,ze do tego starczy zwykły filtr dolnoprzepustowy - w najprostszym przypadku kondensator i opornik. Problem jest z drugiej strony - jak zamienić sygnał analogowy , sterujacy na wartość PWM. Jak już wcześniej ktos zauważył Winda nie bardzo do tego się nadaje. Nawet stosowanie wątków o najwyższym priorytecie nie rozwiązuje problemu . Stąd najczęściej dodatki hardwarowe i większe koszty. Natomiast do demonstracji zasdy działania - w sam raz

Po pierwsze - wiem, że układ całkujący i filtr dolnoprzepustowy wyglądają tak samo, ale spełniają inne zadania i raczej nie myliłbym ich w tym przypadku ;-)

A po drugie, to zgadzam się, że pod Windą trudno by było utrzymać stałą częstotliwość.

--
"Imagination is more important than knowledge." - A. Einstein

0

Wiem, ze pytanie dotyczylo troche czego innego, ale mi przychodzi do glowy proste rozwiazanie problemu - karta dzwiekowa. przynajmniej 65536 poziomow napiecia ustawianych z rozdzielczoscia czasowa przynajmniej rzedu 23 us na przynajmniej 2 kanalach, i sterowanie taktowane niezaleznym zegarem, wiec winda nie napsuje. Czego wiecej trzeba

--
Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

Po pierwsze - wiem, że układ całkujący i filtr dolnoprzepustowy wyglądają tak samo, ale spełniają inne zadania i raczej nie myliłbym ich w tym przypadku ;-)

Sorry, ale układ całkujący i filtr dolnoprzepustowy nie tylko wyglada tak samo ale i to jest to samo. Różnica dotyczy zastosowania - o układzie całkujacym mówimy w dziedzinie czasu ( wymuszenie jest impulsowe) ,a o filtrze dolnoprzepustowym w dziedzinie częstotliwosci (wymuszenie harmoniczne). I dlatego napisałem filtr - chodzi nam nie o ukształtowanie zbocza poszczególnych impulsów fali a o odfiltrowanie składowych zmiennych przebiegu i pozostawienie tylko składowej stałej ( będącej rzeczywiście całką za okres )

--
Pzdr.
W.

1 użytkowników online, w tym zalogowanych: 0, gości: 1