On Wed, Mar 04, 2009 at 04:37:22PM -0500, David VanHorn wrote:
> >
> > F_CPU is always evaluated upon each invocation, so if you ever
> > change it within one compilation unit, the next invocation of one of
> > these macros will reflect this.
> >
> That's compile-time, he's looking for execution-time changes in
> processor speed.
> He didn't explicitly say so, but I think he's using xdiv to scale the
> CPU clock.

But doesn't say clock is infinitely variable. Most likely there are two
frequencies he's running but this is expandable:

        if( frequency == LOW_KHZ ) {
#define SAVED_F_CPU F_CPU
#undef F_CPU
#define F_CPU LOW_KHZ
                _delay_us(us);
#undef F_CPU
#define F_CPU SAVED_F_CPU
#undef SAVED_F_CPU
        } else {
                do_delay(us);
        }

-- 
David Kelly N4HHE, dke...@hiwaay.net
========================================================================
Whom computers would destroy, they must first drive mad.


_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to