mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-16 04:45:24 +03:00
invert dshot
This commit is contained in:
parent
bcac7f2e0b
commit
4a7be33c25
3 changed files with 10 additions and 9 deletions
|
@ -673,8 +673,11 @@ FAST_CODE uint16_t prepareDshotPacket(motorDmaOutput_t *const motor)
|
|||
csum ^= csum_data; // xor data by nibbles
|
||||
csum_data >>= 4;
|
||||
}
|
||||
csum &= 0xf;
|
||||
// append checksum
|
||||
if (useDshotTelemetry) {
|
||||
csum = ~csum;
|
||||
}
|
||||
csum &= 0xf;
|
||||
packet = (packet << 4) | csum;
|
||||
|
||||
return packet;
|
||||
|
|
|
@ -269,14 +269,12 @@ void pwmDshotMotorHardwareConfig(const timerHardware_t *timerHardware, uint8_t m
|
|||
const bool configureTimer = (timerIndex == dmaMotorTimerCount-1);
|
||||
|
||||
uint8_t pupMode = 0;
|
||||
pupMode = (output & TIMER_OUTPUT_INVERTED) ? GPIO_PuPd_DOWN : GPIO_PuPd_UP;
|
||||
#ifdef USE_DSHOT_TELEMETRY
|
||||
if (!useDshotTelemetry) {
|
||||
pupMode = (output & TIMER_OUTPUT_INVERTED) ? GPIO_PuPd_DOWN : GPIO_PuPd_UP;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
pupMode = (output & TIMER_OUTPUT_INVERTED) ? GPIO_PuPd_UP : GPIO_PuPd_DOWN;
|
||||
if (useDshotTelemetry) {
|
||||
output ^= TIMER_OUTPUT_INVERTED;
|
||||
}
|
||||
#endif
|
||||
|
||||
IOConfigGPIOAF(motorIO, IO_CONFIG(GPIO_Mode_AF, GPIO_Speed_50MHz, GPIO_OType_PP, pupMode), timerHardware->alternateFunction);
|
||||
|
||||
|
|
|
@ -150,7 +150,7 @@ static uint16_t decodeDshotPacket(uint32_t buffer[])
|
|||
csum = csum ^ (csum >> 8); // xor bytes
|
||||
csum = csum ^ (csum >> 4); // xor nibbles
|
||||
|
||||
if (csum & 0xf) {
|
||||
if ((csum & 0xf) != 0) {
|
||||
return 0xffff;
|
||||
}
|
||||
return value >> 4;
|
||||
|
@ -176,7 +176,7 @@ static uint16_t decodeProshotPacket(uint32_t buffer[])
|
|||
csum = csum ^ (csum >> 8); // xor bytes
|
||||
csum = csum ^ (csum >> 4); // xor nibbles
|
||||
|
||||
if (csum & 0xf) {
|
||||
if ((csum & 0xf) != 0) {
|
||||
return 0xffff;
|
||||
}
|
||||
return value >> 4;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue