Re: [avr-gcc-list] Should this code work? 4.1.1

2007-03-05 Thread Bob Paddock
On Sunday 04 March 2007 14:21, Gavin Jackson wrote: Another thing you may want to take a look at is the SPIF flag on page 174 of the datasheet. It states that: From what the datasheet says, your SPIF bit is never cleared so you'll be overwriting the SPI data register contents before they've

Re: [avr-gcc-list] Should this code work? 4.1.1

2007-03-05 Thread Dave Hansen
From: Graham Davies [EMAIL PROTECTED] Bob Paddock wrote: [...] I don't see while(true){} being any different than for(;;){} in this context, and while(true){} causes the Lint error of evaluation of constant value boolean. [...] I can't see why Lint would consider this an error and for ( ; ;

Re: [avr-gcc-list] Should this code work? 4.1.1

2007-03-03 Thread Bob Paddock
On Friday 02 March 2007 21:29, Graham Davies wrote: Bob Paddock wrote: for(;;){} is a endless loop, how is until execution of that block ends in any way. being fulfilled here? The block begins with the open brace and ends with the close brace. The block ends when control falls out of

RE: [avr-gcc-list] Should this code work? 4.1.1

2007-03-02 Thread James L. Evans
Shouldn't the declaration of shift be OUTSIDE the for block (or in the for expression). Otherwize, shift is always 1 and the if (0 == shift) can be optimized away. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Bob Paddock Sent: Friday, March 02, 2007

Re: [avr-gcc-list] Should this code work? 4.1.1

2007-03-02 Thread Bob Paddock
On Friday 02 March 2007 18:42, Francesco Sacchi wrote: Bob Paddock ha scritto: you see that the last rjmp is jumping to the point where shift is reinitialized with '1' (r18/r19). Moving 'uint16_t shift = 1;' out of the for(;;){} and into the top of main(){} makes the code work ok.

Re: [avr-gcc-list] Should this code work? 4.1.1

2007-03-02 Thread Graham Davies
Bob Paddock wrote: for(;;){} is a endless loop, how is until execution of that block ends in any way. being fulfilled here? The block begins with the open brace and ends with the close brace. The block ends when control falls out of the bottom and for ( ; ; ) takes over for the next