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

Dependencies:   EthernetNetIf SDHCFileSystem I2CLEDDisp Agentbed NTPClient_NetServices mbed BMP085 HTTPClient ConfigFile I2CLCD

Committer:
okini3939
Date:
Wed Mar 30 20:09:04 2011 +0000
Revision:
15:07bfa25ba6ae
Parent:
14:ee6cc1632166
Child:
16:df39da7bef98

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 9:8c63e4f3edab 1 /** @file
okini3939 9:8c63e4f3edab 2 * @brief mbed Weather Platform
okini3939 9:8c63e4f3edab 3 */
okini3939 9:8c63e4f3edab 4 #include "mbed.h"
okini3939 9:8c63e4f3edab 5 #include "EthernetNetIf.h"
okini3939 9:8c63e4f3edab 6
okini3939 14:ee6cc1632166 7 #define CONFIG_FILE "weather.cfg"
okini3939 9:8c63e4f3edab 8
okini3939 9:8c63e4f3edab 9
okini3939 15:07bfa25ba6ae 10 #define CF_MAXLEN_VALUE 128
okini3939 9:8c63e4f3edab 11 #define CF_ACTION_EXPS 10
okini3939 9:8c63e4f3edab 12 #define CF_ACTION_NUM 10
okini3939 15:07bfa25ba6ae 13 #define CF_TWITTER_NUM 5
okini3939 9:8c63e4f3edab 14
okini3939 9:8c63e4f3edab 15 enum eEXPRESSION {
okini3939 9:8c63e4f3edab 16 EXP_NULL,
okini3939 9:8c63e4f3edab 17 EXP_EQ,
okini3939 9:8c63e4f3edab 18 EXP_NE,
okini3939 9:8c63e4f3edab 19 EXP_LE,
okini3939 9:8c63e4f3edab 20 EXP_LT,
okini3939 9:8c63e4f3edab 21 EXP_GE,
okini3939 9:8c63e4f3edab 22 EXP_GT,
okini3939 9:8c63e4f3edab 23 EXP_MOD,
okini3939 9:8c63e4f3edab 24 EXP_NMOD,
okini3939 14:ee6cc1632166 25 EXP_FALL,
okini3939 14:ee6cc1632166 26 EXP_RISE,
okini3939 9:8c63e4f3edab 27 };
okini3939 9:8c63e4f3edab 28
okini3939 11:c6356e5949cd 29 enum eINPUTTYPE {
okini3939 13:20c0f845df68 30 INPUT_MOIST = 0,
okini3939 13:20c0f845df68 31 INPUT_FALL = 1,
okini3939 13:20c0f845df68 32 INPUT_RISE = 2,
okini3939 11:c6356e5949cd 33 };
okini3939 11:c6356e5949cd 34
okini3939 9:8c63e4f3edab 35 struct tExpression {
okini3939 9:8c63e4f3edab 36 char key;
okini3939 9:8c63e4f3edab 37 enum eEXPRESSION expression;
okini3939 9:8c63e4f3edab 38 float value;
okini3939 9:8c63e4f3edab 39 };
okini3939 9:8c63e4f3edab 40
okini3939 9:8c63e4f3edab 41 struct tAction {
okini3939 15:07bfa25ba6ae 42 char action;
okini3939 15:07bfa25ba6ae 43 char sub;
okini3939 9:8c63e4f3edab 44 int count;
okini3939 9:8c63e4f3edab 45 struct tExpression exps[CF_ACTION_EXPS];
okini3939 9:8c63e4f3edab 46 };
okini3939 9:8c63e4f3edab 47
okini3939 14:ee6cc1632166 48 struct Sensor {
okini3939 14:ee6cc1632166 49 float pres, temp, humi, light, anemo, vane, rain, uv, moist, temp2;
okini3939 14:ee6cc1632166 50 };
okini3939 14:ee6cc1632166 51
okini3939 9:8c63e4f3edab 52 struct Config {
okini3939 9:8c63e4f3edab 53 int interval;
okini3939 9:8c63e4f3edab 54 IpAddr ipaddr, netmask, gateway, nameserver;
okini3939 9:8c63e4f3edab 55 char ntpserver[32];
okini3939 9:8c63e4f3edab 56 int filetype, actionscount;
okini3939 9:8c63e4f3edab 57 struct tAction actions[CF_ACTION_NUM];
okini3939 9:8c63e4f3edab 58 char pachube_apikey[70], pachube_feedid[8];
okini3939 15:07bfa25ba6ae 59 char twitter_user[30], twitter_pwd[30], twitter_mesg[CF_TWITTER_NUM][CF_MAXLEN_VALUE];
okini3939 9:8c63e4f3edab 60 char stations_id[8], stations_pin[34];
okini3939 9:8c63e4f3edab 61 char snmp_commname[30];
okini3939 15:07bfa25ba6ae 62 char lcd_mesg[CF_MAXLEN_VALUE];
okini3939 15:07bfa25ba6ae 63 char leddisp_mesg[CF_MAXLEN_VALUE];
okini3939 11:c6356e5949cd 64 enum eINPUTTYPE inputtype;
okini3939 9:8c63e4f3edab 65 };
okini3939 9:8c63e4f3edab 66
okini3939 9:8c63e4f3edab 67 int config (char *);