Hallo,
ich programmiere mit Eclipse (4.4.1) und dem AVR Eclipse Plugin (2.4.1).
Mit den Controllern die ich bislang verwendet habe hat das auch
problemlos funktioniert. Heute wollte ich mal ein Programm auf einem
Atmega328P testen. Dabei musste ich feststellen, dass anscheinend der
falsche IO-Header eingebunden wird.
Ich verwende
zum einbinden der Registernamen etc. Ich bekomme dann aber lauter
Meldungen der Art
1 | Symbol 'UBRR0H' could not be resolved
|
In der Header-Datei des Atmega328P wird das Register aber so genannt.
Ich habe dann mal versucht die Header-Datei avr/iom328p.h direkt
einzubinden. Das funktioniert aber auch nicht, da in dieser Datei
folgendes steht:
1 | #ifndef _AVR_IO_H_
|
2 | # error "Include <avr/io.h> instead of this file."
|
3 | #endif
|
4 |
|
5 | #ifndef _AVR_IOXXX_H_
|
6 | # define _AVR_IOXXX_H_ "iom328p.h"
|
7 | #else
|
8 | # error "Attempt to include more than one <avr/ioXXX.h> file."
|
9 | #endif
|
Kennt jemand dieses Problem? Hat dazu jemand eine Lösung?
PS: In den Projekteinstellungen ist der MCU Type ATmega328P eingestellt.