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

conf.h

Committer:
okini3939
Date:
2011-03-29
Revision:
14:ee6cc1632166
Parent:
13:20c0f845df68
Child:
15:07bfa25ba6ae

File content as of revision 14:ee6cc1632166:

/** @file
 * @brief mbed Weather Platform
 */
#include "mbed.h"
#include "EthernetNetIf.h"

#define CONFIG_FILE "weather.cfg"


#define CF_ACTION_EXPS 10
#define CF_ACTION_NUM 10

enum eEXPRESSION {
    EXP_NULL,
    EXP_EQ,
    EXP_NE,
    EXP_LE,
    EXP_LT,
    EXP_GE,
    EXP_GT,
    EXP_MOD,
    EXP_NMOD,
    EXP_FALL,
    EXP_RISE,
};

enum eINPUTTYPE {
    INPUT_MOIST = 0,
    INPUT_FALL = 1,
    INPUT_RISE = 2,
};

struct tExpression {
    char key;
    enum eEXPRESSION expression;
    float value;
};

struct tAction {
    int action;
    int count;
    struct tExpression exps[CF_ACTION_EXPS];
};

struct Sensor {
    float pres, temp, humi, light, anemo, vane, rain, uv, moist, temp2;
};

struct Config {
    int interval;
    IpAddr ipaddr, netmask, gateway, nameserver;
    char ntpserver[32];
    int filetype, actionscount;
    struct tAction actions[CF_ACTION_NUM];
    char pachube_apikey[70], pachube_feedid[8];
    char twitter_user[30], twitter_pwd[30], twitter_mesg[160];
    char stations_id[8], stations_pin[34];
    char snmp_commname[30];
    char lcd_mesg[100];
    char leddisp_mesg[100];
    enum eINPUTTYPE inputtype;
};

int config (char *);