Forum: Compiler & IDEs LCD Anzeige, PIC Mikrocontroller


von Artur (Gast)


Lesenswert?

Ich wollte Lcd Anzeige für ein Float-Ergebnis programmieren.

die Vorgabe ist ein Funktion:
1
void LCD_ValueOut(unsigned char row, unsigned char col, long value)
2
{
3
    char buffer[8];
4
    char *buffer_ptr;
5
    buffer_ptr = &buffer[0];
6
7
#ifdef __18CXX
8
    ltoa(value, buffer);
9
#else
10
    ltoa(&value, buffer, 10);
11
#endif
12
13
    LCD_Command(CURSOR_ADDR + (LINE_OFFSET * row) + col);
14
    while (*buffer_ptr) {
15
        LCD_CharOut(*buffer_ptr);
16
        buffer_ptr++;
17
    }
18
}
In meinem Quelltext habe ich die für meine Variablen genutzt:
1
    LCD_ValueOut (0,0,Rez);
2
    LCD_ValueOut (1,1,c);

Variable Rez und c sind eigentlich Ganze zahlen in kOm und mkF.

Compilier schreibt ein Fehlermeldung

error: conflicting declarations for variable "_LCD_ValueOut

und zeigt auf den Simbol

{ in Funktion.

Der Funktion ist eine Standartvorgabe für Displays.

Weiß jemand wo ist hier ein Konflikt und wie kann man den lösen?

Danke

von Karl H. (kbuchegg)


Lesenswert?

Dann überprüf mal, ob im Header File für die LCD FUnktionen

void LCD_ValueOut(unsigned char row, unsigned char col, long value)

auch so drinnen ist, bzw. ob du den Header File auch benutzt hast, bzw. 
ob du einen Prototypen im System hast.

Andererseits:

Die Fehlermeldung lautet

> error: conflicting declarations for variable "_LCD_ValueOut

d.h. da ist von einer Variablen die Rede. Und der Variablenname ist nur 
fast identisch mit dem Funktionsnamen. Da ist noch ein UNterstich am 
Anfang.
d.h. es kann sein, dass es sich in Wirklichkeit um etwas ganz anderes 
handelt und die Funktion gar nichts damit zu tun hat.

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.