Forum: Compiler & IDEs Problem bei Würfelgeneratorprogramm


von ElektroAzubiG&S (Gast)


Lesenswert?

Hallo,
habe ein Problem bei meinem Programm im AVR Studio 4!
ATMEGA 32
habe mir ein Würfelprogramm geschrieben das bei betätigen eines tasters 
eine zahl von 1-6 ausgibt!
Mein Problem ist bei "Build" bringt er mir drei Fehlermeldungen die ich 
nicht mehr los werde!!!
1. Fehlermeldung #include datei "global.h" -->irgendwie kann ich die 
nicht finden!

2+3. Fehlermeldungen bei meinen Schleifen {

Vllcht kann mir ja jemand weiterhelfen

Bräuchte es für die Berufsschule
Bin um jeden nützlichen Beitrag froh
Danke schon im Vorraus


hier noch das Programm


/*******************************************************

Projekt: Würfelprogramm
Date:2007-12-23
Author: ElektroAzubiG&S
Chip Type: ATMEGA32

*******************************************************/
#include "global.h" <-- 1. Fehlermeldung

 /*definieren von Konstanten*/


#define True    1
#define False    0
#define  Pi      3,14


void init                    /*Unterprgramm wird initialisiert*/
{   <----2.Fm


wdt_disable();

  DDRB= 0x0F;
  DDRA= 0xF0;
  DDRB= 0x0F;
  PortB= 0x00;

  timer0init ();


  sei();

  uartinit();
  uartset baudrate (19200);
  rprintfinit(uartsendbyte);

  rprintf ("\r\nhallo leute\n");
  rprintf("ich bin der meisterprogrammierer");

  } //Ende init



                            /*Hauptprogramm*/

{  <--3.Fm

  char i;
  init main (void)

  //Lampentest (alle ein dann aus)

  PORTB= 0xEF;
  timerPause (500);
  PORTB= 0x00;
  timerPause (500);
  PORTB= 0xEF;
  timerPause (500);
  PORTB= 0x00;
  timerPause (500)
  PORTB= 0xEF;
  timerPause (500);
  PORTB= 0x00;
  timerPause (500);


//dann endlosschleife

    while (1)

      {
      rprintf ("Endlosschleife");
      rprintfCLRF();


      for (i=1; i < 13; i=i+2) //hier wird dauernd bis fünf gezählt 
13?????


          {
          if (i==1) PROTB= 0x08;
          if (i==2) PROTB= 0x24;
          if (i==3) PROTB= 0x2C;
          if (i==4) PROTB= 0xA5;
          if (i==5) PROTB= 0xAD;
          if (i==6) PROTB= 0xE7;

          rprintfCLRF();
          rprintf("Hurra! Du hast eine %x gewürfelt",i);
          rprintfCLRF();
          timerPause(5);
          loop_until_bit_is_set(PINA,PINA3);

          timerPause(5); //wartezeit zum Entprellen

          PORTB= 0;
          }
      }
  }

von Johannes M. (johnny-m)


Lesenswert?

Und welche Fehlermeldungen kommen in den Schleifen? Lass mich raten: 
Eine lautet sinngemäß "undefined symbol 'PROTB'...", oder liege ich da 
falsch mit meinem Ratespielchen?

von Johannes M. (johnny-m)


Lesenswert?

> rprintf("ich bin der meisterprogrammierer");
Da ist aber einer ganz schön überheblich...;-)

von Frank B. (frank_b) Benutzerseite


Lesenswert?

Wenn Du das Programm selbst geschrieben hast, musst Du doch wissen wofür 
global.h gut ist, bzw wo Du es findet :-)

Frank

von ElektroAzubiG&S (Gast)


Lesenswert?

Build started 23.12.2007 at 21:24:49
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2 -Os -std=gnu99 
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP 
-MT µC.o -MF dep/µC.o.d  -c  ../µC.c

../µC.c:14:20: error: global.h: No such file or directory

../µC.c:29: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before '{' token

../µC.c:52: error: expected identifier or '(' before '{' token
make: *** [µC.o] Error 1

Build failed with 3 errors and 0 warnings...

so sieht die Fehlermeldung aus
Danke für die rasche Antwort

oh da hab ich aber echt nicht aufgepasst!!
mit dem "PROTB"

von Kurt (Gast)


Lesenswert?

Da sind ja Milliarden Fehler drin in dem Code...

Du programmierst zum ersten Mal in C oder?

von ElektroAzubiG&S (Gast)


Lesenswert?

@Kurt Ja das ist mein erstes Programm!
@Frank Das Programm hab ich mir so von anderen zusammengeschnipselt!

@Johannes Das mit dem Meiserprogrammierer soll ironisch gewesen sein lol 
--> ist doch nicht so leicht wie ichs mir vorgestellt hab!

@Kurt was sollte ich sonst noch so beachten?

mfg

von Johannes M. (johnny-m)


Lesenswert?

> timerPause (500)
Da fehlt ein Semikolon.

Außerdem hat das Hauptprogramm keinen Namen. Klar, dass es da 
Fehlermeldungen hagelt. Es muss in einem C-Programm immer genau eine 
Funktion mit dem Namen "main" geben. Das ist vermutlich auch die Ursache 
für die beiden letzten Fehlermeldungen.

von Frank B. (frank_b) Benutzerseite


Lesenswert?

...sofern die global.h aufgefunden werden kann.

Ohne die geht garnix.

Frank

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
Noch kein Account? Hier anmelden.