-
das ist der Fehler code:
Code:
Build started 4.12.2009 at 23:35:33
avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT lcd.o -MF dep/lcd.o.d -c ../lcd.c
../lcd.c: In function 'putnr':
../lcd.c:630: error: parameter 'wert' is initialized
../lcd.c:632: error: expected declaration specifiers before 'ISR'
../lcd.c:639: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
../lcd.c:700: error: old-style parameter declarations in prototyped function definition
../lcd.c:698: error: expected '{' at end of input
make: *** [lcd.o] Error 1
Build failed with 5 errors and 0 warnings...
by Donald
-
neuer Fehler code:
sorry bin zur zeit sehr unkonzentrirt
Code:
Build started 4.12.2009 at 23:55:06
avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT lcd.o -MF dep/lcd.o.d -c ../lcd.c
../lcd.c:622: warning: return type defaults to 'int'
../lcd.c: In function 'ISR':
../lcd.c:622: warning: type of '__vector_9' defaults to 'int'
../lcd.c: In function 'main':
../lcd.c:633: warning: implicit declaration of function 'sei'
../lcd.c: In function 'ISR':
../lcd.c:625: warning: control reaches end of non-void function
avr-gcc -mmcu=atmega16 -Wl,-Map=lcd.map lcd.o -o lcd.elf
lcd.o: In function `main':
C:\Dokumente und Einstellungen\Ferdinand\Eigene Dateien\lcd\default/../lcd.c:633: undefined reference to `sei'
make: *** [lcd.elf] Error 1
Build failed with 1 errors and 4 warnings...
by Donald
-
Es fehlt:
#include <avr/interrupt.h>
Code:
#include <avr/interrupt.h>
#include <stdlib.h>
#include <inttypes.h>
#include <stdio.h>
#include <avr/pgmspace.h>
#include "lcd.h"
#include <avr/io.h>
#define DURCHLEUFE 256
volatile unsigned int wert = 0;
ISR(TIMER0_OVF_vect)
{
wert++;
TCNT0 = 256 -DURCHLEUFE;
}
int main(void)
{
TCNT0 = 256 -DURCHLEUFE;
TCCR0 = (1 << CS02)|(1 << CS00);
TIMSK = (1 << TOIE0);
sei();
volatile unsigned int sekunde, minute, stunde;
for(;;){
// lcd_init(LCD_DISP_ON);
// lcd_clrscr();
if (wert == 100)
{
sekunde++;
wert = 0;
}
if (sekunde == 60)
{
minute++;
sekunde = 0;
}
if (minute == 60)
{
stunde++;
minute = 0;
}
if (stunde == 24)
{
stunde = 0;
}
char ausgabe[20];
int tag=28;
int monat=11;
int jahr=2009;
sprintf(ausgabe, "%d-%d-%d %d:%d", tag, monat, jahr, stunde, minute);
lcd_puts(ausgabe);
}
}
Es fehlt ausserdem noch die Endlosschleife, hab sie hier mal eingefügt.
-
ok THX es geht!!
jetst hätte mich noch interisirt wie das mit dem c dateien get wo pak ich das rein wie füge ich das in meine main ein ?
Danke
by Donald
-
Womit programmierst du? AVR-Studio verwende ich.
Ansonst ein neues *.c file öffnen, den Namen z.B. uhr.c geben.
Dort hinein dann den Codeteil von mir copieren.
lcd.c und lcd.h in das gleiche Verzeichnis legen.
-
ja AVR-Studio wen ich ein neues c file angelegt habe und den inhalt ein gefügt wurde wie verbinde ich dan die verschidenen c files wen ich merr mains habe wie bringe ich das ales unter eine haube
Danke
by Donald
-
Main kannst du nur eins haben.
Die zusätzlich benötigten *.c und *.h Files in das gleiche Verzeichnis bringen.
Auf der linken Seite steht im Fenster Source Files und Header Files, dort jeweils rechte Maustaste drauf, Add Existing Source File und Add Existing Header File.
Damit fügst du diese Files ein und werden beim compilieren automatisch mit eingebunden.