Bibedibapi
Dependencies: EthernetNetIf HTTPServer RPCInterface mbed
Fork of HTTPServerExample by
HTTPServerExample.cpp
- Committer:
- geissme
- Date:
- 2013-04-15
- Revision:
- 3:69dbef5163fd
- Parent:
- 1:114e347434c1
File content as of revision 3:69dbef5163fd:
#include "mbed.h"
#include "EthernetNetIf.h"
#include "HTTPServer.h"
#include "RPCVariable.h"
#include "RPCFunction.h"
DigitalOut led1(LED1, "led1");
DigitalOut led2(LED2, "led2");
DigitalOut led3(LED3, "led3");
DigitalOut led4(LED4, "led4");
void setBufferedVariables();
int Flag = 0;
float SwitchingFrequency = 10;
float FundamentalFrequency = 20;
float ModulationIndex = 30;
float PhaseShift12 = 40;
float PhaseShift23 = 50;
float DeadTime = 60;
float SwitchingFrequencyBuff = SwitchingFrequency;
float FundamentalFrequencyBuff = FundamentalFrequency;
float ModulationIndexBuff = ModulationIndex;
float PhaseShift12Buff = PhaseShift12;
float PhaseShift23Buff = PhaseShift23;
float DeadTimeBuff = DeadTime;
RPCVariable<int> RPCFlag(&Flag, "Flag");
RPCVariable<float> RPCSwitchingFrequency(&SwitchingFrequency, "SwitchingFrequency");
RPCVariable<float> RPCFundamentalFrequency(&FundamentalFrequency, "FundamentalFrequency");
RPCVariable<float> RPCModulationIndex(&ModulationIndex, "ModulationIndex");
RPCVariable<float> RPCPhaseShift12(&PhaseShift12, "PhaseShift12");
RPCVariable<float> RPCPhaseShift23(&PhaseShift23, "PhaseShift23");
RPCVariable<float> RPCDeadTime(&DeadTime, "DeadTime");
RPCVariable<float> RPCSwitchingFrequencyBuff(&SwitchingFrequencyBuff, "SwitchingFrequencyBuff");
RPCVariable<float> RPCFundamentalFrequencyBuff(&FundamentalFrequencyBuff, "FundamentalFrequencyBuff");
RPCVariable<float> RPCModulationIndexBuff(&ModulationIndexBuff, "ModulationIndexBuff");
RPCVariable<float> RPCPhaseShift12Buff(&PhaseShift12Buff, "PhaseShift12Buff");
RPCVariable<float> RPCPhaseShift23Buff(&PhaseShift23Buff, "PhaseShift23Buff");
RPCVariable<float> RPCDeadTimeBuff(&DeadTimeBuff, "DeadTimeBuff");
LocalFileSystem fs("webfs");
EthernetNetIf eth(
IpAddr( 192, 168, 0, 128 ), // IP Address
IpAddr( 255, 255, 255, 0 ), // Network Mask
IpAddr( 192, 168, 0, 254 ), // Gateway
IpAddr( 10, 41, 196, 60) // DNS
);
HTTPServer svr;
int main() {
Base::add_rpc_class<DigitalOut>();
printf("Setting up...\n");
EthernetErr ethErr = eth.setup();
if(ethErr)
{
printf("Error %d in setup.\n", ethErr);
return -1;
}
printf("Setup OK\n");
FSHandler::mount("/webfs", "/files"); //Mount /webfs path on /files web path
FSHandler::mount("/webfs", "/"); //Mount /webfs path on web root path
svr.addHandler<SimpleHandler>("/hello");
svr.addHandler<RPCHandler>("/rpc");
svr.addHandler<FSHandler>("/files");
svr.addHandler<FSHandler>("/"); //Default handler
//Example : Access to mbed.htm : http://a.b.c.d/mbed.htm or http://a.b.c.d/files/mbed.htm
svr.bind(80);
printf("Listening...\n");
Timer tm;
tm.start();
//Listen indefinitely
while(true)
{
Net::poll();
if(Flag==1){
setBufferedVariables();
printf("Switching Freq is: %f\n", SwitchingFrequency);
printf("Fundamental Freq is: %f\n", FundamentalFrequency);
printf("Modulation Index is: %f\n", ModulationIndex);
printf("Phase Shift 1-2 is: %f\n", PhaseShift12);
printf("Phase Shift 2-3 is: %f\n", PhaseShift23);
printf("Deadtime is: %f\n", DeadTime);
Flag = 0;
}
/*
if(tm.read()>.1)
{
led2=!led2; //Show that we are alive
tm.start();
}*/
}
return 0;
}
void setBufferedVariables(){
SwitchingFrequency = SwitchingFrequencyBuff;
FundamentalFrequency = FundamentalFrequencyBuff;
ModulationIndex = ModulationIndexBuff;
PhaseShift12 = PhaseShift12Buff;
PhaseShift23 = PhaseShift23Buff;
DeadTime = DeadTimeBuff;
printf("Daten schreiben\n");
}
