Gast
#1935480
Hallo,
ich habe da folgendes Problem. Ich werte mit dem ADC eine Spannung aus.
Die AD-Werte sind anedren Werten zugeordnet, die ich über eine Tabelle
suche. Anschließend soll alles auf einem Display mit Kommastalle
ausgegeben werden. Wenn ich das so wie unten mache, dann bleibt mein
Display komplett leer. Editiere ich die Zeile "Spannung = a[result]" in
"Spannung = 10.67", dann gibt mir das Display die gewünschten 10.67
aus....
Daher gehe ich davon aus, dass irgendwas mit der Zeile "static const
double a[391] = { 5.56, 5.77, 6.87, 8.98, ...};" nicht stimmt.
Hier mal einige Auszüge:
#include <avr/io.h>
#include <stdlib.h>
#include "lcd-routines.h"
#include <util/delay.h>
#include <stdio.h>
#include <stdint.h>
double temperatur;
char Buffer[20];
Auszug aus der Displayausgabe
static const double a[391] = { 5.56, 5.77, 6.87, 8.98, ...};
Spannung= a[result];
sprintf(Buffer,"%.2f", Spannung) ;
lcd_string(Buffer);
Ich nutze die sprintf funktion, die ich wie hier im Wiki eingebunden
habe. Über Sinn und Unsinn sei nun mal nicht gesprochen! :) Mir geht es
nun erst ma drum zu verstehen warum es nicht funktioniert. Anschließend
kann ich mir noch immer Gedanken machen, das Ganze anders zu lösen aber
mich Interssiert erst einmal der Fehler! :)
Ich hoffe jemand kann mir bei meinem Problem helfen!
mfg Michael