-
1. Data: 2010-05-13 14:43:14
Temat: Wysyłanie bajtu klawiaturą
Od: kropa <k...@k...pl>
Witam
Muszę zrobić oddalony przycisk do pc (kilka metrów). Napiszcie mi czy
dobrze kombinuję. Jest sobie pc z odpalonym programem, który nasłuchuje
na porcie rs232 określonego bajtu (jak go wykryje to wykona odpowiednią
czynność). Z drugiej strony jest 'wybebeszona' klawiatura na PS/2 z
pozostawionym jednym przyciskiem. W jaki sposób pożenić obie rzeczy ?
(przycisk) PS/2 to cztery linie (1-clock/2-data/4-gnd/5-vcc)
Jak podłączyć to pod RS232 komputera ?
Rozumiem że pin 2 portu PS/2 to wysyłane dane czyli odbierane RxD pc'ta,
natomiast do czego służy pin 1 clock ? I co trzeba zewrzeć do masy po
stronie PC aby transmisja była możliwa, DTR ?
Pozdrawiam
Bartek
-
2. Data: 2010-05-13 15:18:36
Temat: Re: Wysyłanie bajtu klawiaturą
Od: Konop <k...@g...pl>
> Muszę zrobić oddalony przycisk do pc (kilka metrów). Napiszcie mi czy
> dobrze kombinuję. Jest sobie pc z odpalonym programem, który nasłuchuje
> na porcie rs232 określonego bajtu (jak go wykryje to wykona odpowiednią
> czynność). Z drugiej strony jest 'wybebeszona' klawiatura na PS/2 z
> pozostawionym jednym przyciskiem. W jaki sposób pożenić obie rzeczy ?
> (przycisk) PS/2 to cztery linie (1-clock/2-data/4-gnd/5-vcc)
> Jak podłączyć to pod RS232 komputera ?
> Rozumiem że pin 2 portu PS/2 to wysyłane dane czyli odbierane RxD pc'ta,
> natomiast do czego służy pin 1 clock ? I co trzeba zewrzeć do masy po
> stronie PC aby transmisja była możliwa, DTR ?
Nie da się... To jest zupełnie inny standard transmisji i nie da się
tego w prosty sposób pożenić... Jasne, można zbudować prościutki układ,
ale to bez sensu - jeśli faktycznie chcesz mieć jeden przycisk, to
łatwiej to zrobić tak, że masz jeden przycisk i od razu RS232 :).. Tak
czy siak - nie zrobisz tego w prosty sposób...
Transmisja w PS/2 jest synchroniczna (jest sygnał CLK, który taktuje
dane), a w RS232 jest asynchroniczna (szybkość transmisji jest z góry
ustalona i nie jest synchronizowana). To tak w skrócie...
Napisz co to jest, co potrzebujesz po tym RSie wysłać i na co masz wpływ
:)... Może łatwiej będzie zaadoptować starą mysz na COMa??
--
Pozdrawiam
Konop
-
3. Data: 2010-05-13 15:20:35
Temat: Re: Wysyłanie bajtu klawiaturą
Od: Artur Stachura <m...@w...pl>
On Thu, 13 May 2010 16:43:14 +0200, kropa <k...@k...pl> wrote:
> Witam
>
> Muszę zrobić oddalony przycisk do pc (kilka metrów). Napiszcie mi czy
> dobrze kombinuję. Jest sobie pc z odpalonym programem, który nasłuchuje
> na porcie rs232 określonego bajtu (jak go wykryje to wykona odpowiednią
> czynność). Z drugiej strony jest 'wybebeszona' klawiatura na PS/2 z
> pozostawionym jednym przyciskiem. W jaki sposób pożenić obie rzeczy ?
Trochę obok tematu:
Jeśli to tylko jeden przycisk, to właściwie wysyłasz 1 bit a nie
bajt... Czy w takim razie nie prościej byłoby podłączyć na dwu
przewodach byle jaki przycisk (ew. z jakimś układem
przeciwzakłóceniowym) i sprawdzać stan np. DTR na złączu RS-232 albo
"paper out" na centroniksie, albo nawet przycisk "fire" joysticka?
Chyba, że program już gotowy i nie da się zmienić...
Pozdrawiam,
--
Artur Stachura
-
4. Data: 2010-05-13 15:36:55
Temat: Re: Wysyłanie bajtu klawiaturą
Od: kropa <k...@k...pl>
> Nie da się... To jest zupełnie inny standard transmisji i nie da się
> tego w prosty sposób pożenić...
Zakładałem że to nie będzie takie proste :)
> ... jeśli faktycznie chcesz mieć jeden przycisk, to
> łatwiej to zrobić tak, że masz jeden przycisk i od razu RS232 :).. Tak
> czy siak - nie zrobisz tego w prosty sposób...
Jak zrobić ten jeden przycisk ? Wiem że jest możliwość zaprogramowania
zwykłego avr i po kłopocie, ja szukam jak najprostrzego (i najlepiej
gotowego) rozwiązania. Chodzi mi o coś takiego:
http://www.automex.pl/prod/amx101/amx101.php
lub takiego, najlepiej w kompletnego a nie samego pcb:
http://www.sklep.avt.com.pl/p/pl/2751/klawiatura+z+r
s232+16-stykowa+-+plytka+drukowana.html
Ale w prostszej formie - tylko z jednym przyciskiem.
> Transmisja w PS/2 jest synchroniczna (jest sygnał CLK, który taktuje
> dane), a w RS232 jest asynchroniczna (szybkość transmisji jest z góry
> ustalona i nie jest synchronizowana). To tak w skrócie...
> Napisz co to jest, co potrzebujesz po tym RSie wysłać i na co masz wpływ
> :)... Może łatwiej będzie zaadoptować starą mysz na COMa??
Buduję mały system parkingowy, wszystko już mam mniej więcej przemyślane
(oprogramowanie, drukowanie kwitku, stempla czasu w kodzie kreskowym na
nim, czytnik) brakuje tylko tego przycisku, koniecznie musi być na rs232.
Potrzebuje wysłać po RSie dowolny znak, ważne żeby to był znak a nie
stan lini np. DTR/RTS, szybkość i ustawienia transmisji nie graja roli.
Pozdrawiam
Bartek
-
5. Data: 2010-05-13 15:49:39
Temat: Re: Wysyłanie bajtuklawiaturą
Od: kropa <k...@k...pl>
> Jeśli to tylko jeden przycisk, to właściwie wysyłasz 1 bit a nie
> bajt... Czy w takim razie nie prościej byłoby podłączyć na dwu
> przewodach byle jaki przycisk (ew. z jakimś układem
> przeciwzakłóceniowym) i sprawdzać stan np. DTR na złączu RS-232 albo
> "paper out" na centroniksie, albo nawet przycisk "fire" joysticka?
> Chyba, że program już gotowy i nie da się zmienić...
Dziękuję za odpowiedz. Sprawa ma się tak że mogę się komunikować z
komputerem tylko za pośrednictwem rs232 (odpada game port, usb,
ethernet, centronics) Do dyspozycji mam serwer 4D i polecenie RECEIVE
BUFFER.
Dokładny opis komendy tutaj:
http://www.4d.com/4ddoc2004/CMU/CMU00172.HTM
Nie pytaj dlaczego 4D... po prostu to wymóg. Tym poleceniem mogę odebrać
sobie dane (ten jeden bajt) z portu com z dowolnym ustawieniem
transmisji. Faktycznie łatwiej by było badać stan linii (przetestowałem
i działa), ale w takim wypadku program będzie musiał sprawdzać co jakiś
czas jej stan - często), a tego chce uniknąć. Natomiast odbierając bajt,
mam o wiele lepszą sytuację gdyż mogę 'nasłuchiwać w tle' odbierane dane
nie angażując za bardzo zasobów komputera.
Pozdrawiam
Bartek
-
6. Data: 2010-05-13 15:50:06
Temat: Re: Wysyłanie bajtu klawiaturą
Od: "entroper" <entroper-pocztaonetpeel>
Użytkownik "kropa" <k...@k...pl> napisał w wiadomości
news:4bec1c97$1@news.home.net.pl...
> Potrzebuje wysłać po RSie dowolny znak,
Pojedynczy impuls +12V o ściśle określonej długości spełnia Twoje
wymagania - będzie to pojedynczy znak (np. 0xFF). Potrzebujesz przerzutnik
monostabilny lub każde inne urządzenie, które działa w ten sposób i da się
wyzwalać przyciskiem. Prostsze od małego procka to nie będzie.
e.
-
7. Data: 2010-05-13 16:35:47
Temat: Re: Wysyłanie bajtuklawiaturą
Od: Zbych <a...@o...pl>
kropa pisze:
> http://www.4d.com/4ddoc2004/CMU/CMU00172.HTM
> Nie pytaj dlaczego 4D... po prostu to wymóg. Tym poleceniem mogę odebrać
> sobie dane (ten jeden bajt) z portu com z dowolnym ustawieniem
> transmisji. Faktycznie łatwiej by było badać stan linii (przetestowałem
> i działa), ale w takim wypadku program będzie musiał sprawdzać co jakiś
> czas jej stan - często), a tego chce uniknąć. Natomiast odbierając bajt,
> mam o wiele lepszą sytuację gdyż mogę 'nasłuchiwać w tle' odbierane dane
> nie angażując za bardzo zasobów komputera.
Najlepiej byłoby zatrudnić do tej roboty jakiś mikrokontroler, ale
możesz spróbować zrobić taką partyzantkę:
10uF ___
RXD ------------||-----+----o o----+
+ | |
| |
| | |
| | 10k |
| | |
| |
| |
GND -------------------+ |
|
DTR -------------------------------+
Żeby całość działała na linii DTR musisz mieć ustawiony stan wysoki.
Po naciśnięciu przycisku odbierzesz od jednego do kilku bajtów (w
zależności jak komu ręka zadrga przy naciskaniu). Prędkość transmisji
musisz dobrać eksperymentalnie, zaczynając od 300bps.
Wersja prostsza to linie TXD i RXD połączone przez przycisk. Jak
będziesz nadawał dane i przycisk będzie naciśnięty to zaczniesz je odbierać.
___
RXD --------------o o----+
|
|
TXD ---------------------+
-
8. Data: 2010-05-13 17:59:21
Temat: Re: Wysyłanie bajtu klawiaturą
Od: Konop <k...@g...pl>
> Jak zrobić ten jeden przycisk ? Wiem że jest możliwość zaprogramowania
> zwykłego avr i po kłopocie, ja szukam jak najprostrzego (i najlepiej
> gotowego) rozwiązania. Chodzi mi o coś takiego:
> http://www.automex.pl/prod/amx101/amx101.php
> lub takiego, najlepiej w kompletnego a nie samego pcb:
> http://www.sklep.avt.com.pl/p/pl/2751/klawiatura+z+r
s232+16-stykowa+-+plytka+drukowana.html
> Ale w prostszej formie - tylko z jednym przyciskiem.
No to nie wiem, czy coś takiego dostaniesz... JA bym to zrobił na AVRze,
ale może w tej sytuacji lepiej nie...
Masz tu wiele pomysłów kolegów, przyznam, że bardzo fajne wszystkie. Mi
się w szczególności podoba sposób ze zwarciem RXD i TXD przez przycisk,
który to zaproponował Zbych. Pod jego wątkiem napisałem więcej.... A
cały problem jest taki - czy te kilka metrów wiszącego z drugiej strony
przewodu nie zadziała jak antena? W sumie wyindukować te +/-12 to nie
tak łatwo, dopuszczalna odległość RS232 jest spora, no ale w przypadku
właściwego NADAJNIKA! A tu kabel będzie wisieć :/..
> Buduję mały system parkingowy, wszystko już mam mniej więcej przemyślane
> (oprogramowanie, drukowanie kwitku, stempla czasu w kodzie kreskowym na
> nim, czytnik) brakuje tylko tego przycisku, koniecznie musi być na rs232.
Ma to działać w praktyce, czy jest to jakiś projekt na uczelni/w szkole?
> Potrzebuje wysłać po RSie dowolny znak, ważne żeby to był znak a nie
> stan lini np. DTR/RTS, szybkość i ustawienia transmisji nie graja roli.
Niech komp sam go wyśle - tak będzie najlepiej :)
--
Pozdrawiam
Konop
-
9. Data: 2010-05-13 18:01:36
Temat: Re: Wysyłanie bajtuklawiaturą
Od: "entroper" <entroper-pocztaonetpeel>
Użytkownik "Zbych" <a...@o...pl> napisał w wiadomości
news:hsh9t6$iem$1@news.mm.pl...
> Po naciśnięciu przycisku odbierzesz od jednego do kilku bajtów
pytanie, czy framing error nie przeszkodzi w ich odbiorze
e.
-
10. Data: 2010-05-13 18:04:15
Temat: Re: Wysyłanie bajtuklawiaturą
Od: Konop <k...@g...pl>
> Wersja prostsza to linie TXD i RXD połączone przez przycisk. Jak
> będziesz nadawał dane i przycisk będzie naciśnięty to zaczniesz je
> odbierać.
> ___
> RXD --------------o o----+
> |
> |
> TXD ---------------------+
To jest najlepsze rozwiązanie - proste, a genialne... wystarczy co
chwilę coś wysyłać (tak 10..20x na sekundę) i badać, czy przyszło.
Dodatkowo, jeśli przyszło, można wysłać dłuższą sekwencję, na przykład
losową i też zweryfikować, czy przyszła poprawna. W ten sposób system
stanie się odporny na zakłócenia. I jest dosyć prosty w budowie ;)...
--
Pozdrawiam
Konop