HI! Ich habe wiedermal ein kleines Problem beim Programmieren. Und zwar übergebe ich meiner Funktion vier Werte und diese soll sie dann mehr oder weniger nur multiplizieren und das Ergebnis dann am LCD ausgeben. Jedoch dürfte irgendwas bei der Rechnung passieren oder die Zahl einfach zu groß werden, was aber nicht sein dürfte. Alle Werte hab ich mit 444 angenommen. Jeden Wert einzeln kann ich ausgegeben, dass heißt es kann lediglich an der Zeile mit der Rechnung oder beim umwandeln auf char ein Fehler sein. In der Ausgabe steht dann statt der Zahl ein Fragezeichen.
1 | void zeilenscan(int laengex, int laengey, int anfz, int endz) //Steuert die zwei Motoren in einem Zeilenscannverfahren. Zeilen sind durch ez und iz vernderbar |
2 | {
|
3 | int xz; |
4 | int d; |
5 | int yz; |
6 | float dauer; |
7 | char buffer[20]=""; |
8 | lcd_puts("Dauer der \n"); |
9 | //dauer=laengex*laengey*(endz-anfz+1)/60;
|
10 | dauer=laengex*laengey; |
11 | lcd_puts("Messung:"); |
12 | lcd_gotoxy(9,1); |
13 | sprintf(buffer,"%d",dauer); |
14 | lcd_puts(buffer); |
Schon mal ein Dankeschön im Voraus für die Hilfen! Lg Oliver