DS1621 Temperatur über LCD ausgeben

Gast #969801
Lesenswert?

Hallo,

ich versuche über ein LCD die Temperatur eines DS1621 mit einem Atmega8 
auszugeben. Das LCD läuft ohne Probleme, ich vermute auch der DS1621....

Mein Problem ist, das ich es 'nicht gebacken' bekomme die Werte des 
DS1621 mit dem LCD auszugeben...

Soweit ich weiß, wird in TempH die Temp. gespeichert, wenn ich die aber 
jetzt ausgeben will, bekomme ich nur "Wirrwarr";
ich vermute, das ich den Wert noch konvertieren muss... hier hörts bei 
mir aber leider auf....

Über Hilfe würd ich mich freuen!

mfg tillt

CODE:
______________________________________
int main(void)  {

unsigned char TempH, TempL, data, test;
char *lcddata;
unsigned int  temp;

i2c_init();
test = i2c_start(DS1621_Write);
test = i2c_write(0xEE);
i2c_stop();
i2c_start(DS1621_Write);
i2c_write(0xAA);
i2c_stop();
warte();

lcd_init(LCD_DISP_ON);
lcd_clrscr();

i2c_start(DS1621_Read);
data = i2c_readAck();
TempH = data;
temp = TempH;
data = i2c_readNak();
TempL = data;

i2c_stop();

lcd_puts(temp);
_delay_ms(2000);

lcd_clrscr();
lcd_puts("HALLO");
_delay_ms(2000);
}
 ___________________________________
Gast #969829
Lesenswert?

.. ups, statt "Absenden" statt "Vorschau" erwischt.
Ich wollte noch schreiben:

lcd_puts()  heisst put s, weil sie als Parameter einen S tring
( char *) erwartet.
 Ich weiss ja nicht welche LCD Lib Du verwendest - vielleicht gibts da 
ja was, das mit Zahlenwerten statt Strings umgehen kann.

Oder Du erzeugst halt aus Deiner Zahl einen String.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren