Idozites Win/VB6.0 alatt
tiszaii
tiszaii at axelero.hu
Sat Jan 10 07:58:31 CET 2004
QueryPerformanceCounter(...)
QueryPerformanceFrequency(...)
ms és talán us-es tartományban is hatásos fg.-nyek (megfelelő prioritású
threadben), nekem van egy delay(..) fg-em amely ms-re működik, de az
c++-ben van.
Párhuzamos portot használnék, ehhez van egy közvetlen elérést
biztositó driver és lib. a neve Dlportio, de CBuilders és Deplhis.
a fg-em ms-re, de szerintem us-re is jó lehet, ha átirod:
"void delay(double millsec)
{
static LARGE_INTEGER _tstart, _tend;
double data=0;
static LARGE_INTEGER fre;
int k;
static int first = 1;
millsec/=1000;
while (true)
{
if(first)
{
QueryPerformanceFrequency(&fre);
first = 0;
}
QueryPerformanceCounter(&_tstart);
for(k=0;k<10;k++);
QueryPerformanceCounter(&_tend);
if (millsec < data)
return;
data+=((double)_tend.QuadPart -
(double)_tstart.QuadPart)/(double)fre.QuadPart;
}
}"
--
Tiszai Istvan
http://tiszaii.fw.hu
More information about the Elektro
mailing list