mbed Weather Platform firmware http://mbed.org/users/okini3939/notebook/mbed-weather-platform-firmware/

Dependencies:   ChaNFSSD EthernetNetIf I2CLEDDisp Agentbed ChaNFSUSB ILinterpreter mbed BMP085 WeatherMeters ConfigFile ChaNFS I2CLCD

Revision:
0:bdb53686c194
Child:
1:6c7141895545
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/weather.h	Mon Jul 04 15:16:45 2011 +0000
@@ -0,0 +1,81 @@
+#include "mbed.h"
+#include "ConfigFile.h"
+#include "EthernetNetIf.h"
+
+#undef DEBUG
+
+#define USE_IL // IL interpreter
+#undef USE_DISPLAY // I2C LCD, LED display module
+#define USE_NTP // NTP Client
+#undef USE_SNMP // SNMP Agent
+#undef USE_EMAIL // send mail
+
+#define CONFIG_FILE "weather.cfg"
+#define IL_FILE "weather.asm"
+
+#define TIMEZONE 9 // hour
+
+#define CF_TWITTER_NUM 5
+#define CF_MAIL_NUM 5
+#define INPUT_NUM 2
+#define OUTPUT_NUM 2
+
+#define LED_FREQ 4 // x 0.1s
+#define NET_TIMEOUT 15000 // ms
+
+#define LED_BUSY_ON led1 = 0
+#define LED_BUSY_OFF led1 = 1
+#define LED_FILE_ON led2 = 1
+#define LED_FILE_OFF led2 = 0
+#define LED_NET_ON led_y = 0
+#define LED_NET_OFF led_y = 1
+
+enum eINPUTTYPE {
+    INPUT_MOIST = 0,
+    INPUT_FALL = 1,
+    INPUT_RISE = 2,
+    INPUT_CPM = 4,
+};
+
+struct Sensor {
+    float pres, temp, humi, light, anemo, vane, rain, uv, moist, temp2;
+    time_t sec;
+    int input[INPUT_NUM], output[OUTPUT_NUM];
+};
+
+extern const char VERSION[];
+extern Serial pc;
+extern I2C i2c;
+extern EthernetNetIf *eth;
+extern ConfigFile cfg;
+extern DigitalOut led1, led2, led3, led4;
+extern DigitalOut led_g2,led_g, led_y;
+extern Sensor sensor, offset, sensor_old;
+extern volatile uint32_t locUpTime;
+extern char csv[];
+
+
+int init_conf ();
+int init_file ();
+int write_log (const char *buf);
+char* chop (char *s);
+
+int init_net ();
+void pool_net ();
+int weatherstations ();
+int pachube (char *csv);
+int twitter (int num);
+int email (int num);
+int snmp_init (char *commname);
+
+int init_sensor ();
+int update_sensor ();
+char *format_str (const char *fmt, char *buf, int len);
+
+int init_ilip (char *dir);
+void exec_ilip (int enable);
+void pool_ilip ();
+
+int init_display ();
+void pool_display ();
+void update_display ();