Gast
#366738
Moin zusammen.
Ich bin gerade dabei, meine ersten Versuche mit WinAVR / avr-gcc zu
machen
und scheitere an einem grundlegenden (Verständnis?-) Problem:
Der Compiler kann PORTA (und DDRA, PINA) nicht finden.
Ein Minimalbeispiel wie
#include <avr/io.h>
int main(void)
{
DDRA = 0xff;
}
scheitert mit einem Compilerfehler in der Art:
...
main.c:5: error: `DDRA' undeclared (first use in this function)
...
(Im makefile ist MCU=atmega8 definiert.)
Dass es so nicht gehen KANN ist klar, denn in avr/iom8.h fehlen die
entsprechenden #defines (die anderen Ports sind jedoch da).
Aber ich versteh nicht, WARUM das so ist bzw. so sein muss.
Ist Port A (beim Mega8) irgendwie tabu?
Muss ich noch irgendwas includen oder irgendein Flag setzen?
Und warum scheint das bei allen anderen kein Problem zu sein...?
(Die Beispiele im AVR-GCC-Tutorial funktionieren so jedenfalls
nicht.)
In den includes anderer Controller ist Port A ganz normal mit drin.
Ich bin etwas verwirrt und für jede Aufklärung dankbar...
Tom
(Ach ja, WinAVR-Version is 20060421, falls das irgendwie relevant ist.)