- Labornetzteil AliExpress         
Ergebnis 1 bis 3 von 3

Thema: unbekannter Fehler in RP6 Programm

  1. #1
    Erfahrener Benutzer Roboter Experte Avatar von Virus
    Registriert seit
    15.09.2009
    Ort
    Duisburg
    Alter
    29
    Beiträge
    527

    unbekannter Fehler in RP6 Programm

    Anzeige

    Powerstation Test
    Ich hab Probleme mit einem meiner RP6 Programme,
    weil ich den Fehler (seine Meldung im Output) nicht kenne und nicht weis wie ich ihn korregiere.

    Code:
    #include "RP6ControlLib.h"
    
     void temp(void) // Temperaturfunktion
        {
    		writeString(" | Temperatur in Grad Celsius: ");
    		uint16_t adc4 = 1032- readADC(ADC_4); // ADC 4 einlesen
    		uint16_t stemp = (adc4 - 316) / 11; // Y-Achsenabschnitt und Umrechnung zu °C
    		writeInteger(stemp, DEC); // Temperatur ausgeben
    		writeChar('\n');
    		
    		setCursorPosLCD(0,0); // Temperatur am LCD ausgeben
            writeIntegerLCD(stemp,DEC); 
    		writeCharLCD('G');
    		writeCharLCD('r');
    		writeCharLCD('a');
    		writeCharLCD('d');
            writeCharLCD(' ');
            writeCharLCD('C');
            writeCharLCD('e');
            writeCharLCD('l');
            writeCharLCD('s');
            writeCharLCD('i');
            writeCharLCD('u');
            writeCharLCD('s'); 
        }
    	
     void licht(void) // Lichtfunktion
        {
    		writeString(" | Licht von 0 bis 10: ");
    		uint16_t adc3 = readADC(ADC_3) - 23; // ADC 3 einlesen und auf 1000 begrenzen
    		uint8_t rlicht = adc3 / 100; // ADC3 verkleinern
    		uint8_t slicht = rlicht;  // ausgabe-variable deklarieren
    		writeInteger(slicht , DEC); // Lichtwert ausgeben
    		writeChar('\n');
    		
    		setCursorPosLCD(1,1); // Lichtwert am LCD ausgeben
            writeIntegerLCD(slicht,DEC); 
            writeCharLCD('L');
            writeCharLCD('i');
            writeCharLCD('c');
            writeCharLCD('h');
            writeCharLCD('t'); 
        }
    	
     void relfeucht(void) // rel. Feuchte Funktion
        {
    		writeString(" | rel. Feuchte in Prozent: ");
    		uint16_t adc5 = readADC(ADC_5); // ADC 5 einlesen
    		uint16_t rrF = adc5 - 204; // Y-Achsenabschnitt
    		uint16_t srF = rrF / 5; // rel. Feuchte in % berechnen
    		writeInteger(srF, DEC); // rel. Feuchte ausgeben
    		writeChar('\n');
    		
    		setCursorPosLCD(1,8);  //rel. Feuchte am LCD ausgeben
            writeIntegerLCD(srF,DEC); 
            writeCharLCD('%'); 
            writeCharLCD('r'); 
            writeCharLCD('F');
    
    int main(void)
    { 
    	initRP6Control();
        initLCD();
    	showScreenLCD("Wetterstation","Auf dem RP6");
    	mSleep(1000);
    
    	
    	DDRA &= ~ADC3;
    	DDRA &= ~ADC4; // ADC definieren
    	DDRA &= ~ADC5;
    	
    	while(true) 
    	{
    	 
    	 temp();
    	 licht();
         relfeucht();
    	 mSleep(100);
    	 
    	}
    	
    	return 0;
    	
    }
    Mit hochohmigen Grüßen
    Virus

    Es lebe der Digitalkäse !

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    14.08.2007
    Ort
    Delmenhorst
    Alter
    39
    Beiträge
    731
    Eine kleine Beschreibung, was passiert, bzw. was nicht passiert wäre nciht schlecht gewesen.
    Wie dem auch sei, es fehlt aufjedenfall eine geschlossene geschweifte Klammer am Ende von "void relfeucht".

  3. #3
    Erfahrener Benutzer Roboter Experte Avatar von Virus
    Registriert seit
    15.09.2009
    Ort
    Duisburg
    Alter
    29
    Beiträge
    527
    Danke King Tobi, das war es schon.

    Die Fehlerbeschreibung im Output von Programmers Notepad beim Compilieren ist die folgende gewesen:

    RP6Control_05_IO_ADC.o
    RP6Control_05_IO_ADC.c: In function 'relfeucht':
    RP6Control_05_IO_ADC.c:63: warning: 'main' is normally a non-static function
    RP6Control_05_IO_ADC.c:87: error: expected declaration or statement at end of input
    make.exe: *** [RP6Control_05_IO_ADC.o] Error 1
    Mit hochohmigen Grüßen
    Virus

    Es lebe der Digitalkäse !

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress