This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: changing the length of a tick
- From: Jonathan Larmour <jlarmour at redhat dot com>
- To: Tom Coremans <tom dot coremans at acunia dot com>
- Cc: eCos users <ecos-discuss at sources dot redhat dot com>
- Date: Wed, 27 Feb 2002 23:09:23 +0000
- Subject: Re: [ECOS] changing the length of a tick
- Organization: Red Hat UK Ltd.
- References: <3C7B9C6D.67FA8FDE@acunia.com>
Tom Coremans wrote:
>
> Hi,
>
> I`m trying to change the length of tick to 50 milli seconds with the
> following code:
>
> ________________________
> cyg_handle_t rclock;
> cyg_resolution_t res;
> cyg_uint32 nsec_per_tick = 50000000;
> res.dividend = nsec_per_tick;
> res.divisor = 1;
> rclock = cyg_real_time_clock();
> cyg_clock_set_resolution(rclock,res);
> _____________________
>
> but when I run a test this doesn`t seem to work.
> It seems there are still 100 ticks in a second, the default
> configuration.
>
> Does anybody know whats wrong with this?
The configured resolution has to reflect what the clock actually does. In
this case there is nothing that actually tells the clock hardware to do
anything other than 100 ticks per second (10000000 ns/tick). It's just that
now eCos will *think* when it got a tick that is 20 ticks per second.
Look at how the kernel uses the HAL to configure the real hardware and do
the same thing.
Jifl
--
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss