From: Chris Burrows on
"Rowan Sylvester-Bradley" <rowan(a)sylvester-bradley.org> wrote in message
news:Qr%Tn.64576$h57.30490(a)newsfe22.iad...
> Thanks for all the helpful replies. I'm coming to the following
> conclusions:
> - Windows can't do what I want, or at least not without a huge amount of
> work trying to get the most accurate timestamps possible, and even then it
> would be only barely good enough.

If accurate timestamps were your only concern on Windows that should not be
a problem. On modern PCs it is fairly easy to implement a high resolution
timer with approximately microsecond resolution using the
QueryPerformanceCounter / QueryPerformanceFrequency Windows API functions.

Regards,
Chris Burrows
CFB Software
http://www.cfbsoftware.com


From: Andrew Jackson on
>> - Windows can't do what I want, or at least not without a huge amount of
>> work trying to get the most accurate timestamps possible, and even then it
>> would be only barely good enough.
>
> If accurate timestamps were your only concern on Windows that should not be
> a problem. On modern PCs it is fairly easy to implement a high resolution
> timer with approximately microsecond resolution using the
> QueryPerformanceCounter / QueryPerformanceFrequency Windows API functions.

That's not entirely true if you are using a multi-core CPU. You will
need to lock the time-stamping thread to one particular core otherwise
you may get differences between the time-stamps. This is because
Windows doesn't synchronise the timestamp values between cores.

You can also use the multimedia API (timeGetTime & friends) to get
millisecond accuracy but you must then ensure that the thread says that
it wants this sort of resolution with timeBeginPeriod. I've found
though, that some machines only timestamp to 2ms even though 1ms has
specified.

Andrew
From: Grant Edwards on
On 2010-06-22, Rowan Sylvester-Bradley <rowan(a)sylvester-bradley.org> wrote:

> One other thing I learned - the Saleae logic analyser looks a really
> interesting device for a very good price - I think I may get one of
> those...

It does look like an excellent deal. I was especially impressed that
they plan to support Linux. It would be nice if it worked with lower
voltages (some projects I've worked with ran at <2V), but that might
be a bit too much to expect for the price.

--
Grant Edwards grant.b.edwards Yow! HELLO, everybody,
at I'm a HUMAN!!
gmail.com
From: Boudewijn Dijkstra on
Op Tue, 22 Jun 2010 13:09:52 +0200 schreef Tauno Voipio
<tauno.voipio(a)notused.fi.invalid>:
> On 22.6.10 1:35 , Peter Greuter wrote:
>> Le Tue, 22 Jun 2010 10:33:29 +0100, "Rowan Sylvester-Bradley"
>> <rowan(a)sylvester-bradley.org> a �crit :
>>
>> ....
>>
>>> - The standard ISA or motherboard serial port can't do 62,500 baud.
>>
>> I am surprised that nobody reacted to this statement : as always it
>> depends a lot on the programs involved ! But for instance under
>> MS-DOS it is possible to reprogram the baudrate divider of a
>> typical 16X50 UART by sending just two bytes to two output port
>> registers after the initialisation sequence to get more than the
>> standard baudrates. The {COMMO} communication program by Fred P.
>> Brucker included this possibility in the later version in the setup
>> part.
>
>
> Forget the PC.
>
> 62500 bit/s needs a raw clock of 1.000 MHz, which is not available
> by any integer divider from 18.432 MHz

Dividing by 18 yields 1.024 which is only 2.4% off.

> (even less from the old
> 1.8432 MHz crystal).
>
> MS-DOS in no solution, either. It uses BIOS for I/O, and the BIOS
> contains so long interrupt disables that the required timing
> resolution is not reliably available.
>


--
Gemaakt met Opera's revolutionaire e-mailprogramma:
http://www.opera.com/mail/
(remove the obvious prefix to reply by mail)
From: Grant Edwards on
On 2010-06-22, Peter Greuter <spam1.greuter(a)free.fr> wrote:
> Hello
>
> Le Tue, 22 Jun 2010 10:33:29 +0100, "Rowan Sylvester-Bradley"
><rowan(a)sylvester-bradley.org> a ?crit :
>
> ....
>
>> - The standard ISA or motherboard serial port can't do 62,500 baud.
>
> I am surprised that nobody reacted to this statement : as always it
> depends a lot on the programs involved !

No, it dosn't.

> But for instance under MS-DOS it is possible to reprogram the
> baudrate divider of a typical 16X50 UART by sending just two bytes to
> two output port registers after the initialisation sequence to get
> more than the standard baudrates.

Except there _is_ no divisor that will give you 62500. The clock
input to a PC UART is 1.8432 MHz. The baud clock needs to be 16x the
baud rate.

Divisor Baud

1 115200
2 57600
3 38400
4 28800
... ...

Please explain how you write a divisor value of 1.8432 to the divisor
register.

--
Grant Edwards grant.b.edwards Yow! Make me look like
at LINDA RONSTADT again!!
gmail.com