Hallo zusammen,

ich versuche mich gerade in das Ganze einzulernen, bin aber noch ganz am Anfang.

Mein Ziel ist es, 4 Temperaturen auf einem LCD anzuzeigen, diese Werte und 
zusätzlich einen Stromzähler auf volkszaehler.org zu posten.

Ich bin schon rel. weit, eigentlich geht alles, aber seit ich das Thema mit dem 
LCD angefangen habe, kann ich nach ein paar Minuten den Atmel nicht mehr per 
Telnet ansprechen, man sieht wie die Kommunikation immer langsamer wird, z.b. 
bei Aufruf von "help"

unten mein Programm, das ich aus verschiedenen Quellen zusammen gestellt habe.
Wenn Telnet / Ping nicht mehr funktioniert, geht aber die Anzeige im Display 
weiterhin.

Was mich auch wundert, ist, das ja eigentlich im Programm der erste Sensor 
abgefragt wird, das Ergebnis auf volkszaehler.org und aufs Display geschrieben 
wird, 
dann 1 Sekunde gewartet,
dann nächster Wert aufs Display
dann 10 Sekunden warten

wenn ich aber die Sensoren von Hand erhitze, ändern sich die Werte ca. im 
Sekundenrhytmus

Ist hier der Atmel (644) schon an der Grenze ? oder mache ich etwas 
Grundlegendes falsch ?
Die Kondensatoren am ENC28J60 und LM317T habe ich nachgerüstet, nehme ich die 
Control6-Ausführung in Menuconfig heraus läuft das Netzwerk stabil

Grüße

Klaus


Mein Programm:

C6_HEADER(`/* This will be in control6.h */')
char tempa_str[5];
char tempb_str[5];
char tempc_str[5];
char tempd_str[5];

dnl max length of value string: 5 (ex. -12.3)


int16_t tempa;
int16_t tempb;
int16_t tempc;
int16_t tempd;



CONTROL_START

THREAD(1wirelog)
dnl get temperature from 1wire bus, change the sensor id!
tempa = ONEWIRE_GET(107ea5290208004b);
itoa_fixedpoint(tempa, 1, tempa_str);
dnl log against the middleware, change the sensor uuid!
HTTPLOG("95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=%s", tempa_str);

TTY_SELECT(tempa)
TTY_HOME()
TTY_WRITE(`"%5sC"', tempa_str)


WAIT(2);

dnl get temperature from t1wire bus, change the sensor id!
tempb = ONEWIRE_GET(10ca8a2902080007);
itoa_fixedpoint(tempb, 1, tempb_str);
dnl dnl log against the middleware, change the sensor uuid!
dnl HTTPLOG("95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=%s", tempa_str);

TTY_SELECT(tempb)
TTY_HOME()
TTY_WRITE(`"%5sC"', tempb_str)

WAIT(10);

THREAD_END(1wirelog)




ON STARTUP DO 

dnl Initialize Display
TTY_CLEAR()
TTY_HOME()

TTY_CREATE_WINDOW(tempa, 1, 6, 0, 0)
TTY_CREATE_WINDOW(tempb, 1, 6, 0, 10)



THREAD_START(1wirelog)
_______________________________________________
Ethersex-devel mailing list
Ethersex-devel@list.zerties.org
https://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel

Antwort per Email an