Forum: Mikrocontroller und Digitale Elektronik Fehler: "missing function-prototype"


von Tobias D. (tobid)


Lesenswert?

Hallo zusammen.
Ich bin gerade noch sehr am Anfang der C-Programmierung. Derzeit lerne 
ich für's Abitur und versuche hier und da vielleicht noch zusätzlich was 
außerhalb zu lernen. Im Moment beschäftige ich mich mit dem Timer und 
experimentiere ein wenig herum. Bei meinem Board, auf dem ich die 
Programme in Form von 8 LED's testen kann, basiert auf einem 
8051-Controller (AT89S52).

Mein Programm funktioniert zwar, aber Keil (das Programm mit welchem ich 
programmiere) gibt mir immer eine Warnung aus. Das Programm soll ein 
einfaches Lauflicht von Links nach Rechts mit Pause durch den Timer 
darstellen:
1
#include <reg52.h>
2
3
char x;
4
char k;
5
6
7
Init()
8
{
9
  TMOD=((TMOD&0x0f)|0x05);
10
  TH0=0;
11
  TL0=0;
12
  TR0=1;
13
}
14
15
16
void main(void)
17
{
18
  while(1==1)
19
  {
20
  
21
    x=0x01;
22
  
23
    for(k=1;k<9;k++)
24
    {
25
      P0=x;
26
      x=x<<1;
27
      init();
28
    }
29
30
    if(x==0x80)
31
    {
32
      x=0x01;
33
    }
34
  }
35
}



Die Meldung sieht so aus:

" PROJEKTNAME.C(27): warning C206: 'init' : missing function-prototype "


Ich hab schon alles überprüft, alles nachgeschaut. Aber mir fällt 
wirklich nichts auf, woran es liegen könnte. Vielleicht kann mir jemand 
von Euch helfen?!

MfG
Tobi

von Achim M. (minifloat)


Lesenswert?

Tobias D. schrieb:
> Init()
> {
>   TMOD=((TMOD&0x0f)|0x05);
>   TH0=0;
>   TL0=0;
>   TR0=1;
> }

schreib da mal
void init(void)
{
[...]
}
dann solltes funsen
mf

von Christopher G. (cbg)


Lesenswert?

Auch nicht aufgefallen, dass es keine Funktion namens init gibt, sondern 
nur eine Namens Init, welcher nebenbei bemerkt der Rückgabetyp fehlt?

von Tobias D. (tobid)


Lesenswert?

Mini Float schrieb:
> schreib da mal
>
> void init(void)


Danke! Das war auch meine erste Vermutung, allerdings hab ich mich dabei 
wohl vertippt, weswegen ich direkt noch mehr Warnings und Errors hatte. 
:-( Aber jetzt funktioniert es einwandfrei! ;)

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.