| Author |
Message
|
adi Poziom 7

Joined: 03 Aug 2006 Posts: 23 Location: wrocław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#32
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

Joined: 03 Aug 2006 Posts: 23 Location: wrocław
|
#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

Joined: 29 Jun 2007 Posts: 84 Location: katowice
|
#34
20 Jul 2007 13:07 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
| Description: |
|
 Download |
| Filename: |
testport.exe |
| Contents: |
|
| Filesize: |
6 KB |
| Punkty: |
0.00 |
|
|
| Back to top |
|
 |
adi Poziom 7

Joined: 03 Aug 2006 Posts: 23 Location: wrocław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#36
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

Joined: 03 Aug 2006 Posts: 23 Location: wrocław
|
#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"
| Description: |
|
 Download |
| Filename: |
ustaw.txt |
| Contents: |
|
| Filesize: |
30.94 KB |
| Punkty: |
0.00 |
|
|
| Back to top |
|
 |
Backdraft Poziom 3

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#39
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

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#40
07 Sep 2007 15:36 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

|
#
07 Sep 2007 15:36 |
|
|
|
|
|
| Back to top |
|
 |
sivex Poziom 19

Joined: 17 Jul 2004 Posts: 702
|
#41
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

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 13 Feb 2006 Posts: 235 Location: Sanok
|
#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

|
#
10 Sep 2007 23:58 |
|
|
|
|
|
| Back to top |
|
 |
Backdraft Poziom 3

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#45
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

Joined: 13 Feb 2006 Posts: 235 Location: Sanok
|
#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

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 29 Jun 2007 Posts: 84 Location: katowice
|
#48
12 Sep 2007 12:04 Re: Sterowanie portem LPT VisualBasic6 i INNE |
|
|
|
poprawnie myślisz
|
|
| Back to top |
|
 |
sivex Poziom 19

Joined: 17 Jul 2004 Posts: 702
|
#49
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

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#51
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

Joined: 04 Sep 2007 Posts: 7 Location: Miłosław
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#53
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

Joined: 30 Apr 2007 Posts: 33 Location: Lublin
|
#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

Joined: 17 Jul 2004 Posts: 702
|
#55
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

Joined: 02 Nov 2005 Posts: 102 Location: Ostrava
|
#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

Joined: 13 Feb 2006 Posts: 235 Location: Sanok
|
#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

|
#
23 Oct 2007 23:43 |
|
|
|
|
|
| Back to top |
|
 |
sivex Poziom 19

Joined: 17 Jul 2004 Posts: 702
|
#58
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

Joined: 07 Jan 2005 Posts: 42 Location: Kraków
|
#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

Joined: 13 Feb 2006 Posts: 235 Location: Sanok
|
#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 |
|
 |