Ovládání KM z LPT PC

SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 5:37

Poradíte někdo, jak se domlouvat s KM přes LPT PC? Mám KM i drivery i zdroj i oddělovací desku, všechno mně pod MACHem chodí, ale rád bych KM ovládal přímo, např. Visual Basicem (tam umím něco napsat) nebo nějak podobně. Samozřejmě, že na CNC to nevyužiju, ale rád bech nějaké hejblátko, řekněme robotka, na hraní uvedl do provozu. Zkušel jsem to podle knihy Využítí PC ... od Kainka, ale nějak se mně to s LPT nechce domluvi. Dík.
SladekRadek
PavelZ
Příspěvky: 356
Registrován: 10. 3. 2008, 11:48
Bydliště: Praha

3. 2. 2009, 5:53

Co máš za systém (operační) .... dle názvu Visual Basic soudím, že něco od Billa Gatese. Pokud máš OS vyšší než Win98, tak přímý přístup na port nejde a musí se to obejít. Už se to tu řešilo několikrát a nejlepší bude zagooglit, najdeš tam toho spoustu (nejčastěji se používá knihovna Inpout32.dll ... najdeš na netu i její použití ve VB).
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 6:14

Díky moc! Zkusím pohledat. A ještě prosba: Mám Win XP, mám je vyhodit a jít raději do DOSu?
SladekRadek
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 6:17

Našel jsem tohle: http://hw.cz/lpt Zdá se, že to bude ono. dík.
SladekRadek
PavelZ
Příspěvky: 356
Registrován: 10. 3. 2008, 11:48
Bydliště: Praha

3. 2. 2009, 7:08

Jasně, to je ono. Jít do DOSu nebo zůstat u XP ? Toť otázka. Já jsem si na ni odpověděl Linux :lol:
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 10:19

Tak jsem si stáhnul inpout32.dll. Funguje to. Ale stále nevím, jak mám ve VB poslat signál např. na D0, tzn. na PIN 2. Vypadá to takto:

Private Sub Command1_Click()
Out &H378, 0

Ale to číslo za čárkou není č. PINu, to je asi trochu něco jiného. Hledal jsem všude možně na netu a nic, oni by furt jen ten datový výstup...Jak mám ale rozsvítit ledku na PINu č. 2, to nikde nepíší. Poradíte prosím?
SladekRadek
Svoby
Příspěvky: 267
Registrován: 25. 1. 2008, 2:42
Bydliště: Lysa nad Labem
Kontaktovat uživatele:

3. 2. 2009, 10:44

To cislo je binarni obraz portu. Tzn 0 bude Log.0 na Pin 0 az 7 , 255 zas budou sami jednicky. Pro prevod pouzij kalkulacku ve woknech.
Kdo nic nedela ,nic nesku...
Svoby
Příspěvky: 267
Registrován: 25. 1. 2008, 2:42
Bydliště: Lysa nad Labem
Kontaktovat uživatele:

3. 2. 2009, 10:50

Ja sice VB neznam ale pro zapis nejspis muzes pouzit primo binarni hodnotu. Asi tak nejak :
Out &H378, b'00000100'
to ti hodi log 1 na Pin 2
Kdo nic nedela ,nic nesku...
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 11:29

Děkuju moc, ráno to zkusím. Na něco jsme přišel:
Out &H378, X PIN č.
1 1
2 2
4 3
8 4
16 5
32 6
64 7
128 8
Jen ještě nevím, jak poslat signál na PIN 17, tam mám připojen ENABLE, ale to asi můžu dát jinam, ne? třeba na 8.
SladekRadek
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

3. 2. 2009, 11:40

Tak mně to nedalo, ještě jsem zkusil tvoje Out &H378, b'00000100' , ale nefunguje, syntax error. A už jdu fakt spát, je 01.26, hrozné.
SladekRadek
Svoby
Příspěvky: 267
Registrován: 25. 1. 2008, 2:42
Bydliště: Lysa nad Labem
Kontaktovat uživatele:

4. 2. 2009, 6:15

To sem jen tak skusil. Prekladac VB bude holt vyzaduje jinej zapis binarni hodnoty. Pro zapis jinam nez na data piny portu budes muset pouzit jinou adresu treba &H379 ,ale to si radsi prostuduj nejakou dokumentaci.Taky asi zalezi v jakym modu provozujes port. Ja sem naposled delal tyhle pokusi jeste v dosu,kdyz sem si postavil plotr z merkuru :D a dokonce i fungoval.
Kdo nic nedela ,nic nesku...
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

4. 2. 2009, 7:06

SLADEKRADEK píše:Tak mně to nedalo, ještě jsem zkusil tvoje Out &H378, b'00000100' , ale nefunguje, syntax error. A už jdu fakt spát, je 01.26, hrozné.
Basic nezna tohle b'00000100'. Napis Out &H378, 4 To je ten tvuj treti bit ;) Ostatni piny portu (STATUS se cte, CONTROL pro zapis) jsou na dalsich adresach.
Programovani LPT s Basicem treba zde:
http://www.electroweb.wz.cz/jaknalpt.html
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

4. 2. 2009, 5:52

Děkuju, funguje to. Takhle "out &H378, 1" (a dále 2,4,8,16,32,64,128) to opravdu funguje, nahodím příslušnou LEDku. Ale jak mám nahodit LEDku na PINu č. 17? Jde to?
SladekRadek
petr213
Příspěvky: 122
Registrován: 7. 3. 2008, 8:57
Bydliště: Uherský Brod

4. 2. 2009, 6:35

Zdar,
pin č.17 je bit 3 na adrese H37A. Tady máš celý LPT.
Pin adresa bit
1 _ 37A _ 0
2-9 _ 378 _ 0-7
10 _ 379 _ 6 inv
11 _ 379 _ 7 inv
12 _ 379 _ 5
13 _ 379 _ 4
14 _ 37A _ 1
15 _ 379 _ 3 inv
16 _ 37A _ 2 inv
17 _ 37A _ 3
piny s inv jsou harderově invertovány. Port s adresou 379 je vstupní.
SLADEKRADEK
Příspěvky: 34
Registrován: 21. 12. 2008, 7:17
Bydliště: Bzenec
Kontaktovat uživatele:

4. 2. 2009, 7:47

Děkuju, už jsem to objevil před hodinou zkoušením, proč to kurva nikdo nikde nenapíše pro blbce, jako jsem já? 2 dny v prdeli. Ještě jednou dík, dojeď na pivo.
SladekRadek
Odpovědět

Zpět na „Krokové motory“