Guten Morgen Zusammen Ich wollte eine Led am PortA.5 blinken lassen. Jedoch erhalte ich immer div. Fehlermeldungen welche ich im Anhang beigefühgt habe. Wenn ich nun das Program so umschreibe das es am PortB.5 blinken soll funktioniert dies. Wo liegt mein Fehler? Programm mit Fehlermeldung: #include <avr/io.h> #include <util/delay.h> int main(void) { DDRA = (1<<PA5); while (1) { PORTA &= ~(1<<PA5); _delay_ms(500); PORTA |= (1<<PA5); _delay_ms(500); } } gibt keine Fehlermeldung: #include <avr/io.h> #include <util/delay.h> int main(void) { DDRB = (1<<PB5); while (1) { PORTB &= ~(1<<PB5); _delay_ms(500); PORTB |= (1<<PB5); _delay_ms(500); } } Aus der Fehlermeldung sehe ich schon das mit A Port der Quarz nicht definiert ist aber wieso dann wenn ich A durch B ersetzte? Gruss und Danke
da wirst du wohl mal den richtigen Prozessor und den Takt deklarieren müssen. Zudem vielleicht mal prüfen ob es bei deinem geheimen Modell überhaupt einen Port A gibt. Klaus
Franz Maier schrieb: > Ich wollte eine Led am PortA.5 blinken lassen. Jedoch erhalte ich immer > div. Fehlermeldungen welche ich im Anhang beigefühgt habe. Hat dein (uns unbekannter) Mikrocontroller denn einen Port A, und hast du diesen Mikrocontroller auch in deiner IDE ausgewählt? Franz Maier schrieb: > Aus der Fehlermeldung sehe ich schon das mit A Port der Quarz nicht > definiert ist aber wieso dann wenn ich A durch B ersetzte? Also kommt die Warnung über F_CPU nicht, wenn du Port B benutzt? Das wäre ungewöhnlich. F_CPU muß definiert werden, damit die delay-Funktionen wissen, wie schnell der Prozessor getaktet ist.
Hi Vielleicht hat dein unbekannter Controller keinen PortA. MfG Spess
Welcher Chip ist den im Projekt ausgewählt? Wahrscheinlich hat der ausgewählte Chip Keinen PORTA und damit die io.h auch kein Define dafür. um die Warning weg zu bekommen musst du noch der Delay Funktion mitteilen wie schnell dein µC läuft. (z.B. #define F_CPU 8000000UL wenn dein µC mit 8MHz läuft). Gruß Matthias
Ach Sorry Prozessor ist ein Mega32 und den habe ich auch ausgewählt
Zeig mal die Kommandozeile des Compilers, und überprüfe die Projekteinstellungen. Da ist garantiert doch ein Mega8 o.ä. eingestellt, kein Mega32. Oliver
Hallo Danke für eure Antworten ich habe alles nochmals kontroliert aber die Einstellungen waren richtig. Danach ist mir eingefallen das ich irgenwo noch ein älteren PC rumliegenhabe mit AVR Studio. Ich habs da versucht und es lief auf anhieb. Nun habe ich mein PC neu aufgesetzt und AVR Studio 5.1 neu installiert und aus noch unerklärlichen Gründen kann ich nun kompilieren ohne Fehlermeldung. Vielleicht war irgendwas zerschossen. Gruss und Danke
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.