Hallo Kolleginnen und Kollegen,
wie in der Überschrift beschrieben bin ich gerade dabei von Bascom auf
C/C++ unzusteigen.
Leider tauchen die ersten Probleme schon bei der Einrichtung der IDE
auf.
Dieser Code fürt in 3 Verschiedenen IDEs zu unterschiedlichen
Ergebnissen:
(ist jedes mal die gleiche Platine mit einem Atxmega128a4u (ohne
externem Quarz) und einem AVRispMK2-Progammer)
1 | #include <avr/io.h>
|
2 | #include <util/delay.h>
|
3 |
|
4 | int main(void)
|
5 | {
|
6 | PORTC.DIR = PIN0_bm | PIN1_bm;
|
7 | while (1)
|
8 | {
|
9 | PORTC.OUTSET = PIN0_bm;
|
10 | _delay_ms(10000);
|
11 | PORTC.OUTCLR = PIN0_bm;
|
12 | _delay_ms(10000);
|
13 | }
|
14 | }
|
Version 1:
Im Amtel Studio 7 (Version: 7.0.2542 - ) funktioniert der Code und der
Port ist im Wechsel immer 10 Sec. an und aus
Unter ->Project ->Properties ->AVR/GNU C Compiler -> Symbos ist
F_CPU=2000000 eingetragen
Aber eigentlich wollte ich unter Linux arbeiten...
Version 2:
Unter Linux habe ich Geany im Einsatz und es nach der Anleitung aus dem
Ubuntuusers AVR Wiki eingerichtet.
Ich habe das Makefile aus dem Wiki kopiert und diese Werte angepasst:
MCU = atxmega128a4u
F_OSC = 2000000
Funktioniert auch, allerdings wechselt jetzt der Port alle 5 Sekunden
den Zustand.
Muss ich hier noch irgendwas einstellen?
Version 3:
Code::Blocks habe ich unter Linux zusätzlich noch eingerichtet, da
bekomme ich aber schon beim Kopilieren folgende Fehler:
1 | In file included from /usr/include/math.h:43:0,
|
2 | from /usr/lib/avr/include/util/delay.h:46,
|
3 | from main.c:6:
|
4 | /usr/include/bits/floatn.h:75:1: Fehler: Unbekannter Maschinenzustand »__TC__«
|
5 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__)));
|
6 | ^
|
7 | /usr/include/bits/floatn.h:87:9: Fehler: unbekannter Typname: »__float128«
|
8 | typedef __float128 _Float128;
|
9 | ^
|
10 | In file included from main.c:6:0:
|
11 | /usr/lib/avr/include/util/delay.h:112:3: Warnung: #warning "Compiler optimizations disabled; functions from <util/delay.h> won't work as designed" [-Wcpp]
|
Bisher würde mir ja Geany reichen, muss nicht Code::Blocks sein.
Ich möchte nur ungern unter Windows was machen, da das nur als VM läuft.
Vielleicht könnt Ihr mir ja helfen damit ich Geany und/oder Code::Blocks
zum laufen kriege.
Vielen Dank vorab!