[Tinyos-beta-commits] CVS: tinyos-1.x/beta/I2C/system
AMStandardI2C.nc, 1.2, 1.3 GenericCommI2C.nc, 1.1,
1.2 I2CPacketC.nc, 1.2, 1.3 I2CPacketM.nc, 1.4,
1.5 I2CPacketSlaveC.nc, 1.2, 1.3 I2CPacketSlaveM.nc, 1.4, 1.5
David Gay
idgay at users.sourceforge.net
Mon Sep 27 16:07:29 PDT 2004
Update of /cvsroot/tinyos/tinyos-1.x/beta/I2C/system
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3628
Modified Files:
AMStandardI2C.nc GenericCommI2C.nc I2CPacketC.nc I2CPacketM.nc
I2CPacketSlaveC.nc I2CPacketSlaveM.nc
Log Message:
code cleanup
Index: AMStandardI2C.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/AMStandardI2C.nc,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** AMStandardI2C.nc 6 Mar 2004 18:23:23 -0000 1.2
--- AMStandardI2C.nc 27 Sep 2004 23:07:25 -0000 1.3
***************
*** 60,67 ****
// retry failed sends
event result_t sendDone();
- command result_t setI2CAddress(uint8_t value);
! interface StdControl as I2CMasterControl;
! interface StdControl as I2CSlaveControl;
interface BareSendMsg as I2CSend;
interface ReceiveMsg as I2CReceive;
--- 60,65 ----
// retry failed sends
event result_t sendDone();
! interface StdControl as I2CControl;
interface BareSendMsg as I2CSend;
interface ReceiveMsg as I2CReceive;
***************
*** 92,97 ****
call TimerControl.init();
! ok3 = call I2CMasterControl.init();
! ok4 = call I2CSlaveControl.init();
ok1 = call UARTControl.init();
ok2 = call RadioControl.init();
--- 90,94 ----
call TimerControl.init();
! ok3 = call I2CControl.init();
ok1 = call UARTControl.init();
ok2 = call RadioControl.init();
***************
*** 106,110 ****
TOS_LOCAL_I2C_ADDRESS=TOS_I2C_GATEWAY_ADDR; //equivalent of 192.168.0.1
}
- call setI2CAddress( ((uint8_t)(0x007F & TOS_LOCAL_I2C_ADDRESS)) | I2CSLAVE_GENERAL_CALL);
state = FALSE;
--- 103,106 ----
***************
*** 119,124 ****
command bool Control.start() {
result_t ok0 = call TimerControl.start();
! result_t ok4 = call I2CMasterControl.start();
! result_t ok5 = call I2CSlaveControl.start();
result_t ok1 = call UARTControl.start();
result_t ok2 = call RadioControl.start();
--- 115,119 ----
command bool Control.start() {
result_t ok0 = call TimerControl.start();
! result_t ok5 = call I2CControl.start();
result_t ok1 = call UARTControl.start();
result_t ok2 = call RadioControl.start();
***************
*** 131,141 ****
call PowerManagement.adjustPower();
! return rcombine4(ok0, ok1, ok2, rcombine3(ok3, ok4, ok5));
}
command bool Control.stop() {
! result_t ok4 = call I2CMasterControl.stop();
! result_t ok5 = call I2CSlaveControl.stop();
result_t ok1 = call UARTControl.stop();
result_t ok2 = call RadioControl.stop();
--- 126,135 ----
call PowerManagement.adjustPower();
! return rcombine4(ok0, ok1, ok2, rcombine(ok3, ok5));
}
command bool Control.stop() {
! result_t ok4 = call I2CControl.stop();
result_t ok1 = call UARTControl.stop();
result_t ok2 = call RadioControl.stop();
***************
*** 143,147 ****
// call TimerControl.stop();
call PowerManagement.adjustPower();
! return rcombine4(ok1, ok2, ok3, rcombine(ok4, ok5));
}
--- 137,141 ----
// call TimerControl.stop();
call PowerManagement.adjustPower();
! return rcombine4(ok1, ok2, ok3, ok4);
}
***************
*** 238,242 ****
// Handle the event of the reception of an incoming message
! TOS_MsgPtr receivedI2C(TOS_MsgPtr packet) __attribute__ ((C, spontaneous)) {
uint16_t addr = TOS_LOCAL_ADDRESS;
counter++;
--- 232,236 ----
// Handle the event of the reception of an incoming message
! TOS_MsgPtr receivedI2C(TOS_MsgPtr packet) {
uint16_t addr = TOS_LOCAL_ADDRESS;
counter++;
Index: GenericCommI2C.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/GenericCommI2C.nc,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** GenericCommI2C.nc 20 Feb 2004 07:49:04 -0000 1.1
--- GenericCommI2C.nc 27 Sep 2004 23:07:25 -0000 1.2
***************
*** 71,74 ****
--- 71,75 ----
I2CPacketC as I2CMasterPacket,
I2CPacketSlaveC as I2CSlavePacket,
+ I2CAMPacket,
LedsC as Leds,
TimerC, HPLPowerManagementM;
***************
*** 88,96 ****
AMStandard.UARTReceive -> UARTPacket.Receive;
! AMStandard.I2CMasterControl -> I2CMasterPacket;
! AMStandard.I2CSend -> I2CMasterPacket;
! AMStandard.I2CSlaveControl -> I2CSlavePacket;
! AMStandard.I2CReceive -> I2CSlavePacket;
! AMStandard.setI2CAddress -> I2CSlavePacket;
AMStandard.RadioControl -> RadioPacket.Control;
--- 89,100 ----
AMStandard.UARTReceive -> UARTPacket.Receive;
! AMStandard.I2CControl -> I2CMasterPacket;
! AMStandard.I2CControl -> I2CSlavePacket;
! AMStandard.I2CControl -> I2CAMPacket;
! AMStandard.I2CSend -> I2CAMPacket;
! AMStandard.I2CReceive -> I2CAMPacket;
!
! I2CAMPacket.I2CPacket -> I2CMasterPacket;
! I2CAMPacket.I2CPacketSlave -> I2CSlavePacket;
AMStandard.RadioControl -> RadioPacket.Control;
Index: I2CPacketC.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/I2CPacketC.nc,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** I2CPacketC.nc 20 Feb 2004 07:44:32 -0000 1.2
--- I2CPacketC.nc 27 Sep 2004 23:07:25 -0000 1.3
***************
*** 47,51 ****
interface StdControl;
interface I2CPacket[uint8_t id];
- interface BareSendMsg;
}
}
--- 47,50 ----
***************
*** 56,60 ****
StdControl = I2CPacketM;
I2CPacket = I2CPacketM;
- BareSendMsg = I2CPacketM;
I2CPacketM.Leds -> Leds;
--- 55,58 ----
Index: I2CPacketM.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/I2CPacketM.nc,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** I2CPacketM.nc 20 Feb 2004 07:44:45 -0000 1.4
--- I2CPacketM.nc 27 Sep 2004 23:07:25 -0000 1.5
***************
*** 49,53 ****
interface StdControl;
interface I2CPacket[uint8_t id];
- interface BareSendMsg;
}
uses {
--- 49,52 ----
***************
*** 63,67 ****
IDLE,
I2C_WRITE,
- I2C_WRITE_AM,
I2C_READ
};
--- 62,65 ----
***************
*** 146,152 ****
signal I2CPacket.writePacketDone[addr](data, index, outcome);
break;
- case I2C_WRITE_AM:
- signal BareSendMsg.sendDone((TOS_MsgPtr)data, outcome);
- break;
case I2C_READ:
signal I2CPacket.readPacketDone[addr](data, index, outcome);
--- 144,147 ----
***************
*** 183,188 ****
readNextByte();
break;
! case I2C_WRITE: //no "break" to do an "or"
! case I2C_WRITE_AM:
if (index < length)
call I2C.write(data[index++]);
--- 178,182 ----
readNextByte();
break;
! case I2C_WRITE:
if (index < length)
call I2C.write(data[index++]);
***************
*** 217,225 ****
}
- command result_t BareSendMsg.send(TOS_MsgPtr msg){
- return request(I2C_WRITE_AM, msg->addr, (char*)msg, 5+msg->length, I2C_ADDR_8BITS_FLAG & I2C_ACK_END_FLAG);
- }
-
- default event result_t BareSendMsg.sendDone(TOS_MsgPtr msg, result_t success){}
-
}
--- 211,213 ----
Index: I2CPacketSlaveC.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/I2CPacketSlaveC.nc,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** I2CPacketSlaveC.nc 20 Feb 2004 07:44:51 -0000 1.2
--- I2CPacketSlaveC.nc 27 Sep 2004 23:07:25 -0000 1.3
***************
*** 47,52 ****
interface StdControl;
interface I2CPacketSlave;
- interface ReceiveMsg;
- command result_t setI2CAddress(uint8_t value);
}
}
--- 47,50 ----
***************
*** 56,62 ****
StdControl = I2CPacketSlaveM;
- setI2CAddress = I2CPacketSlaveM;
I2CPacketSlave = I2CPacketSlaveM;
- ReceiveMsg = I2CPacketSlaveM;
I2CPacketSlaveM.I2CSlave -> I2CSlaveC;
--- 54,58 ----
Index: I2CPacketSlaveM.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/I2C/system/I2CPacketSlaveM.nc,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** I2CPacketSlaveM.nc 20 Feb 2004 07:44:56 -0000 1.4
--- I2CPacketSlaveM.nc 27 Sep 2004 23:07:25 -0000 1.5
***************
*** 17,22 ****
interface StdControl;
interface I2CPacketSlave;
- interface ReceiveMsg;
- command result_t setI2CAddress(uint8_t value);
}
uses {
--- 17,20 ----
***************
*** 28,33 ****
implementation
{
- TOS_Msg msg;
- TOS_MsgPtr tosMsgPtr;
char buf[I2CSLAVE_PACKETSIZE];
norace char *currentBuffer;
--- 26,29 ----
***************
*** 37,41 ****
command result_t StdControl.init() {
- tosMsgPtr = &msg;
call I2CStdControl.init();
currentBuffer = buf;
--- 33,36 ----
***************
*** 57,64 ****
}
- command result_t setI2CAddress(uint8_t value) {
- return call I2CSlave.setAddress(value);
- }
-
command result_t I2CPacketSlave.getAddress() {
return call I2CSlave.getAddress();
--- 52,55 ----
***************
*** 88,104 ****
task void packetReceived() {
! if( index>=5 &&
! ((((TOS_MsgPtr)currentBuffer)->addr == TOS_LOCAL_I2C_ADDRESS)) ||
! (((TOS_MsgPtr)currentBuffer)->addr == TOS_I2C_BCAST_ADDR) &&
! ((TOS_MsgPtr)currentBuffer)->length==index-5 &&
! ((TOS_MsgPtr)currentBuffer)->group==TOS_AM_GROUP) //this is a hack: if this looks like a TOS_Msg, treat it like one. Hopefully, no regular I2C messages look like AM messages.
! {
! memcpy(tosMsgPtr, currentBuffer, index);
! tosMsgPtr->crc=1;
! tosMsgPtr = signal ReceiveMsg.receive(tosMsgPtr);
! }
! else{
! currentBuffer = signal I2CPacketSlave.write(currentBuffer, index);
! }
}
--- 79,83 ----
task void packetReceived() {
! currentBuffer = signal I2CPacketSlave.write(currentBuffer, index);
}
***************
*** 140,143 ****
default event result_t I2CPacketSlave.read(char **data, uint8_t *length) {return SUCCESS;}
default event result_t I2CPacketSlave.readDone(uint8_t sentLength){return SUCCESS;}
- default event TOS_MsgPtr ReceiveMsg.receive(TOS_MsgPtr m){}
}
--- 119,121 ----
More information about the Tinyos-beta-commits
mailing list