Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
07/04/05 20:33
Read: times


 
#96554 - My idea used in past on 68332 TPU
Responding to: ???'s previous message
At a time about 8 years ago I made an RC5 decoder that worked as follows: I synced the start of a state machine to tight narrow band detection of the IR sync pulse. Then after that I used capture compares similar to what you propose to see 1X-0's 2X-0's 1x-1's and 2x-1's. Each detection width used a rather wide tolerance for detection such as for example the widest 1x-1 tolerance was not all that much smaller than the narrowest 2x-1.

At each detection my algorithm would shift one or two 1's or 0's into a software shift register that was at least 2x-bits longer than the length of the manchester bit sequence. After a minimum shift counter was attained I would validate the "manchester decode" since each adjacent bit pair in the software shift register has to be 1:0 or 0:1 for valid manchester. The final "data" is either every even bit or every odd bit from the shift register. The big advantage of this approach over the 3/4 bit cell sampling scheme is that the algorithm is able to track both instantaneous and cummulative error in the IR signal. When you consider how much distortion exists in IR transmissions due to lighting and IR bounce this can be a huge advantage. The 3/4 bit time sampling scheme is not the most robust for IR transmission .....I have tried it and found reliability and distance improved nearly two times with the above algorithm.

I can dig out the code from the TPU implementation if you would like to look at it. It is "classic" state machine. I may even still have some PC code that samples IR from a parallel port bit that works in a similar manner.

Michael Karas


List of 16 messages in thread
TopicAuthorDate
Decoding manchester with only capture in            01/01/70 00:00      
   the non-trivial excursion            01/01/70 00:00      
      Yes!            01/01/70 00:00      
         not necessarily error            01/01/70 00:00      
   A bit more about ...            01/01/70 00:00      
      Does this helps            01/01/70 00:00      
   Its not software Jim            01/01/70 00:00      
      Who's Jim?            01/01/70 00:00      
         well...            01/01/70 00:00      
   My example code            01/01/70 00:00      
   My idea used in past on 68332 TPU            01/01/70 00:00      
      It all becomes clearer            01/01/70 00:00      
   The answer....            01/01/70 00:00      
      problem in manchester decoding using pca            01/01/70 00:00      
      problem in manchester decoding using pca            01/01/70 00:00      
      problem in manchester decoding using pca            01/01/70 00:00      

Back to Subject List