Updated the software USART code in the XPLAIN Bridge application so that the incomming bits are sampled at their mid-point instead of starting point, to give maximum reliability (thanks to Anton).

This commit is contained in:
Dean Camera 2011-03-15 04:02:15 +00:00
parent 0111fb515d
commit 1a130eed6c
3 changed files with 9 additions and 3 deletions

View file

@ -81,8 +81,10 @@ ISR(INT0_vect, ISR_BLOCK)
/* Reset the number of reception bits remaining counter */
RX_BitsRemaining = 8;
/* Reset the bit reception timer */
TCNT1 = 0;
/* Reset the bit reception timer to -(1/2) of the total bit time, so that the first data bit is
* sampled mid way through the total bit time, making reception more robust.
*/
TCNT1 = -(OCR1A >> 1);
/* Check to see that the pin is still low (prevents glitches from starting a frame reception) */
if (!(SRXPIN & (1 << SRX)))