Konfiguracja portu COM
Masz problem? Zapytaj na forum elektroda.pl
From: "Planet" <planettt_at_nospam_wp.pl>
Subject: Konfiguracja portu COM
Date: Thu, 10 Jan 2002 20:20:55 +0100
Czy i jak mozna zainicjalizowac transmisje z urzadzeniem poprzez port RS232
z predkoscia 5 bps?
From: "Marek Lewandowski" <locust_at_nospam_poczta.onet.pl>
Subject: Re: Konfiguracja portu COM
Date: Fri, 11 Jan 2002 00:37:15 +0100
Użytkownik "Planet" <planettt_at_nospam_wp.pl> napisał w wiadomości
news:a1kpit$da6$1_at_nospam_news.tpi.pl...
Czy i jak mozna zainicjalizowac transmisje z urzadzeniem poprzez port
RS232
z predkoscia 5 bps?
Lutownicą, wymieniając kwarc przy UARTcie . Ale nie wiem, czy na tak powolną
prędkość da się całość w ogóle ustawić.
--
Marek Lewandowski
locust_at_nospam_poczta.onet.pl ICQ10139051
http://locust.republika.pl
From: Waldemar Krzok <waldemar_at_nospam_zedat.fu-berlin.de>
Subject: Re: Konfiguracja portu COM
Date: Fri, 11 Jan 2002 12:49:51 +0100
Czy i jak mozna zainicjalizowac transmisje z urzadzeniem poprzez port
RS232
z predkoscia 5 bps?
Lutownicą, wymieniając kwarc przy UARTcie . Ale nie wiem, czy na tak powolną
prędkość da się całość w ogóle ustawić.
toż kluczem telegraficznym szybciej idzie. Możesz protokół zrobić
piechty na LPT ;-))
A wymieniając kwarc powinno się udać. Najniższa szybkość dla 8250 w
oryginalnym układzie to chyba 75bps, czyli popróbować z kwarcem / 15.
Waldek
From: "Planet" <planettt_at_nospam_wp.pl>
Subject: Re: Konfiguracja portu COM
Date: Sat, 12 Jan 2002 13:19:38 +0100
A wiec moze do konca nie ma pewnosci czy jest to dokladnie 5bps, bo to bylo
napisane w opisie, ktory nie jest w 100% wiarygodny, ale jest dzialajacy
program i trzeba by bylo dokladnie sprawdzic co on wysyla przez port COM.
Wedlug mie najprostrzym sposobem bylo odpowiednie polaczenie portu com z lpt
i przesledzenie transmisji.
Jak sugeruje kolega Marek Lewandowski program moze nie korzystac z UART lecz
bezposrednio sterowac pinami portu.
To jak to sie dzieje jest prawie nie wazne bo mozna dodatkowo wykorzystac
inne sygnaly portu com i samemu zrobic protokol transmisji podobnie jak
proponuje kolega Waldemar Krzok.
Wiec teraz chyba najwazniejsze bedzie jak sprawdzic co wysyla na COM program
ktory jakos sobie z tym radzi.
Marek Lewandowski twierdzi, ze pod WINDOWSEM praktycznie nie mam szans
zrobic czegokolwiek zrobic w czasie rzeczywistym ? Wiec jak dzialaja
programy sprawdzajace sygnature kart CW....
Wydaje mi sie, ze wystarczy ustawic odpowiedni priorytet aplikacji po to aby
pomiaru czasu nie zaklucaly nam inne aplikacje np:
var ProcessID : DWORD;
ProcessHandle : THandle;
ThreadHandle : THandle;
ProcessID := GetCurrentProcessID;
ProcessHandle := OpenProcess($200,false, ProcessID);
SetPriorityClass(ProcessHandle, REALTIME_PRIORITY_CLASS);
ThreadHandle := GetCurrentThread;
SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);
a wtedy mierzyc czas i to nawet dokladniej niz w ms np:
{$R *.DFM}
function RDTSC: comp;
var
TimeStamp: record
case byte of
1: (Whole: comp);
2: (Lo, Hi: LongInt);
end;
begin
asm
db $0F; db $31; {BASM doesn't support RDTSC}
{Pentium RDTSC - Read Time Stamp Counter - instruction}
{$ifdef Cpu386}
mov [TimeStamp.Lo],eax // the low dword
mov [TimeStamp.Hi],edx // the high dword
{$else}
db D32
mov word ptr TimeStamp.Lo,AX
{mov [TimeStamp.Lo],eax - the low dword}
db D32
mov word ptr TimeStamp.Hi,DX
{mov [TimeStamp.Hi],edx - the high dword}
{$endif}
end;
Result := TimeStamp.Whole;
end;
I czy nie otrzymam oczekiwanych wynikow ?
Tylko problem moze byc, ze nie posiadam 2 komputerow i chce to zrobic tak,
ze 2 programy dzialaja w tle pod windows. Przy priorytecie aplikacji
REAL_TIME_CRITICAL moze mi nie wysylac poprawnie danych na com poprzednia
aplikacja a ponoc moga byc wazne czasy "delay" pomiedzy wyslaniem kolejnych
bajtow.
Nie mam az takiego doswiadczenia wiec wszelkie uwagi beda mile widziane, bo
metoda prob i bledow mozna to robic dlugo dlugo, a na to chyba nikt nie ma
czasu....
Pozdrowienia ..........
From: "Serial transmit" <serialtransmit_at_nospam_poczta.onet.pl>
Subject: Re: Konfiguracja portu COM
Date: Fri, 11 Jan 2002 22:01:12 +0100
--
Transmisja łączami szeregowymi RS-232, RS-485. światłowodami, modemami.
http://serialtransmit.republika.pl
"Planet" <planettt_at_nospam_wp.pl> wrote in message news:a1kpit$da6$1_at_nospam_news.tpi.pl...
> Czy i jak mozna zainicjalizowac transmisje z urzadzeniem poprzez port
RS232
> z predkoscia 5 bps?
>
>
>