Update of /cvsroot/firebug/fireboard/beta/fireworks/apps/Fireworks
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18347
Added Files:
Fireworks.h Fireworks.nc FireworksM.nc
Log Message:
Initial commit of fireworks tinyos code.
KAR.
--- NEW FILE: Fireworks.h ---
/*
* Authors: Karthik Dantu
* Graduate Student
* Firebug Project
* Date: 7/20/2005
*
*/
enum {
AM_PINGMSG = 42,
AM_DATAMSG = 43,
AM_DATAREQUESTMSG = 44
}
struct DataRequestMsg {
uint16_t seqNo;
uint16_t source;
uint16_t numNodes;
uint16_t numPowerLevels;
uint16_t trialFrequency;
}
typedef struct DataRequestMsg DataRequestMsg;
struct DataMsg {
uint16_t seqNo;
uint16_t source;
uint16_t numNodes;
uint16_t numPowerLevels;
uint16_t trialFrequency;
}
typedef struct DataMsg DataMsg;
--- NEW FILE: Fireworks.nc ---
/*
* Authors: Karthik Dantu
* Graduate Student
* Firebug Project
* Date: 7/20/2005
*
*/
includes Fireworks.h;
configuration Fireworks {
components Main
, GenericComm,
, ClockC
, ADCC
, CC1000RadioC
, DelugeC
, FireworksM
, LedsC;
Main.StdControl -> FireworksM.StdControl;
Main.StdControl -> DelugeC;
Main.StdControl -> GenericComm.Control;
Fireworks.SendPingMsg -> GenericComm.SendMsg[AM_PINGMSG];
Fireworks.ReceivePingMsg -> GenericComm.ReceiveMsg[AM_PINGMSG];
Fireworks.SendDataMsg -> GenericComm.SendMsg[AM_DATAMSG];
Fireworks.ReceiveDataRequestMsg -> GenericComm.ReceiveMsg[AM_DATAREQUESTMSG];
Fireworks.CC1000Control -> CC1000RadioC;
Fireworks.Leds -> LedsC;
Fireworks.Clock -> ClockC;
}
--- NEW FILE: FireworksM.nc ---
/*
* Authors: Karthik Dantu
* Graduate Student
* Firebug Project
* Date: 7/20/2005
*
*/
module FireworksM {
provides interface StdControl;
uses interface SendMsg as SendPingMsg;
uses interface SendMsg as SendDataMsg;
uses interface ReceiveMsg as ReceiveDataRequestMsg;
uses Clock;
uses CC1000Control;
uses interface Leds;
}
implementation {
uint16_t numTrials;
uint16_t numNodes;
uint16_t numPowerLevels;
uint16_t trialFrequency;
TOS_Msg msg;
PingMsg *pMsg;
DataMsg *dMsg;
DataRequestMsg *drMsg;
comman result_t StdControl.init() {
atomic {
}
return SUCCESS;
}
command result_t StdControl.start() {
call.Leds.redOff();
call Leds.greenOff();
call Leds.yellowOff();
return call Clock.setRate(TOS_I16PS, TOSS16PS);
}
command result_t StdControl.stop() {
return SUCCESS;
}
event TOS_MsgPtr ReceiveDataRequestMsg.receive(TOS_MsgPtr m) {
call Leds.redToggle();
drMsg = (DataRequestMsg *) (&(m->data));
if(
async event result_t ADC.dataReady(uint16_t rssi) {
return SUCCESS;
}
}
|