[Tinyos-2-commits] CVS: tinyos-2.x/tos/platforms/eyesIFX/byte_radio Uart4b6bPhyC.nc, 1.1.2.1, 1.1.2.2 Uart4b6bPhyP.nc, 1.1.2.1, 1.1.2.2

Philipp Huppertz phihup at users.sourceforge.net
Wed Oct 11 13:02:44 PDT 2006


Update of /cvsroot/tinyos/tinyos-2.x/tos/platforms/eyesIFX/byte_radio
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv1322/platforms/eyesIFX/byte_radio

Modified Files:
      Tag: tinyos-2_0_devel-BRANCH
	Uart4b6bPhyC.nc Uart4b6bPhyP.nc 
Log Message:
- reduced number of false positive packet detections

Index: Uart4b6bPhyC.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-2.x/tos/platforms/eyesIFX/byte_radio/Attic/Uart4b6bPhyC.nc,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -d -r1.1.2.1 -r1.1.2.2
*** Uart4b6bPhyC.nc	11 Oct 2006 11:52:29 -0000	1.1.2.1
--- Uart4b6bPhyC.nc	11 Oct 2006 20:02:42 -0000	1.1.2.2
***************
*** 55,59 ****
          new Alarm32khzC() as RxByteTimer,
          Uart4b6bPhyP,
!         //      PlatformLedsC,
          MainC;
      
--- 55,59 ----
          new Alarm32khzC() as RxByteTimer,
          Uart4b6bPhyP,
!         // PlatformLedsC,
          MainC;
      

Index: Uart4b6bPhyP.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-2.x/tos/platforms/eyesIFX/byte_radio/Attic/Uart4b6bPhyP.nc,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -d -r1.1.2.1 -r1.1.2.2
*** Uart4b6bPhyP.nc	11 Oct 2006 11:52:29 -0000	1.1.2.1
--- Uart4b6bPhyP.nc	11 Oct 2006 20:02:42 -0000	1.1.2.2
***************
*** 48,51 ****
--- 48,52 ----
          interface RadioByteComm;
          interface Alarm<T32khz, uint16_t> as RxByteTimer;
+         // interface GeneralIO as Led3;
      }
  }
***************
*** 59,62 ****
--- 60,64 ----
          STATE_SFD1,
          STATE_SFD2,
+         STATE_SFD3,
          STATE_HEADER_DONE,
          STATE_DATA_HIGH_OR_SFD,
***************
*** 121,126 ****
          call RxByteTimer.stop();
          switch(phyState) {
!             case STATE_PREAMBLE:
              case STATE_PREAMBLE_CODE:
                  break;
              default:
--- 123,129 ----
          call RxByteTimer.stop();
          switch(phyState) {
! 		        case STATE_PREAMBLE:
              case STATE_PREAMBLE_CODE:
+     	      case STATE_SFD2:
                  break;
              default:
***************
*** 130,138 ****
          phyState = STATE_PREAMBLE; 
      }
- 
-     inline void signalHeader() {
-         signal PhyPacketRx.recvHeaderDone(SUCCESS);
-         phyState = STATE_DATA_HIGH_OR_SFD;
-     }
      
      async event void RxByteTimer.fired() {
--- 133,136 ----
***************
*** 222,226 ****
                  call RadioByteComm.txByte(SFD_BYTE);
                  break;
!             case STATE_SFD2:
                  phyState = STATE_HEADER_DONE;
                  call RadioByteComm.txByte(SFD_BYTE);
--- 220,228 ----
                  call RadioByteComm.txByte(SFD_BYTE);
                  break;
!           	case STATE_SFD2:
!             	phyState = STATE_SFD3;
!             	call RadioByteComm.txByte(SFD_BYTE);
!             	break;
!             case STATE_SFD3:
                  phyState = STATE_HEADER_DONE;
                  call RadioByteComm.txByte(SFD_BYTE);
***************
*** 266,270 ****
      /* Rx Done */
      async event void RadioByteComm.rxByteReady(uint8_t data) {
!         call RxByteTimer.start(byteTime);
          ReceiveNextByte(data);
      }
--- 268,272 ----
      /* Rx Done */
      async event void RadioByteComm.rxByteReady(uint8_t data) {
!       call RxByteTimer.start(byteTime);
          ReceiveNextByte(data);
      }
***************
*** 275,281 ****
          uint8_t low;
          uint8_t high;
!         if((data == SFD_BYTE) && (phyState != STATE_DATA_HIGH_OR_SFD)) {
              resetState();
!             signalHeader();
              call RxByteTimer.start(byteTime<<1);
          }
--- 277,283 ----
          uint8_t low;
          uint8_t high;
!         if((data == SFD_BYTE) && (phyState != STATE_SFD2) && (phyState != STATE_DATA_HIGH_OR_SFD)) {
              resetState();
!             phyState = STATE_SFD1;
              call RxByteTimer.start(byteTime<<1);
          }
***************
*** 293,296 ****
--- 295,311 ----
                      phyState = STATE_PREAMBLE;
                  break;
+           	case STATE_SFD1:
+             	phyState = STATE_SFD2;
+             break;
+             case STATE_SFD2:
+               if(data == SFD_BYTE) {
+                 	call RxByteTimer.start(byteTime<<1);
+                 	signal PhyPacketRx.recvHeaderDone(SUCCESS);
+                   phyState = STATE_DATA_HIGH_OR_SFD;
+               }
+               else {
+                 resetState();
+               }
+             break;
              case STATE_DATA_HIGH_OR_SFD:
                  if(data != SFD_BYTE) {



More information about the Tinyos-2-commits mailing list