sicher, dass das so überhaupt kompiliert? weil char buffer[8] und float f mitten im code deklariert sind..Code:void display(uint16_t result) { lcd_init(LCD_DISP_ON_CURSOR); //LCD initialisieren lcd_gotoxy(0,0); //Cursor an erste Stelle setzen lcd_puts("Temperatur:"); //"Temperatur" ausgeben lcd_gotoxy(11,0); // Cursor hinter "Temperatur:" setzen char buffer[8]; //Array für itoa anlegen float f=((float)result*5)/1024; // if(f<0)f=0; itoa((int)f,buffer,10); lcd_puts(buffer); f=(f-(int)f)*1000; if(f<100)lcd_putc('0'); if(f<10)lcd_putc('0'); itoa((int)f,buffer,10); lcd_putc(','); lcd_puts(buffer); PORTD = result; //Den Digitalen Wert mit Hilfe der LED`s anzeigen return; }
das 10bit result direkt an PORTD auszugeben (der ja nur 8bit hat) wird zu falschen ergebnissen führen.
gruesse







 
			
			 
					
					
					
						 Zitieren
Zitieren

Lesezeichen