signal Resource.granted();
}
- void switchToUnbufferedMode()
- {
- uint16_t mdmctrol1;
- call CSN.set();
- call CSN.clr();
- call MDMCTRL1.read(&mdmctrol1);
- call CSN.set();
- mdmctrol1 &= ~0x0003;
- mdmctrol1 |= 0x0000;
- call CSN.clr();
- call MDMCTRL1.write(mdmctrol1);
- call CSN.set();
- }
-
- void switchToBufferedMode()
- {
- uint16_t mdmctrol1;
- call CSN.set();
- call CSN.clr();
- call MDMCTRL1.read(&mdmctrol1);
- mdmctrol1 &= ~0x03;
- call MDMCTRL1.write(mdmctrol1);
- call CSN.set();
- }
-
/***************** CC2420Power Commands ****************/
async command error_t CC2420Power.startVReg() {
atomic {
signal AsyncSplitControl.stopDone(SUCCESS);
}
- void switchToUnbufferedMode()
- {
- uint16_t mdmctrol1;
- call CSN.set();
- call CSN.clr();
- call MDMCTRL1.read(&mdmctrol1);
- mdmctrol1 &= ~0x03;
- mdmctrol1 |= 0x01;
- call MDMCTRL1.write(mdmctrol1);
- call CSN.set();
- }
-
- void switchToBufferedMode()
- {
- uint16_t mdmctrol1;
- call CSN.set();
- call CSN.clr();
- call MDMCTRL1.read(&mdmctrol1);
- mdmctrol1 &= ~0x03;
- call MDMCTRL1.write(mdmctrol1);
- call CSN.set();
- }
-
/***************** CC2420Receive Commands ****************/
/**
* Start frame delimiter signifies the beginning/end of a packet
}
}
- uint8_t mhrLength(uint8_t *fcf)
- {
- uint8_t idCompression;
- uint8_t len = MHR_INDEX_ADDRESS;
-
- if (fcf[MHR_INDEX_FC1] & FC1_SECURITY_ENABLED)
- return 0xFF; // not supported
- idCompression = (fcf[0] & FC1_PAN_ID_COMPRESSION);
- if (fcf[MHR_INDEX_FC2] & 0x08){ // short or ext. address
- len += 4; // pan id + short address
- if (fcf[MHR_INDEX_FC2] & 0x04) // ext. address
- len += 6; // diff to short address
- }
- if (fcf[MHR_INDEX_FC2] & 0x80){ // short or ext. address
- len += 2;
- if (!idCompression)
- len += 2;
- if (fcf[MHR_INDEX_FC2] & 0x40) // ext. address
- len += 6; // diff to short address
- }
- return len;
- }
-
-
/***************** RXFIFO Events ****************/
/**
* We received some bytes from the SPI bus. Process them in the context