Hallo, ich versuche einen Clockprescaler bei einem ATMEGA48P, mit
AtmelStudio 7[neuste Version], zu setzten. Leider läuft der Build nicht
durch.
1 | #include <stdint.h> // Einbinden von stdint.h
|
2 | #include <avr/io.h> // Einbinden von io.h
|
3 | #include <avr/interrupt.h> // Einbinden von interrupt.h
|
4 | #define F_CPU 1000000UL // Frequenz:1 MHz
|
5 | #include <util/delay.h> // Einbinden von delay.h
|
6 |
|
7 | ....
|
8 |
|
9 | CLKPR = (1<<CLKPCE); // Enable change of CLKPS bits
|
10 | CLKPR = (1<<CLKPS1); // Set prescaler to 4 and system clock to 1 MHz
|
11 |
|
12 | .....
|
Mit auskommentieren der zwei Zeilen läuft der Build sauber durch.
(WinAVR[neuste Version] reagiert ebenfalls so.)
Beim Verwenden der power.h passiert ebenfalls dasselbe.
Im Build-Prozess bekomme ich folgenden Fehler, den ich leider nicht ganz
nachvollziehen kann.
1 | Build started.
|
2 | Project "Kettenoeler.cproj" (default targets):
|
3 | Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
|
4 | Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Compiler.targets" from project "...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\Kettenoeler.cproj" (target "Build" depends on it):
|
5 | Task "RunCompilerTask"
|
6 | Shell Utils Path C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils
|
7 | C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils\make.exe all --jobs 8 --output-sync
|
8 | Building file: .././main.c
|
9 | Invoking: AVR/GNU C Compiler : 5.4.0
|
10 | "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe" -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.150\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega48p -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.2.150\gcc\dev\atmega48p" -c -std=gnu99 -MD -MP -MF "main.d" -MT"main.d" -MT"main.o" -o "main.o" ".././main.c"
|
11 | ...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\Debug\Makefile(79,1): error: recipe for target 'main.o' failed
|
12 | In file included from c:\program files (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\io.h:99:0,
|
13 | from .././main.c:14:
|
14 | ...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\main.c(22,1): error: expected identifier or '(' before 'volatile'
|
15 | CLKPR = (1<<CLKPCE); // Enable change of CLKPS bits
|
16 | ^
|
17 | ...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\main.c(22,1): error: expected ')' before '(' token
|
18 | CLKPR = (1<<CLKPCE); // Enable change of CLKPS bits
|
19 | ^
|
20 | ...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\main.c(23,1): error: expected identifier or '(' before 'volatile'
|
21 | CLKPR = (1<<CLKPS1); // Set prescaler to 4, and system clock to 1 MHz
|
22 | ^
|
23 | ...\Atmel Studio\7.0\Kettenoeler\Kettenoeler\main.c(23,1): error: expected ')' before '(' token
|
24 | CLKPR = (1<<CLKPS1); // Set prescaler to 4, and system clock to 1 MHz
|
25 | ^
|
26 | make: *** [main.o] Error 1
|
27 | Done executing task "RunCompilerTask" -- FAILED.
|
28 | Done building target "CoreBuild" in project "Kettenoeler.cproj" -- FAILED.
|
29 | Done building project "Kettenoeler.cproj" -- FAILED.
|