FAQ | Points | Add... | Recent posts | Search | Register | Log in


Sterowanie portem LPT VisualBasic6 i INNE


Post new topic  This topic is locked      Main Page -> Forum Index -> Programming Generally -> Sterowanie portem LPT VisualBasic6 i INNE
Author
Message
adi
Poziom 7
Poziom 7


Joined: 03 Aug 2006
Posts: 23
Location: wrocław

Post#31 27 Jun 2007 19:53   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Witam!
Mam sterownik od DARIUSZEE. Wszysto działa super. Realizuję sterowanie 4 pompami i 4 elektrozaworami wg oprogramowania napisanego przez SIVEX-a. Wszystko byłoby pięknie, ale...!
Problem pojawia się, gdy w sieci nastepuje krótkotrwały zanik napięcia. Wtedy komputer się resetuje i na wyjściach D0 do D7 pojawia się stan H. Włączają się wszystkie pompy i elektrozawory jednoczesnie- jest totalny bałagan. Płyny które mieszam w odpowiednich proporcjach wylewają się.
Mam prośbę.
Może ktoś mi podpowie jak rozwiazać ten problem.

Dodano po 12 [minuty]:

I jeszcze coś. Problem znika, gdy uruchomię program od SIVEX-a. Wtedy na D0 do D7 sa stany niskie i wszystko jest ok.
Rozwiązaniem byłoby wstawienie 8 wejściowej bramki na wyjściu z komputera, która odcinałaby zasilanie sterownika.
Jeżeli ktoś coś takiego umie zrobić proszę o pomoc!
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#32 Post from the author of the topic 05 Jul 2007 19:12   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Quote:
Problem pojawia się, gdy w sieci nastepuje krótkotrwały zanik napięcia. Wtedy komputer się resetuje i na wyjściach D0 do D7 pojawia się stan H.



Rozwiązanie jest proste... zainteresuj sie pinem pierwszym LPT i sprawdź jaki może stać się przydatny do tego co potrzebujesz zrobić:)

pozdr.
Back to top
   
adi
Poziom 7
Poziom 7


Joined: 03 Aug 2006
Posts: 23
Location: wrocław

Post#33 07 Jul 2007 17:53   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Ok !
Tylko ja w te klocki jestem zielony. Jestem chemikiem, a tu potrzeba wiedzy elektronika. Jeżeli jest taka możliwość to proszę o bardziej konkretną podpowiedź, a najlepiej rozwiązanie praktyczne.
Pozdrawiam.
Back to top
   
aligatormp
Poziom 12
Poziom 12


Joined: 29 Jun 2007
Posts: 84
Location: katowice

Post#34 20 Jul 2007 13:07helpful post - solution   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Chciałam dołączytć do rozmowy, proponuję przeczytać dobry artykuł www.lpt.strona.pl - omawia dwa tryby pracy - directional (typowy dla drukarek) oraz bidirectional (czytanie portu) do artykułu dodaję własny programik testujący, który działa ze sterownikiem inpout32.dll.

Chciałem dodać, iż na klawiszu masz aktualny tryb pracy portu, zmiana następuje przez naciśnięcie go. W trybie Directional pobranie wartości portu jest równoznaczne z odczytaniem rejestru, w trybie Bidirectional ta sama operacja odczytuje stany z pinów D0-D7.

Aktualny stan trybu pracy portu sczytywany jest tylko podczas uruchamiania programu

Ps. niedogodność tą poprawiłem, aktualny tryb pracy portu sprawdzany jest każdorazowo po naciśnięciu klawisza "wyślij".

Pozdrawiam



testport.exe
 Description:
 n/a

Download
 Filename:  testport.exe
 Contents:  
 Filesize:  6 KB
 Punkty:  0.00

Back to top
   
adi
Poziom 7
Poziom 7


Joined: 03 Aug 2006
Posts: 23
Location: wrocław

Post#35 01 Sep 2007 18:41   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Witam !
Mam sterownik LPT (od DARIUSZEE), który działał od ponad roku z oprogramowaniem (od SIVEX-a) bez żadnych zastrzeżeń. Od tygodnia coś się podziało, że nie załącza przekaźników według ustawień programu. Raz jest wszystko w porządku , aby w innym czasie nie załączyć jednego lub dwóch. Jeżeli ktoś może mi podpowiedzieć czego szukać to bardzo proszę.
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#36 Post from the author of the topic 03 Sep 2007 17:55   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Na początek proponuje sprawdzić ustawienia portu LPT w biosie czy przypadkiem nie przestawiło sie z ECP na inny typ.
Następnie sprawdż wyjścia bezpośrednio z portu najlepiej miernikiem można też diodą.

Napisz jakie efekty
pozdr.
Back to top
   
adi
Poziom 7
Poziom 7


Joined: 03 Aug 2006
Posts: 23
Location: wrocław

Post#37 03 Sep 2007 20:00   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Witam !
W biosie mam ustawione ECP+EPP i COM 1 378. Zaobserwowałem, że problem jest w tym, iż mimo ustawień w programie nie zapalają się diody w sterowniku, jak również nie pokazują tego diody programowe.
W załaczeniu przesyłam plik z ustawieniami programowymi.
pozdro.

Dodano po 12 [minuty]:

Nie takie rozszerzenie. Zapisałem w formacie txt a jest to plik "ustawienia.ini"



ustaw.txt
 Description:
 n/a

Download
 Filename:  ustaw.txt
 Contents:  
 Filesize:  30.94 KB
 Punkty:  0.00

Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#38 05 Sep 2007 15:30   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Więc wiem już jak uzyskać napięcie na pinach i jak go wzmocnić. Problem mam z tym jak to zrobić aby dana sekwencja ośmiu bitów już po wyjściu z kompa była zamieniana na jeden z 255 sygnałów. Myślałem nad układem przekaźnikowym ale to wielkie koszty są. Słyszałem, że można coś takiego zrobić za pomocą procesora. Jaki on powinien być i gdzie go mogę zaprogramować? pozdrawiam.
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#39 Post from the author of the topic 07 Sep 2007 07:08   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Opisz dokładniej co chcesz uzyskać.

pozdr.
Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#40 07 Sep 2007 15:36helpful post - solution   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Po wpisaniu odpowiedniej cyfry z zakresu od 1-255 na pinach wyjściowych portu LTP pojawia się dana sekwencja napięć, a ja nie chce danej sekwencji napięć tylko napięcie na jednym z 255 wyjść. Po wpisaniu innej cyfry z tego zakresu sekwencja napięć wyjściowych byłaby zamieniana na napięcie na innym z 255 wyjść. pozdr.
Back to top
   
Google

Google Adsense


Post# 07 Sep 2007 15:36helpful post - solution   





Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#41 Post from the author of the topic 10 Sep 2007 09:24   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Więc tak.
Jeżeli chcesz na pierwszym pinie wystawić "1" to podajesz wartość 1.
Jeżeli na drugim pinie to wartość 2.
Jeżeli dalej chcesz utrzymać przy tej zmianie wartość pierwszego pinu musisz podać wrtość 3 czyli 1+2. itd
Przy każdej zmianie stanu jednego pinu trzeba też uwzględnić stany innych pinów i to tyle :)


Quote:
Gdzie wyjscie rowna sie sumie:
bit0 = 1
bit1 = 2
bit2 = 4
bit3 = 8
bit4 = 16
bit5 = 32
bit6 = 64
bit7 = 128



w VB można to napisać chociażby tak:

Dim PinMem As Byte

Function PinH(Pin As Byte) As Byte
'Ustaw stan wysoki na pinie

If (2 ^ (Pin - 1)) And PinMem Then
PinH = PinMem
Exit Function
End If

PinMem = PinMem + (2 ^ (Pin - 1))
PinH = PinMem

End Function

Function PinL(Pin As Byte) As Byte
'Ustaw stan niski na pinie

If (2 ^ (Pin - 1)) And PinMem Then PinMem = PinMem - (2 ^ (Pin - 1))

PinL = PinMem

End Function


Wpisując "PinH(numer pinu od 1 do 8 )" zwróci wartość portu jaki trzeba ustawić nie zmieniając innych pinów z wyjątkiem tego który wpisałeś.
Tak samo z wystawieniem stanu niskiego funkcją "PinL"

Text1.Text = PinH(5)


pozdr.
Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#42 10 Sep 2007 23:27   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Zakładając że na port wyśle 147 = 1+2+16+128 napięcie pojawi się wówczas w kombinacji 11001001 i teraz w jaki sposób (chodzi mi o układ elektroniczny który należy umieścić już poza komputerem) sprawić aby ta kombinacja powodowała pojawienie się napięcia na sto czterdziestym siódmym z 255 wyjść?
Back to top
   
JStan
Poziom 15
Poziom 15


Joined: 13 Feb 2006
Posts: 235
Location: Sanok

Post#43 10 Sep 2007 23:58   

Re: Sterowanie portem LPT VisualBasic6 i INNE


sivex koledze Backdraft chodzi poprostu o sterownik 255-cio kanałowy na porcie LPT a nie o bezpośrednie wysyłanie sygnału na port.

Potrzebny jest podłączony do wyjścia lpt najprościej mikrokontroler który po dostarczeniu na osiem jego wejść bajtu z portu wyjściowego LPT przeliczy wartość zerojedynkową bajtu na postać dziesiętną(bardzo proste) i za pomocą dużeego multipleksera wysteruje jedno z 255 wyjść powiedzmy przekaźnikowych(o zgrozo...) lub tranzystorowych lub innych...

Wykonalne ale pozwól że spytam, do czego te 255 kanałów:>????
Back to top
   
Google

Google Adsense


Post# 10 Sep 2007 23:58   





Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#44 11 Sep 2007 11:26   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Oooo dokładnie. Nie jest mi potrzebne aż 255 kanałów. Na razie potrzebowałbym ok. 50. Chciałbym zrobić sterowanie oświetleniem dyskotekowym. W jaki sposób zrobić taki układ? Pozdrawiam.
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#45 Post from the author of the topic 11 Sep 2007 15:36   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Proponuje zainteresować sie demultiplexerem np 74154 lub inne oraz układy z "zatrzaskiem" by móc zostawiać stan wysoki/niski na jednym z kanałów a w tym czasie sterować innym.

Nie wiem czy jest sens się powtarzać ponieważ demultiplexery i multiplexery (odwrotność, zbierają informacjie z wielu urządzęń) są opisane chyba na wszystkie możliwe sposoby na naszej Elce.

pozdr
Back to top
   
JStan
Poziom 15
Poziom 15


Joined: 13 Feb 2006
Posts: 235
Location: Sanok

Post#46 11 Sep 2007 21:49   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Backdraftjeśli satysfakcjonowalo by Cie narazie 32 kanały to proponuje zajrzeć tu http://www.discolitez.com/pmwiki/pmwiki.php?n=Hardware.Deluxe32 a do sterowania uzyć programu z tejże strony lub lepszego Lightning. Więcej szczegółów znajdziesz na elektrodzie w innych postach. Polecam "Lightning - oświetl impreze"
Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#47 11 Sep 2007 23:51   

Re: Sterowanie portem LPT VisualBasic6 i INNE


sivex wrote:
Dostęp do pinów 1,14,16,17 portu Lpt

Te piny dostepne są po offsecie 02h. Czyli jeżeli twój adres LPT to 378 po offsecie bedzie 37A.

I tak:
bit 0 = pin1 (N)
bit 1 = pin14 (N)
bit 2 = pin16
bit 3 = pin17 (N)



pozdr.


Nio to jeszcze takie malutkie pytanko. W tym przypadku komendę wysyła się na port o adresie 37A, a przelicznik bitów jest taki sam? Tzn do uzyskania napięcia na pinie 17 trzeba wysłać na port 37A wartość 8 lub np do uzyskania napięcia na pinach 16 i 1 trzeba wysłać komendę 5?
Pozdr.
Back to top
   
aligatormp
Poziom 12
Poziom 12


Joined: 29 Jun 2007
Posts: 84
Location: katowice

Post#48 12 Sep 2007 12:04helpful post - solution   

Re: Sterowanie portem LPT VisualBasic6 i INNE


poprawnie myślisz
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#49 Post from the author of the topic 13 Sep 2007 00:05   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Nie zgadzam sie :))
Myslisz poprawnie a jednak...

I tak:
Quote:
bit 0 = pin1 (N)
bit 1 = pin14 (N)
bit 2 = pin16
bit 3 = pin17 (N)


bity 0,1,3 są zanegowane czyli stan wysoki daje w efekcie stan niski.
Ot tak sobie ktoś to wymyslil :)

pozdr.
Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#50 13 Sep 2007 00:20   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Chodzi o to że puszczenie komendy na jeden z tych pinów powoduje jego włączenie i wyłączenie pozostałych? Czy może o to, że puszczenie komendy na pin spowoduje jego wyłączenie?
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#51 Post from the author of the topic 13 Sep 2007 00:31   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Jak wyslesz "2" to ustawisz stan niski na pinie 14-tym.

Czyli 0 to:
1 na pinie1
1 na pinie 14
0 na pinie 16
1 nq pinie 17

więc żeby ustawić wszystko "wyLAczone" musisz wysłać na ten adres wartość 11.

pozdr.
Back to top
   
Backdraft
Poziom 3
Poziom 3


Joined: 04 Sep 2007
Posts: 7
Location: Miłosław

Post#52 13 Sep 2007 00:48   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Oki chyba rozumiem. Porty 1 14 i 17 są domyślnie włączone? Teraz jeszcze pytanko jak zabezpieczyć port przed ewentualnym przeciążeniem? pozdr.
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#53 Post from the author of the topic 13 Sep 2007 16:39   

Re: Sterowanie portem LPT VisualBasic6 i INNE


1. nie zasilać bezpośrednio przekaźników itp.
2. stosować układy, które w specyfikacji pobierają mniej prądu niż port wytrzyma (ile to zależne na jakim układzie jest zrobiony LPT) czyli tranzystory, układy scalone itp i dopiero dzięki nim zasilać urządzenia
3.stosować rezystory na wyjściu LPT o jak największej oporności jaka nie zakłóci pracy układów, ja najczęściej stosuje 470ohm
4.dokładnie lutować do wtyczek szczególnie przewody by przy użytkowaniu nie zrobiły zwarcia
5.doskonałym rozwiązaniem są układy optyczne, które zapewniają oddzielenie galwaniczne urządzeń od LPT (chyba dobrze się wysłowiłem) :)

...i inne łącznie z tym, żeby nie dotykać się do portu w ogóle jeżeli ktoś nie ma doświadczenia a ewentualnie zaopatrzeć się w drugą płytę główną i nie narzekać, że sie samo spaliło :)

pozdr.
Back to top
   
mare2k
Poziom 9
Poziom 9


Joined: 30 Apr 2007
Posts: 33
Location: Lublin

Post#54 07 Oct 2007 10:35   

Re: Sterowanie portem LPT VisualBasic6 i INNE


A ja mam taki problem. Czytam komendą Inp &H379 port i daje ją w textbox to mi wyświetla liczbę 9830402 ?? I nie wiem o co chodzi teraz.

Może ktoś wie jak to przerobić na poszczególne piny.

I jeszcze jedno pytanie a jak bym tylko chciał sczytywać z 10, 11, 12, 13 i 15 pinu może ktoś wie jak to zrobić.

Pozdrawiam
Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#55 Post from the author of the topic 07 Oct 2007 12:11   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Po pierwsze jaki to windows?
Po drugie sprawdz czy port lpt masz napewno na 378
Następnie sprawdz w biosie czy jest ustawiony na ECP

Chcesz zczytać te piny to własnie z 379 je zczytasz:
bit3 = 8 (pin15)
bit4 = 16 (pin13)
bit5 = 32 (pin12)
bit6 = 64 (pin10)
bit7 = 128 (pin11)_

pozdr.
Back to top
   
kazik_
Poziom 12
Poziom 12


Joined: 02 Nov 2005
Posts: 102
Location: Ostrava

Post#56 23 Oct 2007 23:41   

Re: Sterowanie portem LPT VisualBasic6 i INNE


A mam pytanie czy mógłby tutaj ktoś przedstawić jakiś krótki kod źródłowy w C++ który wysyła na poszczególne wyjścia impulsy, takich programików jest bardzo dużo, jeden lepszy od drugiego, ale ja potrzebuje kodzik super banalnie prosty do zapalenia diod z LPT i zasterowania np. Strobem (pin 1)(N), mam mnóstwo takich aplikacji, ale chce się tego nauczyć od podstaw i prosiłbym o banalny przykładzik do analizy, wiadomo, że najlepiej uczymy sie przez doświadczenia.

dzięki za zrozumienie
Back to top
   
JStan
Poziom 15
Poziom 15


Joined: 13 Feb 2006
Posts: 235
Location: Sanok

Post#57 23 Oct 2007 23:43   

Re: Sterowanie portem LPT VisualBasic6 i INNE


A ja mam pytanie czy warto do portu LPT dołączać bezpośrednio piny AVRa czy puścić je przez jakiś rezystor??
Back to top
   
Google

Google Adsense


Post# 23 Oct 2007 23:43   





Back to top
   
sivex
Poziom 19
Poziom 19


Joined: 17 Jul 2004
Posts: 702

Post#58 Post from the author of the topic 25 Oct 2007 18:46   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Wiem że nawet nie powinienem się przyznawać do tego tu na tym ale zdarza mi sie że podpinam piny lpt bezpośrednio do avr'a :)
Jednak robie to na własną odpowiedzialność za sprzęt i nikomu tego nigdy nie polecam!
rezystory 470ohm napewno nie zaszkodzą już nie mówiąc o tym żeby zastosować układ scalony.

kazik_
Nie będe powtarzał tego co już ktoś napisał :)

http://www.lpt.strona.pl/#ogolne
http://forum.4programmers.net/viewtopic.php?id=107315
Back to top
   
emper
Poziom 9
Poziom 9


Joined: 07 Jan 2005
Posts: 42
Location: Kraków

Post#59 30 Oct 2007 22:02   

Re: Sterowanie portem LPT VisualBasic6 i INNE


A czy ktoś mógłby mi jeszcze raz napisać. Ale tak na 100% jakie mają być te rezystory do diody LED? Bo w tym temacie znalazłem 1kohm, 100ohmów, a w temacie do którego dlaciście linka pisze, że 470 ohmów. Czy ktoś kto to już podłączył może mi powiedzieć ile to ma być, bo nie chce sobie spalić portu!
Back to top
   
JStan
Poziom 15
Poziom 15


Joined: 13 Feb 2006
Posts: 235
Location: Sanok

Post#60 31 Oct 2007 00:36   

Re: Sterowanie portem LPT VisualBasic6 i INNE


Rezystory dobierzesz znając parametry diód które podłączasz. Dla standardowej diody czerwonej o napięciu przewodzenia około 1,6V zakładając prąd 10mA i napięcie na porcie LPT około 5V policzysz wartość tego rezystora z wzoru R=(5-1,6)/0,010 co da jakieś 340omów. W rzeczywistości oraz od tego jakie diody wybierzesz możesz dobrać coś z szeregu wartości, jeśli więc masz zamiar użyć zwykłych ledów to wartość 470omów będzie ok, diody superjasne wymagające prądów powyżej 20-30mA już wypada sterować poprzez tranzystor(polecam układ ULN2803).

Jeśli będziesz ostrożny i solidnie to podłączysz(brak zwarć) to nic nie spalisz.

Pozdrawiam
Back to top
   
Post new topic  This topic is locked      Main Page -> Forum Index -> Programming Generally -> Sterowanie portem LPT VisualBasic6 i INNE
Page 2 of 4 Go to page Previous  1, 2, 3, 4  Next
Similar topics
[C++] Sterowanie portem LPT pod Windows 98 (14)
[Visual Basic] Sterowanie portem LPT. (1)
[c++] sterowanie portem lpt w windows 7 (7)
[Delphi] Sterowanie portem LPT. (5)
[C++][Delphi] Sterowanie portem LPT. (22)
Dwustronne sterowanie portem LPT. (5)
[PHP] Sterowanie portem LPT. (5)
c++ sterowanie portem lpt (1)
[Free Pascal] Sterowanie portem LPT. (4)
[Visual Basic] Sterowanie portem LPT. (1)

Page generation time: 0.099 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed