I noticed that the _BV(n) macro is not working. My main procedure has a couple of peripheral register init statements.
void Main ()
{
uint8_t temp;
temp = ( _BV(PA7) | _BV(PA6) );
DDRA = temp;
DDRB = _BV(PB2);
}
The disassembly of the build shows the assignment of a value to temp is ignored by the compiler. Putting a volatile keyword in the definition assembles the line, but temp gets assigned value of 0.
The DDRB = _BV(PB2) compiles OK. The assembly shows 0x04 being loaded.
I use #include
Is there something that I'm not doing to get the AVRLIBc loaded and running?