View Single Post
Old 03-23-2005, 10:54 AM   #3
rando
Raw Wave
 
rando's Avatar
 
Join Date: Mar 2004
Location: Redondo Beach, CA
Posts: 1,969
The interrupt based approach seems easier to me. Also, if your pic has a PWM, I belive it can be used to trigger on an edge and capture the clock all in one shot -- to improve the stability of your measurements a little.

In looking at the code, there are really only 4 bits needed to detect which button is pressed. Isn't there a 1111 (or 0000 for the inverted 4 bits) code that you receive for when the button is released; or does the bit pattern repeated continuously while the button is down? Or is this the sequence for a button press and release?

Knowing that only 4 bits are needed, you could optimize the detection routine to only save 4 bits. Whenever those bits are 0111, the next 4 bits are the ones you need -- of course this assumes that the patterns you've shown are all that will ever be on the bus; I dunno if that's true or not.

Good luck!
__________________
2004 4runner

Last edited by rando; 03-23-2005 at 11:06 AM.
rando is offline   Reply With Quote