Guten Tag, alle,

bitte um einen Hinweis, wo/wie ich meine vielen Fehler finden könnte.

AVRStudio 4.13, SP1 auf WinXPPro:

AVR Studio 4.13.557 Service Pack 1
GUI Version 4, 13, 0, 557
AVR Simulator 1, 0, 2, 0
ATTINY2313 226

Optimierungsstufe -0s

Bearbeitet wird aktuell der Code, der in meinem Dottie ohne Fehler und Warnungen compiliert wird. Dieser Code ist aufgeteilt in mehrere Module, z.B.
~com~.h Header und globale Deklarationen
~tmr~.c usf.

Zum Aufbau einer LCD-Ansteuerung über den tiny2313 habe ich das alte Main-Modul kopiert und ausgeforstet bis auf wenige Zeilen.

Nach verschiedenen organisatorischen Kommentaren am Modulanfang beginnt der code wie folgt:
Code:
/*
#include "m168D_com_10x81a.h"    // commonvariable
*/
#include "L213_com_10x10.h"      // Commonvariablen und Header
#include "L213_tmr_10x10.c"      // Timer
#include "L213_inf_10x10.c"      // Infomodul



#define MCU = AVR_ATtiny2313

#define F_CPU  20000000         // Quarz 20 Mhz-CPU
// #define BAUD   57600
#define UART_BAUD_RATE     57600        // Änderung am 19sep08 2220 für lib Fleury
#define MYUBRR ((unsigned int)((unsigned long) F_CPU/16/BAUD-1)) //vgl doc2545,S179
//            und https://www.roboternetz.de/phpBB2/ze...=375337#375337
/* ============================================================================== */
Nach ähnlichen organisatorischen Kommentaren beginnt die Headerdatei ...\L213_com_10x10.h wie folgt
Code:
/*==================================================================================
  Zeitdaten
 ================================================================================ */
/* beachte: volatile!  und   Vorzeichenlos reicht für alle                        */

volatile uint16_t Iz_ysecv0, Iz_ysecv1;
    /* Zeitmarke µsec des vorletzten Interrupts in der Einheit 50 Mikrosekunden.
    Ist der Wert des hochlaufenden Timers zum Interruptzeitpunkt i-1 */

volatile uint16_t Iz_yseci0, Iz_yseci1;	/* Zeitmarke "µsec"
    des letzten Interrupts in der Einheit 100 Mikrosekunden. Ist der Wert des
    hochlaufenden Timers zum Interruptzeitpunkt i (letzter Interrupt)        */

volatile uint16_t Iz_diff0, Iz_diff1;	/* Zeitdifferenz
  Beim Abarbeiten des Interrupts wird yseci mit time1 belegt und diff aus der
    Differenz yseci-ysecv errechnet. Danach wird yseci nach ysecv kopiert.
    Im main bzw. regelung wird aus Iz_diffx die Drehzahl berechnet.               */
Ich hoffe, dass dies genug Informationen für die Suche nach den Fehlerursachen sind.

Der Compiler meldet im ersten, probeweisen Durchgang (ich wollte mal ganz grob sehen, wo ich überhaupt stehe - ok, klingt nach experimenteller Software-Entwicklung) Folgendes:
Code:
Build started 22.10.2008 at 12:02:34
avr-gcc.exe  -mmcu=attiny2313 -Wall -gdwarf-2 -Os -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT L213_10.o -MF dep/L213_10.o.d  -c  ../L213_10.c
In file included from ../L213_10.c:63:
../L213_com_10x10.h:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Iz_ysecv0'
../L213_com_10x10.h:40: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Iz_ysecv1'
../L213_com_10x10.h:44: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Iz_yseci0'
.... insgesamt ....
Build failed with 85 errors and 35 warnings...
... und ich habe keine Ahnung, wo der Fehler liegen könnte. Wie bereits geschildert - die Headerdatei ist von der funktionierenden Projektdirectory "dottie" einfach übernommen ! Dort stört den Compiler garnix.

Schon mal jetzt vielen Dank für eure Hilfe.