forked from mfulz_github/qmk_firmware
Fix PDITarget_ReceiveByte() not discarding the start bit properly, and reading in the bits inverted and in the wrong order.
This commit is contained in:
parent
1e3513ed70
commit
7aecda6fda
|
@ -98,14 +98,16 @@ uint8_t PDITarget_ReceiveByte(void)
|
||||||
// One Start Bit
|
// One Start Bit
|
||||||
while (PDIDATA_LINE_PIN & PDIDATA_LINE_MASK);
|
while (PDIDATA_LINE_PIN & PDIDATA_LINE_MASK);
|
||||||
TOGGLE_PDI_CLOCK;
|
TOGGLE_PDI_CLOCK;
|
||||||
|
|
||||||
|
TOGGLE_PDI_CLOCK;
|
||||||
|
|
||||||
// Eight Data Bits
|
// Eight Data Bits
|
||||||
for (uint8_t i = 0; i < 8; i++)
|
for (uint8_t i = 0; i < 8; i++)
|
||||||
{
|
{
|
||||||
if (PDIDATA_LINE_PIN & PDIDATA_LINE_MASK)
|
if (!(PDIDATA_LINE_PIN & PDIDATA_LINE_MASK))
|
||||||
ReceivedByte |= 0x01;
|
ReceivedByte |= 0x80;
|
||||||
|
|
||||||
ReceivedByte <<= 1;
|
ReceivedByte >>= 1;
|
||||||
|
|
||||||
TOGGLE_PDI_CLOCK;
|
TOGGLE_PDI_CLOCK;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue