X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=apps%2FRadioSenseToLeds%2FRadioSenseToLedsC.nc;h=dd8710b2dde67fd34de3d4e526cff89f2fcb7da6;hb=e9bfab607e051bae6afb47b44892ce37541d1b44;hp=0d1fc0caa5053e45dc843ad0cd3949ab2bf38e43;hpb=1a329382c4f4556fd52d85f4e3f4a67e54911682;p=tinyos-2.x.git diff --git a/apps/RadioSenseToLeds/RadioSenseToLedsC.nc b/apps/RadioSenseToLeds/RadioSenseToLedsC.nc index 0d1fc0ca..dd8710b2 100644 --- a/apps/RadioSenseToLeds/RadioSenseToLedsC.nc +++ b/apps/RadioSenseToLeds/RadioSenseToLedsC.nc @@ -43,7 +43,7 @@ * @date June 6 2005 */ -module RadioSenseToLedsC { +module RadioSenseToLedsC @safe(){ uses { interface Leds; interface Boot; @@ -82,8 +82,8 @@ implementation { else { radio_sense_msg_t* rsm; - rsm = (radio_sense_msg_t*)call Packet.getPayload(&packet, NULL); - if (call Packet.maxPayloadLength() < sizeof(radio_sense_msg_t)) { + rsm = (radio_sense_msg_t*)call Packet.getPayload(&packet, sizeof(radio_sense_msg_t)); + if (rsm == NULL) { return; } rsm->error = result; @@ -101,19 +101,18 @@ implementation { else { radio_sense_msg_t* rsm = (radio_sense_msg_t*)payload; uint16_t val = rsm->data; - call Leds.led0Toggle(); - if (val & 0x8000) { - call Leds.led1On(); - } - else { - call Leds.led1Off(); - } - if (val & 0x4000) { - call Leds.led2On(); - } - else { - call Leds.led2Off(); - } + if (val & 0x0004) + call Leds.led2On(); + else + call Leds.led2Off(); + if (val & 0x0002) + call Leds.led1On(); + else + call Leds.led1Off(); + if (val & 0x0001) + call Leds.led0On(); + else + call Leds.led0Off(); return bufPtr; } }